APP下载

机载网络数据实时处理软件的设计与实现

2015-01-04霍朝晖聂睿吴海东

电子设计工程 2015年12期
关键词:配置文件采集器数据处理

房 瑾,霍朝晖,聂睿,吴海东

(中国飞行试验研究院 陕西 西安 710089)

运输机机体大,为构建实时监控系统提供了条件,同时运输机的测试参数分布广,测试参数种类多,包括429总线、422总线、RS 232总线、CAN总线、颤振加装、振动加装、既有低速采样参数又有高速采样参数[1],众多数据类型和采样要求对实时数据处理提出了更高的要求。网络数据实时处理软件作为实时监控系统的中心枢纽,一方面要保证从测试网络上准确及时的接收数据,另一方面要进行测试数据的预处理,同时将处理结果重新打包后实时的发送到监控客户端。机上参试的试飞工程师根据系统提供的监控画面和数据分析结果可以在较短时间内判定试验过程或飞行动作的质量,及时与飞行员协商,采取对策,从而保证试飞安全,提高试飞效率。

1 机载实时监控系统

机载实时监控系统由前端采集器子系统、机载数据处理子系统、工作站子系统组成,通过网络交换机等设备实现各个子系统的互连。实时监控系统结构图如图1所示。

前端采集器子系统完成测试参数的采集和发送,,由于被测参数分布广,数据量大,因此机载测试采用多采集器网络化系统架构[2],采集器以网络数据包的形式为机上所有子系统提供数据源,机载数据处理子系统接收测试网络上的数据包进行实时处理,存储。工作站子系统为数据的终端,接收机载数据处理子系统的发送数据并实时显示。

图1 实时监控系统结构图Fig.1 Real time monitoring system structure diagram

2 软件设计

2.1 功能设计

网络数据实时处理软件由若干个功能组成,主要分为:事先准备、网络接收、IENA数据解包、数据处理及监控、数据回放。结构框图如图2所示。

2.2 事先准备

图2 网络数据实时处理软件结构框图Fig.2 Real-time network data process software structure diagram

事先准备完成对配置文件的转换及相关信息处理,将前端采集器配置产生的配置文件读入并转换为实时系统通用配置文件格式,该配置文件中包含测试参数所在数据流,数据包,数据包中的参数位置等相关信息,是数据解包的关键信息。为了将参数进行原码到物理量的解算,事先准备软件进行参数校线的录入,将参数的校准信息加入配置文件。事先准备模块还要完成对监控参数的挑选和定义,形成参数组文件,实时数据处理部分按照该参数组向客户端发送测试参数。

2.3 网络接收

网络接收完成与机载测试网络的连接,接收测试网络中的测试参数。

机载测试网络中,负责采集数据的是数台机载采集器,采集的数据经打包通过不同的网络端口以UDP广播形式发送到机载测试网络上[3],测试网络中的各测试设备根据自己的需要取得自己的测试参数,因此测试网络上有各种各样的数据包,数据包中包含很多的测试参数。网络数据实时处理软件作为机载测试网络上的一部分,需要与该网络建立连接,实现测试数据的接收及挑选,并保证数据的实时性和稳定性。网络通讯接口模块首先读取由事先准备模块形成的配置文件,将配置文件中数据流的IP地址、端口号、网络包、参数等信息按照定义好的数据结构存入缓存,完成各配置文件的读取及相关关键信息的显示。根据配置文件建立与测试网络及监控计算机的网络连接,该模块基于Windows Socket开发了面向无连接的数据包通讯程序,为了提高程序的效率,采用了windows底层的API函数进行开发,将API函数进行封装[4],方便程序的调用。函数调用的时序图如图3所示。

图3 无连接协议的套接字调用时序图Fig.3 No socket call timing diagram connection agreement

2.4 IENA数据解包

数据解包主要进行参数工程量的转化。按照配置文件,根据各个参数不同的校准类型进行数据转化,将得到的工程量直接显示或者进行二次处理再显示。

机载测试网路上的数据是由一个个IENA网络数据包组成,网络上的设备可通过事先约定好的配置文件,读取并解算出需要的测试参数。每个网络数据包的格式根据采集器的不同可以是不同的,但是必须遵循如表1所示的IENA数据定义。

表1 IENA数据包定义Tab.1 Definition of IENA packet

KEY:每种类型数据包的识别字;SIZE:数据包的字数,从”KEY”到最后一个传输字;TIME:本年度1月 1日 0时 0分开始计算的微秒时间;STATUS:状态字 (同步/异步);SEQ_NUM:

数据包计数器 (记录每种KEY值的数据包的次数);DATA:最多65527个数据字(每种KEY值的数据包所含数据字的数目固定);END:数据包结束特征字 (典型值为0xDEAD)。

