APP下载

基于Measurement Studio的试飞数据实时监控、存储、分析及回放平台设计

2015-09-11刘涛李云芝张璐

电脑知识与技术 2015年17期
关键词:多线程

刘涛++李云芝++张璐

摘要:本文立足于当前民机试飞模式,从缩短试飞数据处理时间、提高试飞效率出发,基于.NET框架,利用Measurement Studio组件开发设计了试飞数据实时监控平台。相较于传统的监控模式,该软件平台采用多线程工作模式,集成了快速傅里叶变换、数字滤波等处理算法,同时加入了工程量数据实时存储及回放功能。通过试验,本软件平台以UDP数据包为数据源,实现了试飞数据的实时显示、存储、分析、回放,为后续民机试飞模式的创新提供了参考依据。

关键词:实时存储;实时分析;实时回放;多线程

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)17-0064-04

The Flight Data Real-time Monitoring Platform Design with Data Storage and Analysis,Play-back Based on the Measurement Studio Instrumentation Department

LIU Tao, LI YUN-zhi, ZHANG Lu

(Instrumentation Department of the COMAC Flight Test Center, Shanghai 200232, China)

Abstract: Based on the current flight modes of civil aircraft, in this paper, aiming at shortening the flight data processing time as well as improving flight efficiency,a real-time monitoring platform is designed and developed with the measurement studio. Compared with conventional monitoring modes, the software proposed in this paper is developed with multi-threaded work mode, and this platform was integrated with such algorithms as Fast Fourier Transformation, digital filtering, etc., besides, it is also equipped with functions like real-time storage and inquiry for large quantities of engineering data. After completion of the platform, experiments are carried out and with the conclusion that with UDP packet as its data source, the platform developed in this paper has realized the real-time displaying, storage, analysis and replaying of the flight data which can be as reference to the following flight modes innovation.

Key words: real-time storage; real-time analysis; real-time replay;multi-thread

1 概述

实时监控系统是民机试飞过程中不可或缺的重要系统,是直接面向试飞工程师、设计人员、技术人员等试飞保障人员的决策支持平台,其主要实现原理是利用试飞数据实时驱动相关可视化控件,真实形象的再现飞机试飞状态,为指挥人员提供判断依据。由此可见,实时监控系统对于丰富试飞指挥手段、改进试飞方法、调整试飞策略、提高试飞效率等具有重要意义。

在当前民机试飞模式下,实时监控仅仅是对工程量化后的试飞数据进行实时显示,并未作任何处理,因此技术人员需要在试飞任务结束后对试飞数据进行二次解析、分析,同时利用试飞数据回放以检查飞机性能、排除飞机故障。对试飞数据重复解析无疑增加了数据处理时间,对于缩短试飞周期是极为不利的。因此,设计开发出具有对试飞数据实现实时存储、实时分析、实时回放等功能的实时监控平台十分必要。

常用的实时监控系统开发软件包括LabView、DataView以及与工业监测相关的组态软件,如中航工业试飞院就利用了LabView软件实现了ARJ21-700飞机试飞状态的实时监控。但是,以上软件的功能实现策略较为封闭、逻辑编写较为复杂,不利于用户定制开发。

本文采用Measurement Studio组件,基于.NET框架,利用C#编程语言设计开发了实时监控平台,对实时存储、实时分析、实时回放等功能实现的可行性进行了研究,通过采用多线程技术实现了UDP/IP通信模式下试飞数据的快速傅里叶变换、数字滤波、曲线回放以及数据存储。

2 系统实现

Measurement Studio是NI公司研发的为Visual Studio .NET提供的一个集成式套件,包括了各种常用测量和自动化控件、工具和类库[4]。本实时监控平台利用动态曲线、双态灯、数值显示、滚动条、仪表、罐装图等显示控件集成,整体效果如图1所示。

2.1实时存储

实时存储是指实时监控平台在显示试飞数据的同时完成试飞数据的存储,避免试飞任务后试飞数据重复的工程量解析,以缩短数据处理周期。实现方法是利用多线程技术在实时监控的同时启动数据存储线程,开辟相应内存资源,完成数据文件的创建、数据的写入及保存,实现流程如图2所示。

在存储线程中,主要利用.NET框架中输入输出空间中的文本流StreamWriter实现数据的实时存储,实现伪代码如下:

If Exist(The data file) then

If Length>0 then

Header=”Time” + ”Parameter Name”

Write the Header to the data file.

Data=”Parameter Value”

Write the Data to the data file

