消息重复型ARINC429总线事件消息包机载实时处理技术研究

2017-05-24 14:45石冯磊李国星祁晓鹏
计算机测量与控制 2017年5期
关键词:遥测数据处理嵌入式

石冯磊,李国星,高 盼,祁晓鹏

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

消息重复型ARINC429总线事件消息包机载实时处理技术研究

石冯磊,李国星,高 盼,祁晓鹏

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

ARINC429总线广泛应用于民用飞机中,在飞行试验中,消息重复型ARINC429事件信息的实时监控占用很大的遥测带宽资源;采用机载嵌入式数据处理模块,通过将其嵌入到机载测试系统中,通过采集器底板总线获取ARINC429采集模块采集到的数据,对飞机事件信息进行解析处理,并将处理结果通过遥测系统遥测下传至地面监控中心,大大降低了遥测带宽需求,对于飞行试验实时安全监控有重要意义。

飞行试验;航空总线;机载测试;遥测;安全监控

0 引言

ARINC429是一种串行数据总线,广泛应用在航空电子综合系统中[1],用于实现不同系统间的数字通信[2]。在飞行试验中,通过抽引机上429数据总线,利用机载测试设备实时采集总线上的数据,通过遥测系统下传至地面监控中心,用于安全监控与预警。目前,机上的429消息主要为周期性消息[3],即每种Label号的消息每隔一定时间发送一次,前后两条消息的间隔时间固定,因此对于机载测试采集系统,该种429信号消息的采样频率固定,大多只需要32 Hz的采样频率既能满足要求。随着飞机电子系统的发展,出现了事件触发的消息重复型ARINC429事件消息流,原有采集、遥测方式不再适用。本文采用机载嵌入式计算模块,对测试系统采集到的事件型ARINC429数据流进行实时解析,提取事件信息,并将提取后的事件信息传送给测试系统进行遥测下传。通过处理后与处理前的数据对比,验证的本文方法的可行性。

1 消息重复型ARINC429事件消息

对于ARINC429数据总线传输标准[4],一个ARINC429字有32位,包含标志位(Label号)、源/目的识别位(SDI)、数据位(data)、符号位(SMM)、其偶校验位(Parity)。在航空ARINC429物理总线上同时存在两种不同类型的ARINC 429消息:一种是周期性发送的429消息数据,需要进行正常监听、采集、记录和遥测;一种是由外部事件触发的429事件消息包,需要侦听、100%记录、实时遥测传输和地面实时监控。消息重复型ARINC429事件消息包为事件触发型消息,由多个事先约定好Label号的标准ARINC 429消息字组成,包括事件信息包包头,级别A事件信息,级别B事件信息……级别N事件信息,事件信息包包尾。在一条完整的ARINC 429事件消息包中,包含多个级别的事件信息,对于同一级别的事件信息,如果有多个不同事件,这些事件信息label号相同,事件编码不同,在一条消息包中连续发送。对于该种类型的ARINC 429事件消息包,其结构如图1所示。

图1 消息重复型ARINC429事件包结构图

消息重复型ARINC429事件消息包由多个标准的ARINC429消息字组成,包含消息包头、包体和包尾。

1)包头:具有特征Label号,表示一个事件消息包的开始,同时包含有事件包包体载荷的信息,如消息包长度、事件消息数量等;

2)包体:事件消息包的有效载荷部分,包含事件消息计数,事件消息编码等,一个ARINC 429事消息包中包含有多种类型的ARINC429消息(多个不同Label号的消息,每个Label号的消息有多个事件编码值,每个Label号的消息在事件包中连续发送,消息发送间隔时间为4us);

3)包尾:具有特定Label号,表示一个事件包的结束。

对于该型ARINC429数据消息,如果采用传统采集遥测方式,要保证事件信息不丢失,每个Label号的消息最小采样率W1=100k/(32+4)≈2.78kHz。一条消息中有多个参数,如果实时遥测,将会占用大量的遥测带宽资源。

2 方案设计

