基于预留缓存的飞行试验iNET数据处理技术.docx
- 文档编号:27507082
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:6
- 大小:19.02KB
基于预留缓存的飞行试验iNET数据处理技术.docx
《基于预留缓存的飞行试验iNET数据处理技术.docx》由会员分享,可在线阅读,更多相关《基于预留缓存的飞行试验iNET数据处理技术.docx(6页珍藏版)》请在冰豆网上搜索。
基于预留缓存的飞行试验iNET数据处理技术
基于预留缓存的飞行试验iNET数据处理技术
摘要:
为解决飞行试验测试系统跨代升级,网络化测试系统采集记录的海量iNET试飞数据高效处理难题,该文介绍传统的试飞数据处理软件设计思路及结构。
针对新形势下飞行试验采集的海量iNET网络数据的高效处理难题,分析iNET网络数据的特点及制约飞行试验海量试飞数据高效分析处理的因素;提出预留缓存的试飞数据处理新思路及实现技术,实现飞行试验海量试飞iNET数据的高效分析及处理;最后在某试验机飞行试验中对采集的海量iNET试飞数据进行分析处理。
试验表明使用这些算法的数据处理软件的处理效率满足了飞行试验海量iNET数据处理需求。
关键词:
飞行试验;数据处理软件;预留缓存;并行处理
中图分类号:
TN926?
34文献标识码:
A文章编号:
1004?
373X(2016)12?
0048?
03
Abstract:
Inordertorealizethecross?
generationupgradeoftestingsystemforflighttestandhigh?
efficientprocessingofmassiveiNETdatacollectedandrecordedbynetworkedtestsystem,thedesignthoughtandstructureofthetraditionalflightdataprocessingsoftwareareintroduced.Accordingtotheaboveproblemsunderthenewsituation,thecharacteristicsofiNETnetworkdata,andfactorsrestrictingthemassivedataefficientanalysisandprocessingforflighttestareanalyzed.ThenewthoughtandimplementationtechnologyofflighttestdataprocessingbasedonreservedcacheareproposedtorealizetheefficientanalysisandprocessingofmassiveiNETdataforflighttest.Thistechnologywastestedintheflighttestforacertaintester.ThetestresultsshowthattheprocessingefficiencyofthedataprocessingsoftwareusingthesealgorithmscanmeettherequirementsofmassiveiNETdataprocessingforflighttest.
Keywords:
flighttest;dataprocessingsoftware;reservedcache;parallelprocessing
随着现代飞机设计及飞行试验技术的发展,飞行试验网络化测试系统架构技术应用于最新的飞机测试系统上,试验机测试参数总量激增,飞行试验采集记录的单架次网络化测试iNET[1?
2]数据总量高达到上百GB。
同时,试飞工程师所需的试验结果参数的总数增多和采样率增大,分析处理的结果数据文件也随之增大,根据试飞科目的不同,总的结果数据工程量文件有几十GB不等。
如何快速地对海量试验数据进行高效分析处理,本文在处理方法上进行优化设计,采用了多线程并行处理方法并设计了多科目统一处理技术,取得了一定成效,但是在分析处理试验数据时,将结果工程量文件进行高效存储成为制约海量试飞iNET数据处理效率的瓶颈,也是试飞数据高效处理的难点。
在试飞海量数据处理中高效地存储结果工程量就成为试飞数据高效处理必须解决的难题。
1飞行试验数据处理流程
1.1飞行试验数据处理
在先进的测试系统架构[3]下,飞行试验数据量激增是必然的趋势,在设计试飞数据处理软件时,必须要重视数据处理软件的效率,以最快的速度将试飞工程师需要的试验结果工程量数据提取出来。
测试系统记录的是整个飞机的所有参数,现代飞行试验采集的参数已经高达上万个,但是对单个飞行试验架次来说,仅需要当前单个或者多个试验科目的参数,按不同的采样率,可能只需要几千个测试参数,这就需要试飞数据处理软件能够快速地从所有的参数中提取相应的试验科目的工程量试验数据。
1.2飞行试验数据处理流程
一般试飞数据处理软件的结构图如图1所示,读入校线文件和分析需处理参数列表,每次处理只需要进行一次即可,占用数据处理时间都不会多,读入原始数据、分析原始数据、结果工程量写入硬盘是一个不停重复的过程,直到分析完整飞行试验原始数据,这个过程是试飞数据处理软件的核心部分。
1.3传统的飞行试验高效数据处理模式
在处理试飞数据时,为了提高数据处理的效率,采用了并行处理技术,如图2所示,分析需处理参数列表后,启动多线程对试飞数据进行读取、分析并将结果数据工程量存储写入。
普遍应用于飞行试验数据处理的结果
数据存储写技术有以下3种:
fwrite()流式文件方式;write()句柄直接I/O文件操作;基于WINAPI和基于第三方库的文件操作。
这三种传统的文件存储写技术都是逐字节且严格按照文件指针顺序的方式进行文件的存储写方式,在同一时刻只能被一个线程进行操作。
分析传统的并行处理流程可以看出,采用多线程并行处理和传统的处理结果工程量存储写技术时,处理线程1处理完单元数据后,进行试飞数据处理结果工程量存储写操作前,必须得等到激活状态下的处理线程2结果工程量存储写操作结束之后,同样,处理线程2进行结果工程量存储写之前,也需要等处理线程1结束存储写操作,并且,对存储结果工程量文件来说,时间序列必须是从小到大的。
2飞行试验数据处理结果数据存储写新思路
2.1多线程并行存储新模式
在PCM技术构架[4?
5]的测试系统时代,由于系统采集带宽的限制,单架次试飞数据量一般不超过30GB,随着iNET技术构架[6]应用于飞行试验测试系统,单架次试飞数据量激增,必须使数据处理效率更加高效。
通过图2可以看出,在传统的多线程并行处理模式下,处理线程组够快的情况下,将分析结果工程量写入硬盘这一步骤成为制约试飞海量iNET数据处理效率的瓶颈。
如果对试飞iNET数据处理结果工程量存储写也采用并行处理的方式,这样可避免多分析处理线程的等待时间,快速存储写入结果数据,提高处理效率,如图3所示。
2.2试飞iNET数据处理预留缓存技术
在iNET数据处理工程量并行存储写的新思路下,还必须解决多线程处理和多线程存储并行处理难题,以及海量结果工程量数据同步存储等难题,在此采用了预留缓存的试飞iNET数据并行处理技术来实现这一新的试飞数据处理方式。
对于海量试飞iNET数据处理软件而言,最理想的缓存情况是采用部分缓存技术,结合数据分析模块,应用部分缓存和内存映射技术,设计试飞数据处理预留缓存技术,即利用试飞iNET数据相关信息,预知未来的数据分析结果的工程量文件存放地址,对工程量存储写地址情况进行精准预测,达到一个尽可能好的缓存性能,同时结合多线程同步处理技术,最终实现数据分析处理和结果数据工程量存储写的同步处理,从而提高处理效率。
3基于预留缓存的iNET数据处理关键技术
3.1试飞iNET数据并行处理技术
为了提高iNET数据处理效率,采用了多线程并行处理技术,如图3所示,同时为了尽可能快地将大量处理线程处理的结果数据工程量存储写入文件,采用了多线程并行存储技术。
针对试飞原始数据的读取操作,处理线程1和处理线程2为一组,进行同步分析。
针对结果工程量文件存储写操作,存储线程1和存储线程2为一组,进行同步分析。
同时,处理线程组和存储线程组按试飞数据的时间递增序列进行同步分析。
3.2多线程并行缓存实现技术
通过第1.3节的分析可知,传统的试飞数据文件写技术无法实现试飞数据处理的多线程并行存储,在多线程并行存储中采用了内存映射技术,设计了预留缓存技术,解决了传统的试飞结果数据存储技术只能逐字节写工程量的问题,它可以实现结果数据按文件地址写入工程量文件,如图4所示。
传统的试飞结果存储写技术,线程“结果工程量文件写0”必须是第一个被写入硬盘的数据,在这种情况下,即使线程“结果工程量文件写2”或者“结果工程量文件写1”先完成数据分析,也必须要得到“结果工程量文件写1”写完才可以进行写操作,这样在时序上每个线程必须要等到上一个线程结束才可以进行,它们之间是串行关系,这样就增加了线程的等待时间,致使整个进程的效率降低。
而采用预留缓存技术,“结果工程量文件写2”的写操作,不需要等待“结果工程量文件写0”或者“结果工程量文件写1”结束,它们之间是并行关系,没有必然的联系,这样便消除了线程的等待时间,提高了整个数据处理效率,多线程并行缓存实现如下:
(1)分析本次处理参数的总数ParaSum、采样率ParaCyl、处理的总时间TimeSum秒,以及必要的该次数据处理信息ParaInfoSize字节,根据这些信息计算需创建的工程量文件的大小为:
ResFiSize=ParaSum*TimeSum*ParaCyl+ParaInfoSize
(2)使用内存映射技术,创建ResFileSize字节大小的结果工程量文件;
(3)写入该次数据处理信息;
(4)处理线程组进行数据处理,并将单元时间内处理好的结果数据交给存储线程组;
(5)存储线程组将结果数据写入工程量文件。
3.3单元结果数据存储地址算法
单元时间内处理好的结果数据按文件地址存储写入结果工程量文件,以1s为一个处理单元,结合第3.2节,起始时刻为TimeBeg秒,起始地址为AddrBeg在任意的TimeN秒时刻,它的存储地址TimeNddr为:
TimeNddr=AddrBeg+(TimeN-TimeBeg)ParaSum*ParaCyl
当存储线程接收到单元时间的结果数据以及该数据的相关信息,按照该单元时间数据的起始时刻TimeN就可以知道结果数据的存放首地址为TimeNddr,即可将该数据存储写入工程量文件。
4飞行试验应用与测试
应用预留缓存及多线程并行处理技术开发了iNET数据处理软件,针对某试验机采用了网络化测试系统采集的海量iNET数据,该测试系统测试速率为50Mb/s,单架次飞行试验[7?
10]采集的网络化iNET数据是传统PCM架构的数十倍,应用该软件对该iNET数据进行分析,并计算试验机的飞行高度,其计算结果如图5所示。
数据处理结果表明:
采用基于预留缓存的海量iNET数据分析算法正确,数据结果处理准确,同时使试飞iNET数据处理效率较之传统的处理技术提高了2倍,满足了试飞工程师对海量iNET数据高效处理的需求。
基于以上算法开发的飞行试验iNET试验数据分析软件已在多个试验机试飞中推广使用。
5结语
本文对试飞数据处理软件设计的各个环节进行了分析,介绍了传统试飞数据处理软件的存储写技术,研究了试飞iNET数据处理预留缓存技术,提出并实现了试飞数据处理快速存储写技术,解决了传统的试飞结果数据存储写技术只能逐字节写工程量的问题,实现了结果数据按文件地址写入工程量文件,并且这些方法已经在飞行试验海量iNET数据处理软件的设计过程中应用,通过对飞行试验中采集的iNET数据进行处理表明,该技术极大地提高了飞行试验海量iNET数据处理软件的处理效率,满足了现代飞机试飞海量iNET数据处理需求。
参考文献
[1]InternetThailandPublicCompanyLimited.iNETsystemarchitecture(version2007)[R].Thailand:
InternetThailandPublicCompanyLimited,2007.
[2]Nikker.iNET?
Xsummary[EB/OL].[2010?
10?
11].http:
//.
[3]白效贤.试飞测试技术现状与发展[J].测控技术,2004,23(10):
1?
2.
[4]佚名.Kam:
500数据采集系统[EB/OL].[2005?
07?
18].http:
//.
[5]RangeCommandersCouncil.TelemetryStandards:
Part1,Chapter10:
IRIGStandard106?
11[S/OL].[2011?
06?
03].http:
//www.irig.org.
[6]刘明.新一代试飞测试系统架构及其应用[J].计算机测量与控制,2014,22(6):
1729?
1731.
[7]何红丽,杨廷梧,左益宏,等.某型飞机模型失速/尾旋飞行试验技术[J].计算机工程,2009,35(23):
232?
233.
[8]彭国金,刘?
?
婷.非结构化海量网络数据处理技术研究[J].现代电子技术,2011,34(14):
121?
123.
[9]胡汇洋,李扬,许应康.多试飞数据流文件的融合处理[J].现代电子技术,2015,38(8):
47?
49.
[10]徐武军,侯玉宏,段亚.序贯概率比检验法在导航精度试飞中的应用[J].现代电子技术,2014,37(11):
124?
128.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 预留 缓存 飞行 试验 iNET 数据处理 技术