基于B/S架构的便携式航空总线测试仪设计
2022-10-19李可纯王彦翔崔海青
李可纯,王彦翔,崔海青
(1.天津市普迅电力信息技术有限公司,天津 300000;2.中国民航大学,天津 300000)
0 引 言
ARINC429总线规范是美国航空电子工程委员会于20世纪90年代提出的,规范罗列了航空电子设备和相关系统之间数字信息传输的要求。在当前的航空工业中,ARINC429总线规范的应用范围十分广泛,尤其在现代民用飞机上,几乎所有知名度较高的民用飞机都采用了ARINC429总线规范,包括空客A320/A310,A330/A340,波音B727、B737、B747、B757、B767,我国大型国产客机同样采用了ARINC429总线规范。
1 测试仪设计原理
1.1 ARINC429总线规范
ARINC429总线是一种串行标准总线,是面向接口的单向广播式传输总线,该总线只有一个发送器,但允许有至多20个接收器。总线以差动输出的对称平衡方式工作,采用双绞屏蔽线异步传输方式传输数据,通过标志码区分设备和信号名称。ARINC429总线通信的关键组件是接口卡,其接口卡的设计有2个关键点:第一,如何方便地连接实现发收模块,需要分析比较所有可能的拓扑结构,选择其中最经济、有效的连接拓扑。第二,如何保证发收数据的高效率发送和正确无丢失接收,一般需要采用FIFO缓存和中断相结合的方式处理。
1.2 ARINC429总线数据规范解析
ARINC429总线通信通过带有奇偶校验的32位信息字进行,采用双极性归零码三态调制编码方式,调制信号有3个状态,分别是高、零、低。图1为双极性归零码波形。
图1 双极性归零码
ARINC429总线协议是简单的点对点串行传输协议,基本数据单元为32位数据字,包含5个部分,分别为P:奇偶校验位;SSM:符号/状态位;DATA:数据位;SDI:源/目的识别位;LABLE:标号。LABLE是信息识别符,用以识别信息类型。ARINC429的标准速率有高速模式和低速模式,分别是 100 Kb/s和 12.5 Kb/s。图 2 为 ARINC429 格式。
图2 ARINC429基本格式
1.3 B/S架构
我们所使用的B/S架构在实际应用中属于对浏览器服务模型的建构,该框架模型是在互联网技术的实际应用下而产生的,在实际应用中,也可以将B/S框架看作是对C/S架构的发展和完善。在此框架下进行的相关操作,要求后台运行人员必须通过Web页面进行,并通过登录浏览器实现授权。在B/S架构中,网络上分布着各类节点,这些网络节点可以分为浏览器端、服务器端和中间件,节点与节点的交互成为完成系统各项功能任务的关键。得益于B/S架构的分布特征,其框架下的应用程序具有开发简单、交互性强等特点,并且在共享性和维护性方面也具备一定优势。B/S架构的优势不仅于此,由于B/S架构内应用程序数据会存放于数据库服务器,客户端并不保存任务业务相关数据,因此在数据安全方面也有着得天独厚的优势。
2 测试仪设计与实现
2.1 硬件设计
测试仪的主要硬件构成是一个能够实现数据字协议转换的电路板,将符合串口通信规范的数据字转换成ARINC429规范数据字。电路板可选择USB接口或TTL串口,USB接口在PC端的显示为CH340串口,有2条通道,一路为发送通道,一路为接收通道。电路板指示灯有3个颜色,分别为蓝、绿、红,分别代指速率高低、发送状态及接收状态。USB接口选用TypeC规范接口。图3为硬件实物。
图3 硬件实物
2.2 软件设计
本文的软件设计主要包括2个部分,一是基于B/S架构的航空总线测试仪的用户页面及航线可更换单元(Line Replaceable Unit, LRU)页面部分,二是用来接收和发送数据的后台通信接口程序。
2.2.1 用户页面及LRU页面
用户页面的作用与传统航空总线测试仪相同,为用户提供操作数据发送与接收的平台。LRU页面主要用于模拟LRU功能并进行数据传输。由于LRU范围很广,并具备不同功能,因此LRU页面也可对应开发多套,本文以常用组件ADF为例进行设计。
网页版用户页面和LRU页面通过HTML5编写,利用HTML5所编写的程序可以通过浏览器在移动设备中随时随地打开,并通过IP地址访问网页,也可以通过特定的IP和编写的后台通信接口服务程序相互通信,发送或接收信息。此种方式可以达到分离仪器设备控制端与信号输出端的效果,且无场地限制,可以适应多种工作环境。同时,根据需要可以通过后台通信接口程序对网页的接收、发送数据进行检测,对LRU页面发送的数据进行测试等。图4为用户页面,图5为LRU页面。
图4 用户页面
图5 LRU页面
2.2.2 后台通信接口服务程序
后台通信接口程序采用C语言编写,主要功能是通过程序将网页端数据字传输至数据字协议转换电路板,并接收电路板数据,即起到底层通信的作用。用户通过输入端口序号和服务端口号进行设备链接。后台接口程序在接收到从网页传输来的字符串后,首先将这些信息保存至本地,再将字符串依据429数据字格式进行解码,并计算出标号位、奇偶校验位,状态位、源/目的识别位等信息,有效数据按照BCD或BNR的方式解码。同样,接口程序也可完成标准429数据字转换为字符串的操作,并进行有效的数据传递。
3 测试与分析
3.1 测试方法
航空总线测试仪整体测试需要通过软硬件结合的方式进行。首先检查网页页面的结构和按钮功能性,然后测试移动端和页面之间的接口协议,检查服务器端口连接,确定接口程序能否与端口相互连接。当确认所有软件都能互相通信后,进行硬件连接,选择与后台通信服务程序相对应的端口,测试429数据转换电路板能否接收到数据或者发送给浏览器的数据是否可以正常显示,接收到的数据以及发送的数据是否能够按照后台通信接口程序要求在对应的窗口正常显示。
3.2 通信测试
通信测试是检查航空总线测试仪能否正常工作的核心内容。将网页内数据发送至429转换电路板,建立与后台通信接口程序之间的通信,即测试移动端页面与硬件之间的交互情况以及它们之间的数据通信。图6为多行接收数据测试。图中左侧为有效发送数据,右侧为有效接收数据,发送频率为 200 ms/次。
图6 多行数据接收
测试表明,移动端和后台通信接口程序的通信正常,可以通过接口程序向429数据协议转换电路板传输正确的十六进制数据。图7所示为硬件电路板发送数据测试,经过后台通信接口程序的转换,将要发送的数据转换成十六进制数据显示在移动端。
图7 数据发送
4 结 语
本文详细分析了ARINC429规范,并基于C/S架构设计了一种便携式航空总线测试仪,通过HTML搭建了用户页面和LRU页面,实现了航空总线测试仪控制端与信号输出端的分离,将局限于固定空间的传统测试仪改进成可以在实验室、车间、内场等不同工作环境使用的仪器,同时也可以通过开发配套LRU页面实现航空总线测试仪的通用。