ARINC429总线是目前航空电子分各子系统之间最常用的通信总线之一,作为现代航空电子系统的"骨架",一旦该总线系统或挂接的机载电子设备发生故障时,整个数据传输就会出现异常。为了快速诊断及排查故障点,429总线数据的仿真发送及采集显得尤为重要。本文提出一种基于AEC429-PCI-22/S5总线接口卡的ARINC429总线数据的仿真发送与采集系统,通过与机载电子设备点对点的数据收发,能够快速排查出故障设备,为航空机载电子设备的日常维护和故障诊断提供了一种高效的辅助手段。
1 ARINC429航空总线简介
ARINC429是一种广泛应用于民用和军用飞机的串行数据总线结构,是一种单向广播式数据总线,其传输介质为屏蔽双绞线,调制方式采用双极归零制的三态码方式,具有很强的抗干扰能力。数据传输采用广播传输原理,按开环进行传输,传输速率有两种:高速传输率为100kb ps±1%,低速传输率为12~14.5 kbps±1%.ARINC429规范规定,一个数据字有32位。数据字有5种形式:二进制补码(BNR)数据、十进制(BCD)数据、离散数据、维护数据、AIM(即应答、ISO5号字母表和用ISO5号字母表表示的维护数据)数据。它们被分为5段,如图1所示。
图1 ARINC429总线数据格式
2 系统硬件设计
为了内外场使用方便,系统采用APOLLO 150便携式一体工控机,结合AEC429-PCI-44总线接口卡,按照航空标准HB6096-86的规范要求实现ARINC429总线数据的模拟发送与接收。
AEC429-PCI-22/S5接口卡是北京神州飞航有限责任公司开发的一款多功能的ARINC429数据输入和输出总线接口卡,其硬件结构如图2所示,板卡采用PCI总线接口,有2个接收通道2个发送通道,提供中断和查询2种接收数据的方式,具有定时发送和非定时发送数据2种方式,数据输入输出通过标准DB62连接器。提供若干个接口函数,在使用时只需将公司提供的配套开发库文件AEC429C5.dll和AEC429C5.lib添加到应用程序目录中,在应用程序中加入头文件AEC429C5_lib.h即可。
图2 数据接口卡硬件结构图
将AEC429-PCI-22/S5接口卡的每个发送通道和接收通道分别作为总线数据仿真系统的的模拟输入及输出端口,也可直接与相应的检测设备相连进行总线数据通讯,按照ARINC429协议采用屏蔽双绞电缆,利用特定的适配器,实现对机载电子设备的指令数据的模拟输入及工作状态数据和故障信息的查询。由于不同的机载电子设备具有不同的通讯协议及硬件接口,故配合系统软件设计,系统还根据不同设备的特点,设计了特定的适配器,以满足多型设备总线数据发送、采集及故障诊断的需要。如图3所示。
图3 系统硬件原理图
3 系统软件设计
3.1 软件总体设计
本系统软件选用以C#为开发平台进行开发,结合ACCESS数据库根据特定机载电子设备的通讯协议定制相应的发送及回收总线数据,根据采集的故障代码进行故障诊断,并利用数据库中预置的故障查询系统,检索并显示故障信息及排除方法。系统软件主要由两大功能模块组成:系统应用软件及系统管理软件。系统应用软件采用对话框形式,通过下拉列框调用数据库中预置的机载电子设备名称,利用列表框显示设备信息、总线数据信息,用户可对数据信息进行人为的二次定制。系统管理软件主要实现对系统数据库及检测记录的管理,通过该系统可随时定制新的通讯检测设备数据及故障信息,并可对以往操作记录进行查询。
3.2 总线数据的发送与接收
AEC429-PCI-22/S5驱动程序提供了丰富的接口函数,能满足用户对板卡的操作需求;具有良好的兼容性,能适用于多种编程环境;AEC 429-PCI-22/S5驱动程序接口函数按ANSIC标准编写,以动态链接库DLL形式提供给用户。当进行程序开发时,需要引用库文件:AEC429C5.d ll和AEC429C5.lib,函数库头文件:AEC429C5_lib.h.
以下是429配置字结构:
其中,ParityEn:校验使能位(TRUE:使能校验;FALSE:校验禁止);EvenParity:校验模式选择 (TRUE:偶校验;FALSE:奇校验);DataBits:数据位长度,取值25或32;SCK:429半位采样次数,取值范围12~16;DV:模块内部分频设置寄存器,最大取值2047,不能为0.
以下是板卡句柄结构:
板卡提供了两种数据接收方式:查询方式及中断方式。为保证接收机载设备回传的相关数据的实时性,在系统中主机采用中断的方式进行接收,并将接收结果在上述列表中实时显示,若设备存在故障,系统自动弹出设备的相关故障信息。
要实现AEC429-PCI-22/S5接口卡的数据发送与接收,需要首先对板卡进行初始化,图4(a)是板卡初始化的程序框图。
图4 板卡初始化、数据接收和数据发送程序框图
系统采用中断方式接收机载电子设备发送的数据,将板卡预置的函数AEC429C5_RxIntEnable入口参数Enable置为TRUE,即可进行中断方式的数据接收。图4(b)是板卡数据中断方式接收子程序框图。
为保证各通道独立控制,发送数据采用非定时方式,当发送按钮按下即发送预设的总线数据。将板卡预置的函数AEC429C5_EnableTimerMode的入口参数Enable置为FALSE,即可进行非定时方式的数据发送。如图4(c)所示为板卡非定时发送数据子程序框图。
4.结论
ARINC429是航空电子系统中应用最广泛的通信标准,基于PCI板卡的仿真与发送系统,较之传统的单片机系统,功能更强大,而且具有更好的可维护性和可扩展性。经测试,该系统实时性好,可靠性高,可满足机载电子设备检测及维护的需要。