2.5 数据处理及发送

根据数据包的结构以及配置文件中参数的位置定义,解算出测试参数的码值,再根据配置文件中测试参数的校准类型进行码值到工程量的转化。目前在飞行试验的测试参数中,主要采用的校准类型有直线校准,双曲线,分段,多项式等效准类型,针对每一种校准类型设计相应的转化算法。工程量解算流程图如图4所示。

实时数据处理系统和监控子系统建立网络连接,将工程量通过定义好网络通信发送给各监控台及工作站。

图4 工程量解算流程图Fig.4 Engineering calculation structure diagram

2.6 数据回放

可以将实时记录的测试参数按照不同的速率进行回放,是实时飞行状态的再现,针对飞行中的关键动作段可以进行重复显示,对分析测试参数具有重要的作用。

3 网络数据实时处理软件逻辑流程

网络数据实时处理软件首先读取用户定义的带头文件和参数组文件,将所需配置信息和参数组信息存储在缓存中,并对服务器进行初始化配置。创建数据流接收线程,服务器按照配置要求接收采集器通过测试网络发送的数据包,实现数据流参数提取,工程量转换[5],工程量通过网络发送给客户端。流程图如图5所示。

图5 网络数据实时处理软件流程图Fig.5 Network real time data processing software flow chart

4 关键技术

4.1 高速大流量网络数据包实时接收处理技术

机载测试系统发送的网络包速率可达50 Mb/s,每秒钟数据包为5 000个,而且网络数据包的大小不均匀,这样,网络数据包的接收就存在丢包的可能性,而且,接收到的数据包需要进行实时解算和处理[6],并实时显示参数值,因此对程序效率要求也更高。针对这种多任务高效率的要求,实时网络数据处理软件从结构设计和内存管理两方面进行优化,提高程序效率。 结构采用多线程结构,数据接收线程和数据处理线程并行进行。 内存管理进行优化,采用双缓存区进行数据存储。

4.2 数据包时间快速对齐技术

机载KAM4000分布式网络数据采集系统每秒钟会产生数千个以不同关键字为唯一标示的IENA数据包,经过交换机后到达试飞数据处理子系统的诸多不同关键字数据包在时间戳顺序上是混乱的,如果不对数据进行对齐处理是无法提供给课题用于数据分析处理的。网络数据实时处理软件采用给每个需要提取的关键参数预先分配内存,然后按时间戳索引完成数据包时间快速对齐,从而保证了测试参数数据处理结果在时间上的一致性。

4.3 自定义监控画面的模块化设计

实时监控画面显示尤其是曲线显示会占用处理器资源,影响网络数据的接收,因此在软件设计中将实时监控作为独立模块设计 ,通过动态链接库编译为独立的运行单元,它与主程序间通过共享内存方式,接收监控参数的数据。对监控参数进行自定义设置,既实现了参数的全面监控,又不影响主程序的主要功能。

5 结束语

该机载网络数据实时处理软件,已成功应用于某大型运输飞机上,并已成功飞行多个起落,飞行结果表明该软件运行稳定,实时处理及显示参数不少于2000个,满足该机测试需求,该软件对关键技术的突破为以后的机载实时数据处理技术积累了宝贵的经验。

[1]袁炳南,张建琳.PCM与网络数据采集系统技术分析[J].测控技术,2009,8(4):25-28.YUAN Bing-nan,ZHANG Jian-lin.Technical review of data acquisition system based on PCM and network[J].Measurement&ControlTechniques,2009,8(4):25-28.

[2]张晓敏,王峰.机载测试系统发展与应用研究[J].中国科技信息,2009(9):22-24.ZHANG Xiao-min,WANG Feng.Airborne testing system development and application research[J].China Science And Technology Information,2009(9):22-24.

[3]王峰.网络技术在飞机上的测试设计与实现[J].中国科技信息,2010(24):85-86.WANG Feng.The test design and implementation of network technology in the plane[J].China Science And Technology Information,2010(24):85-86.

[4]Kate Gregory.Visual C++5开发使用手册[M].北京:机械工业出版,1998.

[5]齐连普.新一代计算机遥测系统[M].北京:航空工业出版社,2001.

[6]霍朝晖.飞行试验振动参数遥测实时处理系统设计与实现[D].西安:西安电子科技大学,2012.

猜你喜欢

配置文件采集器数据处理
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
COVID-19大便标本采集器的设计及应用
互不干涉混用Chromium Edge
基于Zookeeper的配置管理中心设计与实现
忘记ESXi主机root密码怎么办
为View桌面准备父虚拟机
基于ZigBee的大型公共建筑能耗采集器设计
基于LabVIEW的多数据采集器自动监控软件设计与开发
基于希尔伯特- 黄变换的去噪法在外测数据处理中的应用