对于飞行试验来说,目前已有较为完善的机载测试采集设备用于实现ARINC429周期信号的监听采集[5]。本文在已有ARINC429总线采集设备的基础上,通过嵌入式计算模块对采集到的ARINC429消息进行解析处理,实时获取事件信息,降低遥测带宽需求,系统总体方案如图2所示。

图2 系统总体方案

测试系统采用网络构架模式,主要包含一台机载测试通用采集机箱和BCU控制模块,ARINC429消息监听采集模块和嵌入式数据处理模块:

1)BCU模块是整个机载测试系统的控制核心,采用BCU140控制模块,该模块具有一个全双工的百兆以太网口,可以通过机载测试通用采集机箱底板总线对各个模块进行读取和写入操作。BCU控制模块负责协调各个模块的运行,配置各个模块状态信息,挑选采集参数进行打包,以IENA包(或iNET-X包)形式进行周期性输出,对于异步总线数据,其同时支持非周期性传输,能够有效利用网络带宽;

2)ARINC429监听模块采用ABM101型ARINC429总线监听模块,用于采集输入的ARINC429消息流,该模块具有8个输入通道,能够同时对8条ARINC429总线进行监听采集,根据429消息的Label号、源/目的识别字(SDI)和符号位(SMM),对收到的ARINC429消息进行过滤采集,同时也具有ARINC429消息全通/选通监听能力、连贯的消息剖析器和错误诊断功能。该模块的剖析器缓冲区有4096个字和相关时间、状态消息,每条消息有2个标志位,分别表示相关429消息字是否被读取过和是否已经被重写。ABM101具有一个64K字的Snarfer(嗅探)FIFO寄存器,用于存储挑选的ARINC429消息和标签信息,每个字有16位用于存储消息标识信息,7位用于识别FIFO字的内容,如表1所示。Snarfer中消息的甄别基于429总线号、消息Label号、标签类型(时间信息、记数字)、FIFO状态等。

3)嵌入式数据处理模块实时读取ARINC429采集模块的SnarferFIFO,对其中的数据进行解析还原,得到顺序的429消息包。嵌入式数据处理模块用于对机载测试系统采集到的数据进行实施处理,该模块利用FPGA进行接口转换,通过采集机箱地板总线与测试系统进行数据互联,并将处理后的结果通过采集机箱底板总线传送给BCU控制模块,具备较强的通用性和叫高的数据处理能力。机载测试嵌入式数据处理模块系统硬件主要包含FPGA、ARM、DSP等,主要特点如下:

表1 Snarfer FIFO数据格式

1)FPGA集成度高,性能可靠,运算速度快,其时钟延时可达纳秒级,结合其并行工作的特点,能够很好的用于机载测试数据格式转换、大规模的并行计算能力以及用于与采集器底板总线之间的接口转换;

2)ARM是高性能、低能耗的RSIC嵌入式处理器,具有大容量的寄存器,支持内存扩展,使得绝大多数运算与操作都可以在寄存器中完成,通过移植的嵌入式操作系统支持,能够有效胜任嵌入式系统的多任务线程管理与计算调度处理等;

3)DSP具有强大的定点数与浮点数运算能力,特别适合数字信号处理运算,可实时快速地实现各种浮点数与定点数的计算处理,在嵌入式实时数据处理模块中主要用于实现各种复杂算法及数字信号处理等。

其硬件结构图如图3所示。

图3 嵌入式数据处理模块硬件结构图

在该系统中,利用FPGA进行接口转换,实现与机载测试采集机箱底板总线间的互联,并通过底板总线获取测试系统采集到的数据,将其传送给嵌入式控制器进行处理,并将处理结果通过底板总线传送给测试系统BCU模块进行采集输出。

机载嵌入式数据处理功能的实现主要采用软件方式,根据计算任务需求,编写用户程序对采集到的数据进行处理,并将处理结果通过底板总线传送给测试采集系统的BCU模块。对于不同的计算处理任务需求,可通过编写不同的用户处理程序,灵活实现各种数据计算任务的处理。系统软件构架如图4所示。

图4 嵌入式数据处理模块软件构架

