遥测数据融合软件的设计与实现
摘要:在空空导弹外场试验中,为了提高遥测接收数据的质量,提出了数据融合的思想,并在VC环境下开发此遥测数据融合软件。在此结合具体的外场环境,给出了三种融合的方法:按同步码、帧计数和同步码+帧计数方法融合。详细介绍了从需求分析出发的软件设计过程,各功能模块以及各种融合方法的具体实现流程。实践结果表明该设计很好地达到了预期效果。
关键词:遥测; 数据融合; 数据处理; 软件设计
中图分类号:TN91134; TP311.1文献标识码:A文章编号:1004373X(2012)04013603
Design and implementation of telemetry data fusion software
LIU Yanan, CHEN Lei, CHANG Shulong, DAI Yancun
(China Airborne Missile Academy, Luoyang 471009, China)
Abstract: In airborne missile field test, the data fusion was carried out to improve the reliability of telemetry receiving system and the telemetry data fusion software was constructed in VC6.0.According to the specific field environment, three kinds of fusion methods (SyncCode, FrameCouting and SyncCodeFrameCouting fusion) are presente.The software designment proceeding from requirement analysis, submodules, and specific process of each fusion are elaborated.
Keywords: telemetry; data fusion; data processing; software design
收稿日期:201109260引言
在空空导弹外场试验中,地面接收设备将实时地接收弹载设备上发出的数据。而试验人员在事后将根据这些遥测数据来分析导弹的性能和飞行参数,因此接收的遥测数据质量对于整个飞行试验具有很重要的意义。
目前,接收系统的可靠性主要依赖于硬件性能和接收站的数量。一般情况下,试验中至少要有两个接收站(主站和辅站)同时工作互为备份,但是二者接收的数据质量在不同时段可能互有差异。所以在事后分析中不管是用主站还是辅站的数据都可能造成某些错误。如果能在事后将2个站的数据进行某种处理,在共同的时间段上选择各自好的数据组成新的遥测数据,以达到优势互补,那么将会在很大程度上提高整个遥测数据的质量,这样将会给试验人员分析数据带来很大的帮助,同时也会为整个试验任务的顺利进行提供有力的保障。这种智能化的数据选择处理就是本文提出的遥测数据融合机制[12]。 “数据融合”的定义为对来自多信息源的数据和信息进行相关、互连和合并处理,以获得准确的目标信息。这种融合是基于多信息或多传感器的[34]。而本文所要论述的“遥测数据融合软件”是对基于同一信息源的两路采集数据流,根据不同的条件进行筛选、择优和融合,从而获得最佳数据。在此通过对实际需求的分析,提出了按同步码、帧计数和同步码+帧计数三种筛选融合方法,并在VC6.0平台上分别予以了实现。
1软件设计
1.1功能设计
在外场遥测试验中,为了保证数据的可靠接收,一般情况下至少要配备2套遥测设备,即主站和辅站,在遥测接收的过程中,二者互为备份,相互引导[56]。不同的阶段,主站和辅站接收的数据质量各有优劣,此数据融合软件主要是在事后对基于同一信息源的两路采集数据(主站和辅站采集的数据),先进行预处理生成两个临时文件,然后将根据不同的条件对这两个临时文件进行筛选、择优和融合,从而获得最佳的遥测数据,存储到一个结果文件中供试验人员进行分析[78]。图1为该融合软件的功能模块图,此处有三种融合方式可以供用户选择,要根据靶场的具体环境和试验的要求来选择相应的融合方式。
图1功能模块图1.2模块设计
在图1的功能图中,用户参数设定模块主要是由用户根据特定的试验型号,设定其遥测数据帧间隔时间、帧间隔容差、帧长度以及同步码,以供后续具体的融合中使用。
数据预处理模块主要是把主数
据和辅数据中不符合要求的帧删除掉,也就是帧时间码不在开始时间码和结束时间码范围之内的帧删除掉,留下的有效帧写入临时文件中。
融合模块是软件的核心。此处由三种融合方式供用户选择:根据同步码融合、根据同步码+帧计数融合、根据帧计数融合。由于靶场的具体环境不一样,有的具有统一时码,有的则不具备此条件,根据帧计数融合是针对不具有统一时码情况下的融合,而前2种则是在具有统一时码的场合中使用。
2软件实现
2.1总流程
如图2所示为该软件的总体设计流程图,即先根据是否具有统一时码,来选择融合方式。如果没有统一的时码,则选择按帧计数来融合,处理3为其对应的处理过程。如果有统一的时码,则按另外两种方式进行融合,对应的处理分别为处理1和处理2。以下将详细介绍各种融合方式的实现过程。
2.2按帧计数融合
在没有统一时码情况下,选择按帧计数方式融合,图2总流程图中的处理3即为此融合方式对应的处理过程。之前用户要输入特定的型号参数(帧间间隔、同步码和容差)。图3所示为按帧计数方式进行融合的实现流程。
在该流程中,先获取当前主帧数据和辅帧数据的帧计数值,即lMainCFrmCounter和lViceCFrmCounter,然后比较其是否相等。
如果相等,则说明是主数据和辅数据是同一帧,接着比较其同步码,将同步码正确的数据写入结果文件,如果同步码全错或者全对,则将主文件写入最后的融合文件中,因为相对而言主文件的可靠性更高。
如果帧计数不同,则说明主辅数据为不同的数据帧,此时将帧计数小的数据写入结果文件,并将其文件指针向下移动一位,继续和帧计数值大的数据进行类似的帧计数比较操作,直到有一个数据文件到达文件末尾为止。
2.3按同步码融合
图2总流程图中的处理1即为按同步码融合的处理过程。
图2软件总流程图图4所示为此融合方式的具体实现流程。
按同步码融合方式算法较简单,因此效率较好。在整个软件的实现流程中,如果有统一时码,则先比较主数据和辅数据的时码,根据fabs(MainTimeViceTime)≤TimeRc×10可以判定主帧数据和辅帧数据是否为同一帧数据,如果不为同一帧数据,则用户要比较主数据和辅数据的时码MainTime≤ViceTime,将时码小的数据帧写入结果文件。
如果为同一帧,并且选择按帧同步码方式融合,则用户先通过GetSyncCode( )函数分别获得主数据和辅数据的帧同步码MainCode和ViceCode,如果二者仅有一个正确,则将同步码正确的数据帧写入结果文件。如果二者都正确或者都不正确,则将时码小的那帧数据写入结果文件[910]。
2.4按同步码+帧计数融合
图2总流程图中的处理2即为此融合方式对应的处理过程。图5所示为此融合的具体实现流程。在总流程中,如果在统一时码下并且主辅数据为同一数据帧,此时可以选择按同步码和帧计数方式进行融合。
图3按帧计数融合流程图图4按同步码融合流程图图5按同步码+帧计数融合流程图此时仍要先通过GetSyncCode( )函数分别获得主数据和辅数据的帧同步码MainCode和ViceCode,如果二者仅有一个正确,则选择同步码正确的数据。如果MainCode和ViceCode都对或者都错,此时根据帧计数值继续选择。
先通过计算分别获得主数据和辅数据的帧计数值MainCFrmCounter和ViceCFrmCounter,从第二帧开始,分别比较主辅数据的帧计数值是否发生跳变,将未发生跳变的那帧数据写入融合后的文件中。
3测试结果
3.1界面
如图6所示为此融合软件在VC6.0平台下运行后生成的界面。用户指定参数是用户输入特定型号的相关参数。选择主数据文件和辅数据文件,以及融合条件就可以进行遥测数据的融合。
3.2丢帧测试
此软件已经应用于外场遥测试验数据的处理中,并且具有明显的优势。此处用丢帧检查简单地测试一下融合的效果。如图7所示,110421008_SP21和110421009_SP11为融合前的主站数据和辅站数据,经过丢帧检查分别有第15和第6帧错误,数据质量较差。而result文件为按同步码方式融合后的丢帧检查结果,数据无错,有效地保证了遥测数据的可靠性。
4结语
该遥测软件采用模块化设计,便于实现和测试。同时结合外场试验的具体环境和数据处理的要求,实现了按同步码、按帧计数+同步码、按帧计数三种融合方法,较好地满足了型号对实时接收的遥测数据质量的要求。从软件的设计可以看出,对于较复杂的软件采用自顶向下,逐渐细化的分析方法,分模块设计;对于影响程序性能的处理过程有针对性地进行优化,可以有效地提高程序的可靠性和性能并简设计过程。