Else

Return

End If

Else

Return

End If

2.2实时分析

本实时监控平台集成了快速傅里叶变换(FFT)、数字滤波等两种常用数字信号处理算法对实时分析的可行性进行了验证。

1) FFT

FFT是计算离散傅里叶变换的快速方法,对于复数序列,其离散傅里叶变换可以表示为:

其中,模拟离散化是模拟滤波器转换为数字滤波器的关键步骤,主要任务是实现模拟滤波器传统传递函数域到数字滤波器传递函数域的映射,这里采用脉冲响应不变法实现[2]。所谓脉冲响应不变法就是使数字滤波器的脉冲响应序列等于模拟滤波器的脉冲响应的采样值[2],即

实现的伪代码为:

If Length>0 then

The FFT data array D1.Add(data)

The Filter data array D2.Add(data)

The Result of FFT array A1=Fft(D1)

The Result of Filter array A2=Filter(D2)

Display the result cure.

Else

Return

End If

2.3实时回放

实时回放是指在试飞数据实时监控过程中,根据实际需求对参数进行全程回放,回放结束后切换至实时监控状态。实现思路是在实时监控的过程中,利用内存资源存储回放参数,一旦触发数据回放操作,将立即启动回放线程,调用内存存储数据进行实时回放,回放结束后切换至实时监控线程,整个过程可表示为如图6所示的流程。

3 试验

为了验证整个实时监控平台的性能,利用仿真数据源对软件平台进行测试。数据源采用UDP传输协议,每隔20ms发出20个参数,发出的数据结构如图7所示。

1) 实时监控

实时监控平台接收到UDP数据包后解析数据获取如上图所示的参数字符串,以参数分隔符拆分为参数数组,并根据参数标识符识别参数顺序,利用相对应的显示控件显示参数数值。实时监控状态如图8所示。

试验时,记录UDP包的装包绝对时间,并将该时间作为参数打进数据包,实时监控终端解算数据、完成处理操作的绝对时间为

2) 实时存储

试飞数据的实时存储至软件启动目录下的Txt文档中,存储过程稳定且不影响实时监控状态,存储的数据顺序与发送数据一致,文件格式如图9所示。

3) 实时分析

进行实时分析的数据源由10HZ、幅值为30的正弦信号和20HZ、幅值为60的正弦信号以及频率为25HZ、幅值为90的正弦信号组成的复合信号,即

FFT以采样频率为、分析数据点为N=1024作幅频图;滤波选用巴特沃斯3阶滤波器,滤波器上截止频率为20,下截止频率为10,分析结果如图10所示。波形1为复合信号的时域曲线,波形2为FFT分析后的双边频谱,可见分析结果已经准确识别信号中的三种频率成分,以1/2的采样频率即50为零点,频率成分相距零点的距离分别为10、20、25,表示信号的三种频率成分分别为10Hz、20HZ以及25Hz。波形3是经过数字带通滤波后的正弦波曲线。

4) 实时回放

实时回放以按钮单击形式进行触发,触发后显示回放起始及终止时间,回放时由曲线回放区域显示回放曲线,回放效果如图11所示。

4 结论

实时监控作为试飞任务实施过程中至关重要的环节,是试飞任务顺利、安全进行的保证。在对试飞数据实现实时监控的同时完成工程量数据存储,避免事后的重复处理,同时在实时的状态下提供数据分析、回放,为飞机性能评估、故障排除提供参考依据,有效的缩短了数据处理时间,对于提高试飞效率具有积极意义。

本文充分模拟实际试飞状态,以UDP/IP为通信协议,构建了实时监控平台对试飞数据的实时存储、实时分析、实时回放等功能进行了验证,试验表明,通过合理的分配线程、利用计算机内存资源成功实现了对数据的实时监控、存储、信号分析及回放,为试飞数据监控及处理模式的技术革新提供了参考依据。

参考文献:

[1] 陈亚勇..MATLAB信号处理详解[M].北京:人民邮电出版社,2001.

[2] 万永革.数字信号处理的MATLAB实现[M]北京:科学出版社,2012.

[3] 郑阿奇.Visual C#网络编程[M].北京:电子工业出版社,2011.

[4] 张易知.虚拟仪器的设计与实现[M]西安:西安电子科技大学出版社,2002.

[5] 周林.数据采集与分析技术[M].西安:西安电子科技大学出版社,2005.

猜你喜欢

多线程
Java多线程同步机制在网络售票系统中的应用
Java并发工具包对并发编程的优化