系统软件基于嵌入式片上系统,采用嵌入式Linux操作系统,包含用户库、监控管理程序和用户程序。在系统启动时,由底层驱动程序通过FPGA接口获取输入参数,并为其分配内存空间,等待用户程序进行处理。处理算法的实现在用户程序中完成,可根据处理任务需要,灵活的编写用户实现程序,编译完一个用户程序后,将编译结果与所需的库文件打包,将其下载到嵌入式数据处理模块中。监控管理程序控制是否通过FPGA接口下载应用程序,同时,监控管理程序也辅助配置系统操作所需的所有文件系统和设备。

由于消息重复型ARINC429事件消息特定的Label号表示事件级别,每个事件信息有一个唯一的事件编码,对于一条包含5种级别(5个有效负载Label号,不同事件编码)、最多1024条事件消息(事件编码位0~1023)的消息包,如果采用全采集的方式,所占用的数据带宽为W2=100k/(32+4)*7*32≈622.2kb。本文采用一一映射的方法,将每条事件信息都映射为一个bit位,根据事件编码数量,定义n(n=64)个16 bit的字来表示所有事件信息,当接收到事件编码为warncode的事件信息时,对相应字(wordnum)的相应位(bitnum)置1,如图5所示。

图5 事件信息数据定义与编码

例如,当warncode(消息包中的事件信息编码,用于识别事件信息类型)为35时,wordnum=warncode/16=2,wordnum=warncode%16=3,即在一个消息重复型ARINC429事件消息包中,收到事件编码为35的事件消息时,将用于存储事件信息标志位的数组的第2字的第3位置1,表示发生了事件编码为35的事件。

由于对事件信息进行了一一映射,同一Label号的事件消息不会被其它相同Label号、不同的事件编码的事件消息所覆盖。因此,对于映射后的ARINC429事件信息的采样频率可以降低,仅需32Hz的采样率即可满足要求。映射后的事件信息所占数据带宽W3=64×32×16b=32.768kb,远小于原有采集方案所需的遥测带宽W2,因此,该方案能够大大降低ARINC429事件信息实时监控所需的遥测带宽资源。

3 软件编程

本文采用机载嵌入式数据处理模块,采用软件方式实现消息重复型ARINC429事件消息包的处理与解析。软件编程基于嵌入式Linux系统,采用C语言编写了用户处理程序,程序内容主要包括读取Snarfer FIFO、获取Snarfer中ARINC429消息的Label号、对当前Label号Snarfer数据进行拼接和解析、事件信息映射和映射信息输出。

1)Snarfer FIFO数据获取程序:

Ref = mat_get_buffer(&kernelpair);//获取下一个输入Snarfer buffermat_get_inputAddr(kernelpair,&inputBuffer)//将inputBuffer指向输入数据(即读取的Snarfer FIFO内容)

2)Snarfer中ARINC429消息解析:

在Snarfer模式中,被挑选的429消息(根据Label号挑选429信息)存储在Snarfer的FIFO中,在SnarferFIFO中,一个429消息字被分成9个32位的字,存储在FIFO中,根据FIFO中数据格式进行解析,还原429消息字。

If(inputBuffer_high==1024)//表示该条ARINC429消息为通道0的消息,且inputBuffer_low(R[15:0])中含有ARINC429消息的Label号

Label=changeToLabel(inputBuffer_low&0x01fe)//获取429消息的Label号

Switch(Label)//根据不同的label号(包头、包体、包尾、其它等),对429消息作相应的处理

Case start://收到事件消息包包头,表示一个消息重复型ARINC429事件消息包的开始,读取有效载荷内容,即包体信息和事件信息数量等。

Case warn://收到事件消息报包体载荷,该label中数据为事件信息,Label表征事件级别,数据内容包包含事件消息的顺序和事件的编码信息,根据事件编码,将相应映射位置1。

Case end;收到事件消息包包尾,表示一条消息重复型ARINC429事件消息包已经结束,将映射信息输出至测试系统BCU模块进行采样,BCU模块根据设置的采样频率对结果打包成IENA包,以固定周期将其发送出去。

3)重复读取Snarfer FIFO中的内容。

系统总体流程图如图4所示。

