基于PowerPC架构VxWorks平台的RDC仿真器设计
2019-06-15王凯崔海青李伯宁
王凯 崔海青 李伯宁
摘 要: 航空电子系统是民航客机的重要组成部分,远程数据集中器对航电系统数据的处理和转发起到至关重要的作用。文中设计的远程数据集中器基于PowerPC架构VxWorks平台,通过编写程序和配置板级支持包,完成远程数据集中器的设计。主要功能是对航电系统中的AFDX总线数据、ARINC429总线数据和离散量实现相互转换。首先,对VxWorks系统、MPC8270硬件平台和航空总线数据进行研究;其次,搭建远程数据集中器设计框架,并进行模块化设计与实现;最后,对设计的远程数据集中器进行测试,完成预期功能。
关键词: 航空电子系统; 远程数据集中器; VxWorks; PowerPC; 板级支持包; 总线数据
中图分类号: TN919?34; TP391.9; V243.1 文献标识码: A 文章编号: 1004?373X(2019)12?0090?04
Abstract: The avionics system is an important constituent part of the civil aviation passenger aircraft, and the remote data concentrator plays a crucial role in data processing and forwarding of the avionics system. Therefore, a remote data concentrator based on the PowerPC architecture and VxWorks platform is designed in this paper. The design of the remote data concentrator is completed by compiling the program and configuring the board?level support package. The main function of the remote data concentrator is to realize mutual conversions among AFDX bus data, ARINC429 bus data and discrete quantity of the avionics system. The VxWorks system, MPC8270 hardware platform and aviation bus data are studied. The design framework of the remote data concentrator is built, so as to conduct the modular design and implementation of the remote data concentrator. The designed remote data concentrator is tested to complete the intended functions.
Keywords: avionics system; remote data concentrator; VxWorks; PowerPC; board?level support packet; bus data
0 引 言
现代航空器中的数据传输需要满足快速、有效的特性。在航空电子系统中,数据总线负责各个系统之间的数据传输。传输的数据主要包括AFDX总线数据、ARINC429总线数据、CAN总线数据和离散量数据,机载远程数据集中器(Remote Data Concentrator)的主要功能是完成多种数据的转换,并保证数据传输的实时性和准确性[1]。基于这样的背景,本文设计一个简易的远程数据集中器,主要实现AFDX总线数据[2]、ARINC429总线数据和高低电平形式的离散量数据的相互转换[3]。本文主要研究内容包括实现ARINC429总线数据与AFDX总线数据的相互转换;实现AFDX总线数据与离散量数据的相互转换。
1 RDC的设计
1.1 RDC介绍
远程数据集中器,通常作为飞机上的大多数航空电子设备的“中枢神经系统”,负责航空电子设备的相互交联。在现代民航客机上,航空电子系统中主干数据网络一般使用AFDX总线,而各个子系统中仍然使用ARINC429总线、离散信号和CAN总线。RDC的主要功能是完成AFDX与其他总线之间的数据转换[4]。RDC的功能图如图1所示。
图1 RDC的功能图
远程数据集中器一方面通过AFDX总线连入主干网络,各个RDC通过AFDX交换机进行通信;另一方面,RDC通过ARINC429总线与各个航线可更换组件连接[5]。因此,RDC应具备以下功能:
1) 数据处理功能。RDC是AFDX总线和ARINC429总线数据相互转换的中转站,所以RDC应能够实现两种总线数据协议的相互转换。
2) 硬件接口。RDC必须具备符合航空规范的ARINC429总线接口和AFDX总线接口,为两种数据的输入提供必要的硬件支持。
3) 网关功能。RDC在多种总线数据中起到网关的作用,能够进行数据通信协议的转换[5]。
本文设计的RDC以完成ARINC429数据及离散量数据与航空电子设备全双工交换以太网(AFDX)信息之间的相互转换,支持16路ARINC429数据的收发以及64路离散量的输入、输出[6]。
1.2 RDC设计框架
RDC整体框架如图2所示,其中板卡初始化检测、自检和数据转换均由Wind River Workbench编程实现,编译成功后下载至MPC8270硬件平台,该硬件平台为RDC提供网线接口、DP78接口和SCSI68接口,为AFDX和ARINC429板卡提供驱动、收发测试和自检,同时能够支持离散量的输入/输出。
图2 RDC设计框架
图3 RDC启动流程
1.2.1 RDC啟动准备工作
1) 读取相关配置文件。PowerPC开始工作前,需要对组件进行上电,读取与组件的相关配置文件,保证主板能够正常工作[7]。配置的主要内容包括:ARINC429总线数据的收发使能、AFDX总线数据的收发使能、离散量的收发使能、数据转换使能和规定系统周期等[8]。
2) 组件的检测与初始化。对ARINC429和AFDX板卡进行检测与初始化,如果某一板卡无法工作,将显示该板卡失效。
3) 开启数据通道。RDC的数据通道如图4所示,其中包括ARINC429总线与AFDX总线的数据收发通道、AFDX总线与离散量的收发通道,在RDC工作前要对这些通道进行开启,确保数据的畅通。
图4 RDC的数据通道
1.2.2 RDC的数据转换
1) AFDX到ARINC429数据转换
AFDX到ARINC429数据转换部分的主要功能是将RDC收到来自AFDX板卡的AFDX数据帧转换为符合ARINC429协议的数据帧,然后输出给航线可更换组件 [9],数据转换的结构如图5所示。
图5 AFDX数据转换为ARINC429数据
AFDX到ARINC429数据转换部分采用模块化设计,可划分为以下模块:
AFDX数据接收模块。用于接收AFDX数据帧,判断接收到的数据帧是否完整,然后对接收到的AFDX数据进行解码,得到数据的IP、对应的航空电子信息等内容,存储到数据缓冲模块。
AFDX数据缓冲模块。存储AFDX数据解码的相关信息,把数据编码成符合ARINC429协议的数据帧,同时为数据分配发送的通道。
ARINC429数据发送模块。确定发送速率、发送模式等信息,把编码完成的ARINC429数据帧按照对应通道发送至航线可更换组件。
2) ARINC429到AFDX数据转换
ARINC429到AFDX数据转换部分的主要功能是将RDC收到的ARINC429数据帧转换为符合AFDX总线协议的数据帧,然后输出至航空电子仿真系统,每个ARINC429数据帧对应一个AFDX数据帧。数据转换的结构如图6所示。
图6 ARINC429数据转换为AFDX数据
ARINC429到AFDX数据转换部分可划分为以下模块:
ARINC429数据接收模块。用于接收ARINC429数据帧,判断接收到的数据帧是否完整,然后对接收到的ARINC429数据进行解码,得到数据、源/目的识别码等信息,存储到数据缓冲模块。
ARINC429数据缓冲模块。存储ARINC429数据解码得到的相关信息,然后对数据进行编码,封装成符合AFDX总线协议的数据帧,同时为数据分配发送通道。
AFDX数据发送模块:确定发送速率、发送模式等信息,把编码完成的符合AFDX总线协议的数据帧按照对应通道发送至航空电子仿真系统。
3) AFDX数据与离散量的转换
AFDX数据转换为高低电平形式的离散量,是将数字形式的十六进制AFDX数据帧转换为高低电平,每4个电平对应AFDX数据的一个字节。
1.2.3 板级支持包(BSP)的配置