航电ARINC429总线监测系统的设计与实现
2014-09-23卫保国郝志浪杜朝阳
卫保国,蔡 伟, 郝志浪,杜朝阳
(1.西北工业大学 电子信息学院,陕西 西安 710129;2.中航工业第一飞机设计研究院 陕西 西安 710089)
航电ARINC429总线监测系统的设计与实现
卫保国1,蔡 伟1, 郝志浪1,杜朝阳2
(1.西北工业大学 电子信息学院,陕西 西安 710129;2.中航工业第一飞机设计研究院 陕西 西安 710089)
针对某型号飞机航电系统与总线网络通信故障的监测需求,我们设计了ARINC429总线监测系统。该系统设备为一台便携工控机,通过ARINC429信号接收板卡实时、高效地对总线信息进行接收、分析和显示。依照航电总线标准ICD(接口控制文件)库进行解析,能够准确、快速的定位故障,避免了设备的无故障拆装,提高了维护效率。实验表明,该总线监测系统实时稳定可靠,能够满足设计需求。
航电系统;ARINC429总线;总线监测; ICD
伴随着国内外航空工业的快速发展,航空电子技术也变得越来越数字化和综合化,ARINC429总线因其优秀的性能在航电系统中发挥了重要的作用, 其在许多航空设备中广泛应用的同时,也在许多航空机载设备的维修中出现了大量对ARINC429总线信号监测的需求,这使得航电ARINC429总线监测系统的研究开发变的十分重要。
1 ARINC429总线简介
ARINC429总线标准的全称是数字式信息传输系统,是由美国航空电子工程委员会(Airlines Engineering Committee)提出并颁布的机载电子设备之间进行数据传输约定的一种标准,它规定航空运输工业航空电子系统生产部门对部件、通用设计、结构及实验规范的要求,保证在航线上使用满意和有必要的互换性,使那些影响设备互换性的物理和电气特性达到最大程度的标准化,完善系统要求以求达到地面和机载设备的兼容性,分配和规定频率以满足需要、进行标准机载通信和电子系统的协调工作和交换技术数据等[1]。
ARINC429总线结构简单、性能稳定,抗干扰性强。最大的优势在于可靠性高。ARINC429广泛应用在先进的民航客机中,如B-737、B757、B-767,俄制军用飞机也选用了类似的技术。我国与之对应的标准是HB6096-SZ-01。
协议标准规定了ARINC429总线不仅可以完成数据信息的多路传输,实现数据和资源信息的共享,而且还能减轻系统的重量并保证所有连接到总线上的分系统能使用一致的数据库,最大限度的实现了资源的交互性。
ARINC429总线采用双绞屏蔽线,串行方式单向传输数字数据信息。连接到每一个总线上的接收器不可超过20台,ARINC429的发送速度有高速发送(100千位/秒)和低速发送(12-14.5千位/秒)两种。在同一总线上两种速度不可混用。
ARINC429 数据字以双极性回零脉冲形式发送,ARINC429数据总线上传输的数据字使用BNR码和BCD码两种类型,这两种类型的数据字结构相似,字格式[2]的位定义如表1所示。
2 系统需求
由于ARINC429总线在当代的运输机和相当数量的民航客机(如A310、A300、B-757、B-767等)以及军用飞机中的广泛应用,某些终端或者总线通信出现故障在所难免,因此,在许多航空机载设备的监测维修中出现了大量对ARINC429信号的检测需求。
表1 ARINC429数据字格式Tab.1 The word format of ARINC429 data
为满足当代某些机载设备ARINC429信号的测试需求,总线监测系统应能够满足如下要求:
1)对计算机通道的所有ARINC429总线信号等进行接收、实时记录和数据回放。
2) 通过直观的数据监测,对各种信号具有从原码到物理意义的解析功能。
3)能快速有效的进行系统试验、操作记录、故障定位和状态监视。
4)总体设计方案应具有智能化、模块化的特点。
3 系统实现原理
本系统是基于ARINC429总线的ICD监测软件,系统逻辑位置如图1所示,其原理相当于航电系统的一个子系统,是总线上的一个接收器,它监测的是总线上的通讯状态、信息及过程。
图1 ARINC429总线测试节点逻辑位置图Fig. 1 Logical location map of the ARINC429 bus test node
系统监测的主要过程为,总线板卡接收到的数据通过与总线ICD数据库对应,计算机自动查找出其对应关系与逻辑,解析出相应信号的状态,并将信号信息及状态及时进行显示。
系统的这种设计方式具有实时性好、可靠性高、测试工作量小等优点。
4 系统组成
本系统的硬件为一台便携式工控机和西门子公司生产的具有8路接收通道和8路发送通道的ARINC429板卡,每个通道均支持接收发送自定义,信号传输速率为12.5~100 kbps编程可调;4K*8双端口RAM作为数据收发缓存:支持奇偶校验和可编程硬件触发,终端可选择模式;发送通道支持单个发送、单次发送和循环发送3种模式。
本文研究的重点是软件部分,同时也是本系统的核心。通过实现ICD数据库管理部分、总线监测部分(数据监测、解析、分析并存储等模块)来完成,功能模块关系如图2所示,各个部分和模块有机的结合到一起,并用简洁的界面实现系统操作。系统在WindowsXP环境下,用VC++开发。设计主要为ARINC429总线信号的接收、处理以及显示,即信号的监测[3]。
图2 功能模块关系Fig. 2 Relationship between functional modules
5 系统功能
基于虚拟仪器的ARINC429总线信号测试方案,信息从总线的发送口发出,各接收口根据传输协议和端口配置接收相应的消息。硬件部分实现信号的输入与输出,软件部分实现对信号的处理和显示,该总线监测系统作为航空电子系统的一个子系统,能够对总线的通讯状态及通讯过程、指定分系统传输的任意数据块和数据字进行监测, 并能够记录数据。可根据要求对监测数据进行分类处理, 输出测试结果。
5.1 总线数据监测
总线监测器作为第三方设备,负责监测发送端和接收端的数据通信,它的连接和接收端基本一致,只要遵守相应的传输协议即可完成数据通信。本监测软件主要监测的数据有:发送端和接收端通信的32位数据信息、时间标签、控制字、状态字和传输消息的个数等。
5.2 总线数据的解析
总线监测器中ICD数据库管理模块和总线监测模块是独立的,通过XML文件进行数据交互。两个模块之间是同步的。因此,我们对监测到的数据进行解析或者存储都是严格按照ICD的定义来实现的,信号的逻辑值所代表的物理量可以通过ICD来获得。
5.3 数据分析
数据分析可以有两种模式:实时模式和事后模式。实时模式就是通过分析ICD解析出来的数据确定总线通信的故障,事后分析就是接收总线上某个端口的数据,通过数据记录模块存储,人为进行比对。
5.4 数据存储
系统允许根据采集数据的时间、端口号、数据块名称、错误信息等条件筛选部分数据导出到指定文件。本设计存储了总线上全部数据,文件存储到Excel表中。
5.5 ARINC429 ICD数据库管理
接口控制文档ICD[4](Interface Control Document)是规定航空电子系统各分系统、设备之间或与其他系统、分系统、设备之间具体接口关系的设计文件,它与底层总线板卡相隔离。
为保障飞机系统中各个机电综合管理子系统能顺利综合且正常工作,便于管理与查阅,目前对接口控制文档庞大的数据管理一般都采用数据库管理的形式,所有总线通讯数据的定义都按统一的规则存储在数据库描述表中,包括系统的控制逻辑、物理量的意义、比例关系、物理量的单位、有无符号位、编码形式、故障代码等各种相关信息。
ICD数据库是整个航空总线测试系统的核心,通过ICD库的重新配置或设计就可以用于新的航空总线测试。基于ICD的航空总线测试系统有效地克服了专用系统的缺点,已经成为数据总线测试的发展方向。
当总线监测系统工作时,要测试的参数通过总线板卡与ICD数据库对应,计算机自动查找出其对应关系与逻辑,进而对总线上的数据进行实时监测和记录分析。在本系统中ICD数据库的逻辑位置如图3所示。
图3 ICD库逻辑位置图Fig. 3 Logical location map of ICD database
6 ARINC429总线监测系统软件实现
软件部分是本系统研究的核心和重点,通过各个部分实现系统功能。
图4 ICD管理软件Fig. 4 ICD management software interface
6.1 ICD数据库管理软件实现
本管理软件为了同时满足其他总线类型,所以对其他类型进行了兼容,通用ICD管理软件在设计过程中遵循的思想主要满足以下需求:准确性、实时性、通用性、实用性和可移植性。
6.1.1 设计思想
ICD管理一般都采用数据库管理形式,本设计也是如此[5]。考虑到ICD定义内的信号和数据之间的复杂性和相关性,通用ICD管理软件采用关系模型组织数据,各层次模型的数据之间的关系是父与子的关系,其它模块访问该数据库时,先访问根节点,再通过递归关系一层一层的访问具体的数据。
ICD数据库将接口控制文档抽象出许多描述表,用这些描述表定义接口控制文档的内容,表中内容按照数据类型形成数据记录,然后通过自顶向下的层次划分方法,将一个庞大的ICD切分成逻辑上互相关联,结构上互相独立的数据描述体系,用这种描述方法定义ICD的内容,对于后期的访问和维护提供了极大的便捷。本设计中采用的数据结构为:CMessageBase(报文类型 )-> CBlockBase(数据块类型)->CSignalBase(具体信号)。ICD管理软件如图4所示。
6.1.2 ICD接口访问基本步骤
对ICD管理软件的访问没有严格意义上的规定,可以通过某些特殊标志性的定义进行查询,只要不违背总线接口定义和ICD的基本数据结构即可。本系统访问ICD接口基本步骤描述如图5所示:
6.2 监测部分软件实现
本监测系统在设计过程中需要监测ARINC429总线上传输的所有信息,主要的数据有:发送端和接收端通信的32位数据信息、时间标签、控制字、状态字和传输消息的个数等[6-7]。
对接收数据进行监测主要有:板卡初始化,启动线程实时接收数据,解析数据对每一数据块进行分析,最后存储。监测部分的软件实现流程如图6所示,具体实现如下:
图5 ICD接口访问步骤Fig. 5 ICD interface to access steps
6.2.1 初始化模块实现
图6 软件流程图Fig. 6 Flow chart of Software
首先,初始化板卡:打开板卡号device_number,创建Queue_length和Bsm_length,导入固件(FROM_FLASH),其次,设置触发深度和通道,其中通道为2,触发深度为256,然后设置配置字、设置接收命令字。
6.2.2 监测模块实现
本软件在设计过程中需要监测ARINC429总线上传输的所有信息,同时也需要解析两个不同Label号(信息标识符)的信息,所用数据占同一个缓冲区,在设计过程中为了避免同一时刻访问同一缓冲区,造成访问冲突,我们采取了多线程编程。
首先,创建3个数据接收线程,在本设计中,监测模块的优先级最高,两个解析模块的优先级处于同一级别,通过时标循环控制访问权限。为避免多线程访问同一资源,采取了互斥对象,它不仅可以在同一应用程序的线程间实现同步,还可以在不同的进程间实现同步,从而实现资源的安全共享。
其次,当执行某一个线程时,其它线程采用SuspendThread()函数,用来悬挂线程,暂停线程的执行,以便不影响当前执行的线程的数据通信。
最后,结束线程,及时的释放申请的资源和内存。
6.2.3 数据解析模块实现
解析模块是本软件设计中的一个重要组成部分,其主要完成ARINC429总线监测信息的事后分析。该模块将监测消息数据进行翻译,分析其物理量和各种信号的定义,用来判断发送端与接收端之间数据传输的正确性。我们主要解析的是某型号飞机的机电管理信息和飞行参数信息,下面以机电管理信息的解析为例,具体实现步骤如图7所示。
图7 数据解析步骤Fig. 7 Data analysis procedure
首先,因为ARINC429总线的标识符是先传最高位,后传最低位,所以我们首先应该根据ARINC429数据字格式,将总线中传输的Label号顺序转换过来,为了满足系统需求中对总线上所有的ARINC429信号进行接收,我们需要将所有可能Label号的数据进行接收。此处我们将所有的Label号(0~255)进行反转。
其次,根据Label号、设备号、通道号接收相应数据,接收到的数据存储在receive_buffer[]中。并根据数据字的Label号,选择数据块相应的解析方式。
再次,通过与ICD库中的信息交互解析出信号状态,具体的解析方式在6.1.2 ICD接口访问基本步骤中已经做了具体的介绍,此处不做重复。
最后,将解析结果显示在相应的界面上。本界面中只将ICD定义中认为是故障的数据状态显示了出来。数据解析界面如图8所示。
图8 数据解析界面Fig. 8 Data analysis interface
6.2.4 数据分析模块实现
本模块主要完成ARINC429总线监测系统相关信息的显示,包括消息的序列号、消息传输的时间、数据的端口号(Label号)、所属数据块名称及具体信号等。通过该模块的直观显示,可以判断出需要解析的数据与发送数据的差异,从而可以判断出总线的通信故障。本模块实现界面如图9所示。
6.2.5 数据块存储实现
根据采集数据的时间、端口号、数据块名称、错误信息等条件筛选部分数据导出到格式为Excel的指定文件,图9界面右下端的“导出”按钮就可实现数据的保存。导出界面如图10所示。
图9 数据块分析界面Fig. 9 Analysis of the data block interface
图10 数据存储界面Fig. 10 Data storage interface
6.2.6 测试实例
1)数据接收,假设接收到的原始数据字为0xA00141F2,根据ARINC429总线的传输协议(标识符先传最高位,后传最低位)可知,那么该数据字0xA00141F2低八位F2反转后就是标识符(Label号),即为4F。
2)数据字判断,该数据字0xA00141F2的Label号与报文“机电管理提示级告警信号2”Label号相同,所以此数据字将参照照ICD数据管理库中对“机电管理提示级告警信号2”的数据字定义进行解析。
3)获取特定报文,先按照报文名称“机电管理提示级告警信号2”获取该报文的数据字格式,如图4中所示。
4)获取信号值,按照报文的数据字格式和报文中信号名字如“PTU1-2工作”获取此信号的值为1。
5)获取信号状态,按照信号名字“PTU1-2工作”的值1对比ICD数据库中对值得定义(图4中所示),获取信号的状态,此处对应为“是”。那么此信号的解析结果就为PTU1-2工作。其他信号亦是如此。
6)显示结果,数据字0xA00141F2经过解析后,解析结果在数据解析界面中的显示为:信号/状态矩阵:1,奇/偶校验位:1,PTU1-2工作,RAT开锁。
数据字0xA00141F2的解析结果在数据分析界面中的显示为:1:0 1:1 1:0 1:0 0:1 0:1 1:1 0:1 目的/源接收标识:1 PTU1-2工作:1 PTU2-1工作:0 RAT开锁:1 信号/状态矩阵:1奇/偶校验位:1。
7 结 论
文中主要介绍了基于ARINC429总线的ICD监测软件的实现方法及实现步骤。首先介绍了系统需求及原理,其次阐述了该软件系统设置参数,再次给出了该软件的设计流程和软件运行步骤,最后详细阐述了各个软件功能模块的设计方法。本系统在VS2008环境下设计,在针对某型号飞机研发的总线监测系统中,完成了对429总线信号的监测和分析,实验表明,该监测器性能稳定可靠,操作简便,能够满足系统需求,可应用于飞机航电系统调试研究和维护开发,通过对ICD数据库升级或更新,也可应用于其他型号总线监测系统。
[1] 支超有.机载数据总线技术及其应用[M].北京:国防工业出版社,2009.
[2] 陈煜,张彦铎,王春梅.基于429总线的某飞行器测试仪开发与设计[J].武汉工程大学学报,2011,33(4):77-80.
CHEN Yu, ZHANG Yan-duo,WANG Chun-mei.The tester development and design of an aircraft based on the 429 bus[J].Wuhan nstitute I of Technology,2011,33(4):77-80.
[3] 刘晓剑.ARINC429总线数据收发装置研究[D].西安:西北工业大学,2004.
[4] 夏庆梅,徐亚军,熊华钢.航空电子接口控制文件的数据库管理[J].航空计算技术,2001,31(3):39-42,45.
XIA Qing-mei,XU Ya-jun,XIONG Hua-gang.Avionics interface control document database management[J].Aeronautical Computing Technique, 2001,31(3):39-42,45.
[5] 侯进,航电ICD生成与管理系统设计[D].成都:电子科技大学,2011.
[6] 郝志浪.基于机载数据总线的ICD监测软件设计和实现[D].西安:西北工业大学,2013.
[7] 顾世哲,吴君胜.ARINC429测试系统设计与数据描述方法研究[J].航空计算技术,2006,36(3):22-24.
GU Shi-zhe, WU Jun-sheng.Design and bus data describing method of ARINC429 test system[J].Aeronautical Computing Technique,2006,36(3):22-24.
Design and implementation of avionics ARINC429 bus monitoring system
WEI Bao-guo1, CAI Wei1, HAO Zhi-lang1, DU Chao-yang2
( 1. College of Electronics and Information, Northwestern Polytechnical University, Xi’an 710129, China;2. AVIC the first aircraft institute, Xi’an 710089, China)
According to the Monitoring requirements of aircraft avionics system and bus network communication fault,we designed a monitoring system of ARINC429 bus. This system equipment is a portable PC, it can receive, analyze and display bus-information real-time and efficiently through ARINC429 signal receive-board. In accordance with the avionics bus standard ICD(Interface Control Document) database, we are able to locate the fault accurately and quickly, avoid the trouble-free Disassemble, improve the maintenance efficiency. The experiments showed that the bus real-time monitoring system is stable and reliable and meets the requirements.
avonics; ARINC429 bus; bus monitor; Interface Control Document
TN919
A
1674-6236(2014)03-0037-05
2013–06–20 稿件编号:201306131
卫保国(1970—),男,陕西乾县人,博士,副教授。研究方向:信号与信息处理。