21世纪初,随着B787、A380和F35的升空,多电飞机乃至全电飞机已经成为飞机设计的热点和发展趋势[1]。多电化趋势使飞机用电量不断攀升,飞机配电系统的重要性愈发突出[2, 3]。随着航空技术、计算机技术和总线技术的高速发展,飞机配电系统已经由传统的集中配电方式转为现代更高效的分布式自动配电方式 [4],大大降低了电网重量,提高了配电系统的自动化程度和可靠性。要实现飞机分布式自动配电,需要利用通信总线将指令发送到连接用电设备的远程配电组件或者电气负载控制组件中,同时将用电设备的状态反馈到驾驶舱中。相比传统飞机,多电飞机供电网络复杂,通讯节点和传输信息总量都大大增加,对通信总线的可靠性、数据传输速度和实时性等特性提出了更高要求[5]。
传统机载总线如ARINC429总线和1553B总线的数据传输速率不够高,很难满足现代飞机需求。飞机作为安全关键类控制系统需要采用更高速的时间触发和串行传输相结合的工作方式的总线[6]。目前典型的串行时间触发总线包括:ARINC659总线、FlexRay总线、TTCAN总线和C类时间触发协议(Time triggered protocol /class C, TTP/C)总线。文献[7]对这4种总线进行了对比,结果表明TTP/C是严格的时间触发方式,安全性高、开发难度适中。文献[4]中对现代飞机自动配电系统中常用的CAN、TTP/C和AFDX3种总线进行了分析:CAN总线带宽低主要用于低成本和速率要求不高的控制场景;AFDX总线带宽高但结构复杂成本昂贵;TTP/C总线采用时分多址(Time divi sion multiple access, TDMA)访问方式,具有非常高的确定性和可靠性,数据传输速率可以达到5 Mbps(低速)或25 Mbps(高速),数据传输速度快,成本适中。
目前,TTP/C总线以速率高、实时性好和可靠性高的特点受到了航空领域的广泛关注和研究。国外,TTP/ C总线已经被用于B787环境控制系统、A380座舱压力控制系统和Honeywell公司开发的模块化航空控制器MAC中[5]。国内,TTP/C总线的研究大多处于理论研究或基本的仿真试验阶段[7]。
鉴于TTP/C总线的安全性高、实时性好和传输速度快的特点,本文提出开展多电飞机配电系统中的TTP/C总线应用技术的研究,以提高多电飞机配电系统各部件之间信息交换的快速性,实现配电控制的实时性。
1 TTP/C协议简介 1.1 网络架构T TP/C是一种基于新型的适用于分布式实时系统的总线协议,由维也纳理工大学和TTTech公司共同开发。
一个典型的TTP/C总线网络架构如图 1所示。TTP/C网络包括两个冗余通道(通道0和通道1,或称为通道A和通道B),通道上连接了若干节点,节点之间采用广播的方式进行通信[8]。节点和双通道共同构成了TTP总线。所有节点构成了一个TTP/C集群,一个集群最多可以包括64个节点[9],可以配置为总线型或星形拓扑结构。
![]() |
图 1 TTP/C总线网络架构 Figure 1 TTP/C bus network architecture |
一个典型的节点由主机、通信网络接口(CNI)和控制器组成[10]。节点的核心是TTP控制器,包括:(1)通信网络接口CNI:一个双口存储器,用于与主机交换数据,起临时防火墙的作用;(2)消息描述列表MEDL:网络在数据通信之前,用户根据系统设计要求来制定M EDL表,所有节点的MEDL表组成了唯一的一个系统设计方案;(3)总线保护器:确保TTP控制器的故障不传播到网络;(4)协议控制器状态机:TTP/C协议控制器的不同状态在节点运行过程中能进行转换。
1.2 时间触发方式TTP/C总线基于时间触发协议是绝对时间同步,由一个时间主站周期性地向每个节点广播时钟基准消息,标志着一个消息交互系列开始。节点接收到后立即初始化内部计时器。计时器按照基准消息时刻对本节点时间进行设置或调整来实现时间同步。计时器记录的一个全程时间为一个周期时间[11]。
TTP/C采用TDMA技术,一个集群有若干TDMA周期(Round),每个Round通过不同时隙(Slot)给节点发送信息。因为全局时钟机制,所有节点通信不存在冲突的情况,并且系统具有很高的时间确定性。同时TT P/C总线也是一个容错系统。
2 多电飞机TTP/C总线通信网络多电飞机供电系统配电箱图如图 2所示。电网包括4台主发电机(L1,L2,R1,R2),2台辅助发电机(LAPU,RAPU),1台应急发电机(RAT)和9个配电箱等。系统供电电压包括AC230 V,AC115 V,DC±270 V和DC28 V。配电箱的作用是将发电机产生的电能传输并分配到各个用电设备,其中,P001, P0 02和P009是AC230 V供电部分;P007和P008是DC±270 V供电部分;P005和P006是二次电源供电部分;P003和P004是AC115 V和DC28 V供电部分。汇流条功率控制器(Bus power control unit, BPCU)接收配电箱状态信息(P003, P004, P005, P006, P007, P008),并发送控制信号进行电网管理。多电飞机供电系统功率网络庞大,BPCU管理的电气部件数量多,控制逻辑复杂。
![]() |
图 2 多电飞机供电系统配电箱图 Figure 2 More-electric aircraft power supply system distribution box diagram |
本文以多电飞机配电系统为对象,提出利用TTP/ C总线实现分布式自动配电系统通信的应用方案。TTP/C总线连接5个节点,即航电系统仿真机、BPCU1, BPCU2, BPCU3, BPCU4,如图 3所示。
![]() |
图 3 双余度TTP/C总线连接5个节点 Figure 3 Dual redundant TTP/C bus connection of five nodes |
BCPU1和BPCU3作为总线的2个节点,将实现两台BPCU之间的信息交互,实现BPCU对配电系统的管理功能。BPCU2和BPCU4之间传输的数据包括:汇流条状态、地面电源状态、接触器状态、二次电源状态、控制信号等数字量。BPCU2和BPCU4可以实现其他通信网络和TTP/C总线通信网络之间的通信转换和传递功能,例如分配到每个具体负载的通信网络,如果对传输速率要求不高可以采用技术更加成熟价格相对便宜的CAN总线进行替代。航电系统仿真机通过TTP/C总线可以传输飞机电网中的一次电源状态、汇流条状态、二次电源状态、接触器状态、负载状态等数字量及模拟量。
通信传输过程中为了保证数据传输的可靠性,利用TTP/C总线特性将每一个节点的数据通过广播方式发送到其他所有节点。TTP/C时间节点规划如表 1所示,依据节点规划表利用配置工具生成相应的MEDL表等配置文件。所有节点的MEDL表组成了唯一的一个系统设计方案。
![]() |
表 1 TTP/C总线时间节点规划 Table 1 TTP/C bus time node planning |
3 TTP/C总线软件实现 3.1 调用动态链接库
本系统中实现T TP/C总线通信的5个节点的软件环境有两类:(1)BPCU部分是基于Vxworks实时操作系统,利用C语言环境编程;(2)航电系统仿真机是基于Windows操作系统,利用LabVIEW编程。
调用动态链接库是实现TTP/C总线通信的软件编程基础[12]。TTP/C通信板卡驱动程序接口函数按照ANSIC标准编写,表现为动态链接库DLL形式,支持多种调用方式,包括Vis ual C++, LabVIEW以及Labwindows/CVI等。
BPCU程序中涉及TTP/C总线的C语言开发部分,依托于动态链接库提供的头文件、静态库文件和动态库文件。工程中直接使用提供的头文件和拷贝的动态链接库文件,节省了开发成本和周期,便于单独修改以满足不同系统的使用要求。
航电系统仿真机主程序涉及TTP/C总线的LabVIEW语言开发部分,利用了LabVIE W库目录下对应的板卡动态链接库文件夹。此文件夹直接复制到LabVIEW的“user.lib”文件夹,编程时搜索相应的子程序,依照LabVIEW编程原则搭建TTP/C总线数据传输程序,能够简化编程过程,进一步突出LabVIEW编程数据流的特点和优势。
3.2 编程流程根据开发环境和编程语言的不同,TTP/C总线的软件编程分为两类:BPCU部分的C语言编程和航电系统仿真机的LabVIEW语言编程。两种编程的总体流程类似,如图 4所示,具体实现流程存在差异。
![]() |
图 4 TTP/C总线编程总体流程图 Figure 4 Flowchart of TTP/C bus programming |
PCU程序利用处理数据环节实现TTP/C总线的数据冗余。程序读取数据后,利用动态链接库函数判断两条总线的通信状态,规定A总线的优先级高于B总线,B总线作为数据备份,如果两条总线都通信失败,BPCU提示错误信息。
航电系统仿真机程序利用寄存器和缓冲区的组合来实现数据的收发操作,保证了两种不同速率部件之间的高效合作。发送数据和接收数据流程图如图 5所示,显示与外部数据交换时使用寄存器,数据内部处理时使用缓冲区。
![]() |
图 5 航电系统仿真机中关于TTP/C总线编程流程图 Figure 5 Avionics system simulation TTP/C bus programming flow chart |
3.3 偏移地址选择
偏移地址决定了TTP/C总线数据来源和走向,由系统预先设计决定,是编程时需要注意的重要因素。
本文提出的TTP/C总线通信网络连接了5个节点,节点之间数据往来复杂,根据系统预先设计的时间节点规划表可以生成对应的配置文件,配置文件标明了各个节点传输数据的偏移地址。
如图 6所示为航电系统仿真机接收数据程序编程示意图。接收数据函数的输入端连接的偏移地址为x41F4,查询配置文件可知接收的数据来自节点4BPCU2。不同的发送节点和接收节点所对应的偏移地址各不相同,确保了TTP/C总线传输过程符合系统设计,节点之间的数据传输正确有效。
![]() |
图 6 TTP/C总线利用LabVIEW编程接收数据编程示意图 Figure 6 TTP/C bus LabVIEW of receiv ed data daemon |
3.4 数据空间转换和格式转换
数据空间转换分为数据空间压缩和数据空间解压。
数据空间压缩是为了解决多电飞机配电系统状态量繁多和现实应用中TTP/C总线传输字节数有限的矛盾。多电飞机由于大量使用电能代替传统能源,用电设备增多,控制所需的各类设备状态相比传统飞机数量大大增加。利用配电系统中接触器状态、发电机工作状态、负载状态等数字量只在0/1之间变化的特点,用1位(bit)表示1个数字量,8位组成1个字节(Byte)。例如在数据空间压缩之前,传递8个电网参数需要8 B的传输空间,压缩之后只需要1 B(8 bit)的数据空间。数据空间压缩能够节省通信资源,提高传输效率,减少因为数据量大造成的通信错误,尽可能多地将配电系统电网信息传递到控制中心,有利于提高配电系统可靠性。
数据空间解压是为了解决数据空间压缩后带来的数字量处理难度增加的问题。数据空间压缩后对1 bit的1 B进行逻辑处理需要进行一系列的运算操作,增加了软件编程的难度,降低了系统运行效率。
软件编程中的数据格式转换可以解决以下3个问题:(1)为了提高效率而进行的数据空间压缩;(2)为了便于分析数据而进行的数据空间解压;(3)不同模块进行数据交互时对数据格式要求的不一致。
如图 7所示是利用LabVI EW编程的TTP/C总线发送数据的格式转化程序示意图。程序总体上由两个顺序结构组成。
![]() |
图 7 TTP/C总线数据空间压缩和格式转换示意图 Figure 7 TTP/C bus data space compression and format conversion |
第一个顺序结构用来实现对数字量的数据空间压缩。数字量处理程序主体是两个嵌套的For循环结构:内部For循环的作用是将8个数字量组合成1个字节;外部For循环的作用是保证所有数字量进行了转换。模拟量为无符号单字节整形(U8格式)。数字量处理完后与模拟量结合成一个完整的数组输出。数组中每一个元素都占1 B。
第二个顺序结构为了实现不同模块之间的数据交互,将数组元素转换成为TTP/C总线规定的传输格式。编程核心在于利用“整数拼接”函数根据传输高低位顺序将元素字节拼接成TTP/C规定格式后输出到相应数组中。
利用LabVIEW编程TTP/C总线接收数据的格式转化程序。程序的作用是将TTP/C总线接收到的数据转化成可供系统其他模块分析运算的数据格式。依次利用“数组索引”函数、“数值至布尔数组转换”函数、“布尔值至(0, 1)转换”函数,将经过数据空间压缩的数字量从位(bit)重新解压为字节(Byte),便于接下来系统其他模块对数字量进行数据选取和分析。
4 实验 4.1 通信测试运行飞机配电系统TTP/ C总线通信程序,对通信过程进行测试。
当飞机电网在地面状态时,电网正常工作,将BPC U1和BPCU3检测到的电网状态按照通信协议打包成TTP帧,送入TTP消息发送队列。待发送消息如表 2所示。
![]() |
表 2 BPCU通过TTP/C发送的消息 Table 2 Message sent by BPCU over TTP/C |
通过将BPCU程序中TTP接收数组内的消息与发送信息做对比,可以得出TTP能够正确的发送和接收BPCU检测到的电网状态,TTP网络通信正常。实验说明本文搭建的通信网络程序可以实现TTP/C总线的正常运行。
4.2 系统联试运行飞机配电系统仿真程序,进行系统联试。
系统联试的过程是:航电系统仿真机发送电网状态至BPCU工控机机箱,BPCU将控制信息反馈给航电系统仿真机,所有真实运算结果在电网图中显示。如图 8所示为所有部件正常4台主发电机投入时的电网状态局部图。如图 9所示为二次电源左自耦变压器(LATU)故障时的电网状态局部图。两张图进行对比可以看出,二次电源故障时,BPCU对电网进行了故障重构,电网中故障部件被切除隔离,相关接触器动作,利用相邻汇流条实现不中断供电,降低故障对电网运行的影响。其中,BPCU接收的电网信息和发送的控制信息都通过TTP/C总线进行传输。
![]() |
图 8 电网正常状态显示图(局部图) Figure 8 Grid normal status display (partial) |
![]() |
图 9 二次电源故障电网状态显示图(局部图) Figure 9 Secondary power failure grid state display (partial) |
系统联试结果表明本文介绍的TTP/C总线应用技术可以实现飞机配电系统中的信号传递,为电网的故障重构提供通信支持,为分布式自动配电系统的实现打下基础。
5 结束语本文针对多电飞机分布式自动配电系统,利用TTP/C实时性好、可靠性高的特点,给出了其在飞机配电系统中的应用方法。设计了多电飞机TTP/C总线通信网络,以动态链接库为基础给出了软件编程流程,研究了偏移地址选择方法、数据空间转换和格式转换方法。应用TTP/C总线构建了多电飞机实时仿真系统。实际测试结果表明TTP/C总线能满足多电飞机多节点通信的需求,实现供电系统的分布式自动配电。
[1] |
严仰光, 秦海鸿, 龚春英, 等.
多电飞机与电力电子[J]. 南京航空航天大学学报, 2014, 46(1): 11–18.
YAN Yangguang, QIN Haihong, GONG Chunying, et al. More electric aircraft and power electronics[J]. Journal of Nanjing University of Aeronautics & Astronautics, 2014, 46(1): 11–18. |
[2] |
WHEELER P. Technology for the more and all electric aircraft of the future[C]//IEEE International Conference on Automatica. [S. l.]: IEEE, 2016. |
[3] |
吴秀杰, 江鹏, 杨彬彬, 等.
基于多电飞机概念下的飞机电气发展方向[J]. 电子世界, 2014(13): 62.
DOI:10.3969/j.issn.1003-0522.2014.13.051 WU Xiujie, JIANG Peng, YANG Binbin, et al. Aircraft electrical development direction based on the concept of more-electric aircraft[J]. Electronic Wor-ld, 2014(13): 62. DOI:10.3969/j.issn.1003-0522.2014.13.051 |
[4] |
任仁良, 赵尊全, 冯建朝.
总线在现代飞机配电系统中的应用[J]. 测控技术, 2013, 32(12): 114–117.
DOI:10.3969/j.issn.1000-8829.2013.12.029 REN Renliang, ZHAO Zunquan, FENG Jianchao. Application of bus in modern aircraft power distribution system[J]. Measurement and Control Technology, 2013, 32(12): 114–117. DOI:10.3969/j.issn.1000-8829.2013.12.029 |
[5] |
陈思, 葛红娟, 杨宗翰, 等.
基于TTP协议的飞机配电系统通信仿真研究[J]. 航空计算技术, 2014, 44(6): 95–99.
CHEN Si, GE Hongjuan, YANG Zonghan, et al. Research on simulation of communication in aircraft power distribution system based on TTP protocol[J]. Journal of Aeronautical Computing, 2014, 44(6): 95–99. |
[6] |
苏罗辉, 牛萌, 刘坤.
时间触发系统体系结构研究[J]. 计算机工程与设计, 2014, 35(6): 1956–1961.
SU Luohui, NIU Meng, LIU Kun. Study on time-triggered system architecture[J]. Computer Engineering and Design, 2014, 35(6): 1956–1961. |
[7] |
张文豪. 基于Zynq的TTP/C总线控制器设计与验证[D]. 南京: 南京航空航天大学, 2016.
ZHANG Wenhao. Design and verification of a TTP/C bus controller based on zynq[D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2016. |
[8] |
HERMANN K. Composability in the time-triggered architecture: 2000-01-1382[R]. [S. l. ]: SAE Technical Paper, 2000. |
[9] |
SPITZER C R.
Digital avionics handbook:Avionics elements, softwave and functions[M]. USA: CRC Press, 2007.
|
[10] |
杨佳谞, 吴成富, 段晓军.
时间触发架构总线分析[J]. 航空计算技术, 2013, 43(4): 125–128.
YANG Jiayou, WU Chengfu, DUAN Xiaojun. Time-triggered architecture bus analysis[J]. Journal of Aeronautical Computing, 2013, 43(4): 125–128. |
[11] |
XIA Jiqiang.
Real-time and reliability aanalysis of time-triggered can-bus[J]. Chinese Journal of Aeronautics, 2013, 26(1): 171–178.
DOI:10.1016/j.cja.2012.12.017
|
[12] |
孙滨, 周杨, 郭晓东.
动态链接库技术及其应用[J]. 电脑编程技巧与维护, 2009(15): 35–38.
DOI:10.3969/j.issn.1006-4052.2009.15.010 SUN Bin, ZHOU Yang, GUO Xiaodong. Dynamic link library technology and its application[J]. Computer Programming Technique and Maintenance, 2009(15): 35–38. DOI:10.3969/j.issn.1006-4052.2009.15.010 |