图6 软件工作流程图

4 实验验证

为验证本文方法的可行性与有效性,在实验室环境进行了大量的实验。实验中利用多功能总线信号模拟器模拟多条消息重复型ARINC429事件消息包,由ABM101总线监听模块进行采集,通过机载嵌入式数据处理模块对ABM101的SnarferFIFO中数据进行处理,并在Windows系统上编写了检查软件,对BCU输出的INEA包内容进行检查,将映射结果进行还原事件信息,与模拟器实际发送的事件消息包内容进行了对比。结果表明,本文所提出的方案可行有效,从BCU输出的映射数据能准确还原出消息重复型ARINC429消息中的完整的事件信息,且消息参数采样率和ARINC429事件消息数据所占的带宽大大减少。

5 结论

本文采用嵌入式数据处理模块实现了消息重复型ARINC429总线事件消息包机载实时处理,验证了在机载测试采集前端对测试采集数据进行处理的可行性与有效性,为后续其它数据量大、需实时遥测的关键数据的实时地面监控提供了参考解决方案。消息重复型ARINC429总线事件消息包机载实时处理,解决了原有机载测试系统事件信息采集、遥测的难题,在保证事件数据不丢失的情况下,降低了安全监控所需的遥测带宽需求,对飞行试验实时监控有一定的促进意义。同时,对于在飞行试验中遇到的一些新的测试需求,采用机载嵌入式数据处理模块对测试采集数据进行处理,能够在一定程度上能够解决一遇到新问题就需研制新的测试设备的尴尬境地,降低了飞行试验机载测试系统的成本和测试系统方案、设备的准备时间。

[1] 李 榕, 刘卫国, 刘晓剑. 航空用ARINC429总线收发系统设计与实现[J]. 计算机测量与控制, 2005, 13(9):970-972.

[2] 张战平. ARINC429航空通讯总线设计[J]. 计算机测量与控制, 2013, 21(8):2230-2233.

[3] 李伟英, 吴成富, 王 亮,等. 基于RTX实时环境ARINC429航空通信总线驱动设计与实现[J]. 测控技术, 2011, 30(1):79-82.

[4] 田立强, 曾祥烨, 苏彦莽,等. 基于FPGA的ARINC429接口设计[J]. 测控技术, 2015, 34(2):91-94.

[5] 安春雷, 梁葆华, 张 鹏. 基于嵌入式模块的机载429总线数据测试设备开发与应用研究[J]. 科技传播, 2013(13):174-175.

Research on the Real-time Processing Technology of Message Repeating Type of ARINC429 Bus Event Message Packet

Shi Fenglei, Li Guoxing,Gao Pan, Qi Xiaopeng

(China Flight Test Establishment, Xi’an 710089, China)

ARINC429bus is widely used in civil aircraft. In the fight test, the real-time monitoring of message repetition ARINC429 event information occupies a large amount of telemetry bandwidth resources. Through embedded the data processing module into the airborne test system, the data processing module obtained the collected date of ARINC429 acquisition module through the backplane bus of the collector. The data processing module analyzed the aircraft incident information and delivered the results to the ground monitoring center by the telemetry system. It can greatly reduce the demand of telemetry bandwidth and make great significance for real-time safety monitoring of flight test.

Flight test;ARINC429;airborne test system;telemetry;safety monitoring

2017-01-18;

2017-02-27。

石冯磊(1990-),男,安徽亳州人,硕士研究生,工程师,主要从事飞行试验与机载测试研究。

1671-4598(2017)05-0195-04

10.16526/j.cnki.11-4762/tp.2017.05.054

TP274

A

猜你喜欢
遥测数据处理嵌入式
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
前馈复合控制在提高遥测跟踪性能中的应用
基于低频功率数据处理的负荷分解方法
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
无人机测绘数据处理关键技术及运用
远程控制式遥测地面站关键技术研究
基于WPF的遥测CAS信息实时监控系统设计开发
自适应模糊PID控制的遥测方舱温度调节方法
TS系列红外传感器在嵌入式控制系统中的应用
嵌入式PLC的设计与研究