基于HI-3593的ARINC429总线数据监控设计
2020-11-13杨庆华高梦赞屠晓伟
杨庆华,高梦赞,屠晓伟
(上海大学机电工程与自动化学院,上海 200444)
0 引言
目前,航空综合测试平台向着综合化、模块化、通用化、智能化方向发展。在A320、B737、ARJ21、C919等机型中,ARINC429总线应用位置众多。当前,针对ARINC429总线数据收发的装置设计主要分为以下三类:基于现场可编程门阵列(field programmable gate arrcly,FPGA)的多功能ARINC429总线接口,实现ARINC429数据收发[1-2];面向仪器的外围组件互连(peripheral component interconnction,PCI)扩展(PCI extensions for instrumentation,PXI)板卡的ARINC429总线数据收发单元[3-5],实现数据收发;基于集成ARINC429总线协议芯片实现总线信息收发[6-7]。本文采用HI-3593集成协议芯片实现数据收发,采用USB协议和网络通信协议实现数据传输,采用近端和远端同步监控模式,更加便捷地进行工厂化调试分析。
1 HI-3593收发装置设计与原理分析
ARINC429总线标准使用两根信号线传输32位的数据帧数据,以脉冲形式发送。ARINC429总线数据帧格式如图1所示。
图1 ARINC429总线数据帧格式Fig.1 ARINC429 bus data frame format
由图1可知,数据帧包含奇偶校验、符号状态矩阵(sign status matrix,SSM)、数据源终端识别(source/destination,identifier,SDI)和标志位(LABEL)五个主要字段[8]。 LABEL为传输信息的类型;SDI为源/目的标志;Data为数据区;SSM为符号/状态位;Parity为奇偶校验;
HI-3593是HOLT集成电路公司生产的集成化的ARINC429总线数据接口芯片。它能够同时管理2路接收通道和1路发送通道。它的每一路通道内存均为独立存储空间,可同时进行多通道数据交互。HI-3593采用3.3 V单电源供电,使用高速10 MHz串行外设接口(serial peripheral interface,SPI)与主控CPU通信,实现系统初始化配置和收发数据功能。其便捷的使用方式和准确的收发性能使得ARINC429数据交互变得更加简便。
1.1 ARINC429数据收发控制器结构和原理
HI-3593数据收发控制器由三大部分组成,分别为接收通道RX1、接收通道RX2、发送通道TX1。
HI-3593收发原理如图2所示。
图2 HI-3593收发原理图Fig.2 HI-3593 transceiver schematic
接收通道由接收端口、驱动器、有效字检查模块、LABEL过滤模块、数据缓冲区、接收完成中断提示等组成。发送通道由数据发送缓冲区、数据格式化转换器、驱动电路、输出接口等组成。其中:驱动器负责收发的电平转换;有效字检查模块对接收的每一位数据进行采样判断;LABLE过滤可以选择不同LABEL通道进行数据接收。
1.2 HI-3593工作模式
HI-3593ARINC429数据收发器的工作模式为自测模式、正常模式。自测模式下,通过SPI总线配置发送控制寄存器工作模式为SELFTEST,无需外部引线连接,内部控制线路将收发接口自动对接,并通过自收发方式验证系统是否正常工作。正常工作模式下,发送通道和接收通道都支持低速12.5 kbit/s和高速100 kbit/s通信速率,各通道独立工作。
1.3 收发操作
ARINC429总线数据接收状态,首先配置接收通道控制寄存器,主要包括ARINC通信速率、SDI数据位、奇偶校验、LABEL过滤器使能。配置完成后,等待数据接收完成中断标志位。接收到数据接收完成标志后,通过SPI总线读取数据接收缓冲区数据,完成一次数据接收。
ARINC429总线数据接收状态。首先,配置发送通道控制寄存器,主要包括ARINC通信速率、奇偶校验、关闭自测模式、选择数据发送自动模式或手动模式。自动模式下,将发送数据写入发送缓冲区后,系统会自动控制发送;手动模式下,需要发送开始控制码0x40,随后系统执行发送命令。
2 ARINC429总线监控系统设计
2.1 系统设计架构
系统设计结构如图3所示。
图3 系统设计结构图Fig.3 System design structure diagram
监控系统由2路ARINC429数据接收通道、1路发送通道、HI-3593数据收发控制模块、ARM处理器、电源管理模块、可视化监控界面、阿里云远程监控平台组成,可实现近端和远端同时数据数据采集、解析、分析功能。
2.2 系统硬件原理图
系统设计采用模块化设计准则。系统硬件连接如图4所示。
图4 系统硬件连接图Fig.4 System hardware connection diagram
系统硬件包含四大模块:主控模块、HI-3593模块、WiFi模块、电源管理模块。HI-3593核心转换模块需要外部晶振。本文采用4 MHz有源晶振,采用4分频产生系统所需1 MHz采样时钟。其次,还需要两个外接电容实现单3.3 V电源转换为ARINC429总线协议所需要的正负6.5 V输出电平信号。WiFi模块采用ESP8266WIFI,其抗干扰能力强、传输可靠、功耗低。电源管理模块包括锂电池充电模块、充放电保护模块、过热保护模块、升压模块。
2.3 系统软件设计
2.3.1 数据采集板软件设计
本文采用stm32f103c8t6控制器控制HI-3593数据收发器的工作状态。系统数据接收模式为中断接收。当接收通道完成数据接收后,对应的中断接收标志位就会产生一个低脉冲信号作为中断源,控制器开始读取缓冲区的接收数据。HI-3593软件设计流程如图5所示。
图5 HI-3593软件设计流程图Fig.5 HI-3593 software design flowchart
2.3.2 监控端数据解析
飞机上的ARINC429总线数据一般采用自定义编码方式传输,因此数据解析也要按照飞机数据传输标准解析表去解析。ARINC429总线数据量较大,传统的单协议解析方式无法满足多种类飞机信息解析需求[9]。因此,采用接口控制文档(intrerface control document,ICD)数据文档解析方式,可直接将飞机厂家生产厂家的飞机数据传输标准导入ICD数据库,每次根据LABLE号查找对应解析ICD进行数据解析。本文以ARJ21飞机控制系统中的空气温度传感器数据采集为例,数据解析表如表1所示。
表1 数据解析表Tab.1 Data analysis table
数据查找读取解析文件程序代码如下。
string connString = "server=localhost;database=arinc429;uid=admin;pwd=123456";
MySqlConnection conn = new MySqlConnection(connString);
conn.Open();
string sql = "select 211 from LABEL";
List
MySqlDataReader readdate;
MySqlCommand mysqlcom = conn.CreateCommand();
mysqlcom.CommandText = sql;
readdate = mysqlcom.ExecuteReader();
for(int i=0;i<22;i++)
{
mysqldata.Add(readdate.GetString(i));
}
3 结论
本文实现了对ARINC429总线数据收发系统的设计。首先,设计了基于HI-3593集成芯片的数据收发电路,实现了多种ARINC429数据通信速率兼容接口。其次,采用简易化模块使用配置,可直接通过上位机实时修改模块工作模式、状态,并自动保存。最后,设计了近端和远端可视化监控界面对ARINC429总线节点数据实时数据采集、解析、分析功能。数据解析采用ICD接口文档方式,可解决不同节点数据格式不同难题,提高解析结果正确性和可靠性。 小型化、模块化、低功耗的设计,可使该系统灵活应用于工厂化测试。