赵 科
(大连交通大学 电气信息工程学院,大连116028)
随着列车网络控制技术的快速发展,用户对总线灵活性、开放性以及实用多样性等方面提出了更高要求。 因此,需要引入具有不同特点的列车现场总线技术, 以实现不同总线间的数据交换和传输。国内外TCN 总线技术虽已成熟,但由于国外厂商占据了大部分TCN 设备市场, 使得国内TCN 总线的使用成本很高[1];国内较多研发使用CAN 总线的列车车载设备,且考虑到CAN 总线技术的研究较成熟,CAN 总线设备的成本远低于TCN 设备, 在实际应用中可以将CAN 总线设备接入车辆总线,因此产生TCN 与CAN 数据交换的问题[2]。 在此背景下,提出对TCN-CAN 网络通信测试的研究就尤为重要[3]。TCN 网络主要用于列车通信,在列车运行时,能够高速的传输实时数据,但TCN 网络设备成本较高且适用范围有一定的局限性,而CAN 总线的设备成本相对较低,并且由于其适用范围广,可靠性高和实用性好等特点,在铁路上得到了很广泛的应用。 通过深入分析TCN 总线和CAN 总线相关理论知识,顺应TCN 与CAN 技术的发展趋势, 为其他总线网络与TCN 网络间通信原理研究提供理论基础。本文旨在解决列车实际运行中TCN 网络和CAN 网络间往来数据传输的问题, 为通信网络领域中TCN 与CAN 总线技术的进一步研究提供可靠参考,对我国轨道列车中总线网络使用的多样性与广泛性起到促进作用。 一定程度上为推动国内列控技术的发展提供动力,也为多种列车总线通信产品联合运作增加可能性。TCN-CAN 网络通信实验平台的设计与实现,为我国列车通信设备开发提供技术支持,推动我国列车通信总线的多元化发展。 列车TCN 与CAN 网络通信技术的研究,在理论分析和实际应用上均具有深远意义。
TCN-CAN 网络通信技术就是将TCN 通信网络和CAN 通信网络直接通过VCU(中央控制单元)对这两个网络的数据进行相互转换,TCN-CAN 网络通信测试平台整体结构如图1 所示。 该测试平台包括TCN 通信和CAN 通信两部分。 采用装有CANopen主站板卡和从站板卡的工控机搭建CAN 通信测试平台;利用司控台、中央控制单元、远程I/O 模块、司机显示单元和网关来搭建TCN 通信测试平台。TCN-CAN 网络通信测试平台实现TCN 总线数据与CAN 总线数据互联互通。 机架1 和机架2 分别模拟列车的两组动力单元, 各自均采用MVB 车辆总线通信; 两动力单元之间通过网关进行数据交互,实现WTB 列车总线与MVB 车辆总线的数据转换。机架3 和机架4 模拟列车上的CAN 设备, 机架3 代表CAN 主控设备, 通过VCU 与车辆的MVB 数据进行交互; 机架4 代表普通CAN 设备或待测的已开发CAN 设备,通过CANopen 协议与CAN 主设备通信。
在TCN 通信网络中,通过操作司控台发出相关操作命令, 通过远程I/O 模块进行信息采集后并送到MVB 总线上,VCU 对接收的数据进行逻辑处理,发送给司机显示单元显示列车相关信息,同时发送给网关,网关收到数据后,利用过程数据编组配成对应的报文出境至WTB 总线, 再从宿网关形成入境包至相应的MVB 总线上[4]。
图1 TCN-CAN 通信测试平台拓扑Fig.1 Communication test platform topology of TCN-CAN
1.2.1 司控台
司控台是司机与MVB 系统对话的操作平台,主要包含司机操作控制列车运行的开关、 按钮等;提供列车运行状态的仪表、指示灯、蜂鸣报警器等;提示相关操作动作的司机室显示单元等。
1.2.2 远程I/O
列车远程I/O 是高度灵活的远程输入输出模块化控制单元, 能够通过硬线采集数字量和模拟量,在列车网络控制系统中有着很重要的地位。 远程I/O 模块一般作用于中央控制单元与列车上的其他设备之间, 实现中央控制单元与其他设备通信的功能。当其他设备发出信号时,远程I/O 模块能够通过硬线对第三方设备内部的寄存器信号进行采集,将采集到的信号直接发送到中央控制单元,中央控制单元通过软件设计对接收到的信号进行相关的逻辑处理,逻辑处理完成后,总线上的其他设备将接收到新的控制信号进行后续操作。 I/O 系统由中继模块、控制单元、背板和不同类型的I/O 模块组成。本文测试平台采用了16 路数字量输入单元(DI)以及8 路的模拟量输入单元(AI)。
1.2.3 中央控制单元
本平台中央控制单元(VCU)采用捷克UniControls 公司的产品,该VCU 采用嵌入式Linux 操作系统,具有高速计算性能,可以高速有效的执行控制算法。 VCU 具有丰富的接口单元,包括MVB、CAN、RS232、RS485、RS422 等接口。具有专用微控制器进行通信的协议栈,增强了冗余设计的可行性及有效性,具有2 个10/100 Mbit 的高速以太网接口。 中央控制单元机箱由双冗余的CPU 模块、 冗余控制模块、电源模块和背板五个部分组成[5]。
CPU 模块采用低功耗MPC5200 嵌入式处理器,主频达到396 MHz,在恶劣工作环境下处理速度可达760 MIPS, 配置256 MB 同步动态随机存储器和1 Mb 的磁性随机存储器,能够同时处理复杂逻辑运算的关键任务,还有指令和数据存储器管理单元,具有临界中断的能力[6]。 冗余控制模块用于热切换备用CPU 模块,当冗余模块通过看门狗信号监测到主CPU 发生故障, 会切换备用CPU 模块代替主CPU 工作。 电源模块提供两路独立的稳压电源,可以输出24DC、48DC、72DC、110DC 满足不同的设备需要。 背板模块不仅可以固定和连接其他各模块通信外,还可以起到物理屏蔽的作用,有效地减小共模干扰。
1.2.4 UIC 网关
网关实现不同总线网络之间的协议转换,该平台采用符合UIC556 标准的捷克UniControls 公司生产的UIC 网关, 实现列车级总线WTB 消息数据的传输功能。 列车级WTB 总线与车辆级MVB 总线之间通过网关实现消息数据转换与传输。 由于在MPC5200@396 MHz 主处理器以及WTB 和MVB 通信接口的支持下,UIC 网关可以实现MVB 总线与WTB 总线之间信息的传输过程中的路由选择功能。与此同时,PC 机能够通过UIC 网关同样配备最大传输速率为115200 b/s 的RS-232 接口,利用相应的软件对网关进行配置[7-8]。 本平台采用冗余配置的网关单元,安装在同一机箱内的2 个网关通过冗余控制单元进行冗余切换,默认情况下一网关处于激活状态,另一网关处于热备份状态,最大程度提高了列车通信网络的可靠性和稳定性。
1.2.5 司机显示单元
司机显示单元采用Unicontrol 公司的DISPL-Q显示屏,该显示屏为10.4 寸的触摸显示屏,可以实现多国语言切换和亮度调节等功能, 支持MVB 接口、CAN 接口、RS485/232/422 接口和以太网接口[9]。显示屏硬件主要由400 Mhz MPC5200B 处理器、400 Mhz 图形处理器、64 MB 图形存储器、256 MB 主存储器、32 MB 闪存和1 GB 微型快擦写存储卡组成。通过在Linux 嵌入式系统中开发应用程序,HMI 能够实现密码设置、数据收发,列车信息监视、故障情况显示和更改参数设置等功能。 显示屏工作温度范围-30 ℃~+70 ℃、电压范围DC24~110 V、功耗20 W~63 W 具有IP54 的正面防护等级,非常适合列车的恶劣工作环境。
CANopen 主站支持SDO 客户端[10],能够收发周期和非周期PDO,最多可以支持32 个节点,每个节点可以实现4 个RPDO 通信和4 个TPDO 通信。CANopen 主站板卡主要由ARM7 CPU、存储器、CAN收发器、串口收发器和PCI 总线桥接芯片构成。CPU采用ARM Cortex-M 系列的16 位/32 位微处理器LPC2378FBD144 芯片,具有512 kb 高速闪存空间、支持以太网链路层通信、支持CAN 链路层通信;主控CPU 集成CAN 链路层数据收发模块,采用CTM8251T 芯片扩展CAN 的收发器和隔离模块,该芯片采用全灌封工艺技术使芯片内部的收发和电气隔离电路提高抗电能力,提高芯片使用寿命。 该接口芯片完全符合ISO11898 标准,传输速率达到1 Mbit/s,可以至少连接110 个节点[11]。 CANopen 主站板卡串口收发器选用SP3232EE 芯片, 该芯片满足EIA/TIA-232 和V.28 和V.24 通信协议。PCI 桥接芯片低成本、低功耗、高性能PCI9052 总线接口芯片,通过该芯片可以使多种局部总线快速转换到PCI总线上,通过工控机PCI 接口实现与上位机应用程序交换数据。
关于TCN 网络数据收发、CAN 网络数据收发及TCN-CAN 数据转换的程序流程图如图2 所示。在TCN 总线中,通过软件CSS 配置网关设备,实现MVB 协议与WTB 协议之间数据转换;HMI 软件程序设计实现图像化显示。 在CAN 通信网络中,通过在工控机上编写QT 上位机程序,实现CANopen 主站板卡和从站板卡的通信, 实现与VCU 的CANopen 通信。 由于篇幅所限,以上三部分程序设计不再赘述。
TCN-CAN 网络数据通信流程如下:
图2 TCN-CAN 数据通信流程图Fig.2 Data communication flow chart of TCN-CAN
(1)通过建立网络拓扑把TCN-CAN 网络的各个设备连接起来, 实现TCN-CAN 网络通信实验平台设备之间的通信。 具体操作为:在MVB 总线上,将VCU 与HMI 和I/O 单元等设备连在一起,在CANopen 总线上将VCU 与CANopen 主站板卡连在一起。
(2)通过Unicap 软件对实体I/O 系统设置远程I/O 的拓扑结构。
(3)根据数据流分配I/O 信号,通过MVB 接收块将数据接收到MVB 总线上, 在接收到司控台发出相应信号的同时,VCU 可以将此信号通过MVB总线发送给HMI 进行显示。
(4)通过VCU 的CANopen 发生模块实现MVBCANopen 数据转换并转发。 例如VCU 通过TPDO模块发送数据,并设置COB-ID,利用CANopen 主站板卡的上位机程序监视VCU 发送的TPDO 数据;接下来设计RPDO 模块,接收CANopen 主站板卡发送给VCU 的RPDO 数据,设置COB-ID、刷新时间等,通过监视模块对采集到的数据进行在线监视。
(5)初始化CANopen 主站,添加从站并启动CANopen协议栈,CAN 数据收发并上位机程序显示。
VCU 到CAN 设备的通信测试例程:CAN 通信网络接收到MVB 数据如图3 所示, 通过对数据进行解析,当发送司机室激活信号时第一字节的第一位发生跳变,数据为“0000 0001”;当在司机室激活时发送门开信号,第一字节的第一位和第二位发生跳变,数据为“0000 0011”;当在司机室激活时发送空调制暖信号,第一字节的第一位和第三位发生跳变,数据为“0000 0101”。 通过图3 可以看出,CAN网络接收到数据的第一个字节十六进制数分别为“01”,“03”和“05”,上位机显示接收的数据正确。
图3 CAN 通信网络接收到MVB 数据Fig.3 CAN network receives MVB data
CANopen 主站到VCU 的通信测试例程:CANopen 主站板卡作为主站通过PDO 向从站VCU发送0~255 的循环数据, 通过Unicap 软件对VCU程序进行在线监视。 TCN 通信网络接收到CAN 数据如图4 所示,VCU 的RPDO 模块接收到CANopen主站板卡发送的PDO 数据为“135”, 验证了TCNCAN 网络通信测试平台能可靠地实现CAN 数据向TCN 数据的转换。
通过双向测试, 测试结果验证了TCN-CAN 网络通信测试平台设计的正确性,数据转换和传输的可靠性。
图4 TCN 通信网络接收到CAN 数据Fig.4 TCN network receives CAN data
本文设计TCN-CAN 通信测试平台,用于TCN数据和CAN 数据的双向通信,并分别进行了TCN 网络通信测试、CAN 网络通信测试和TCN-CAN 网络通信测试。 测试结果表明该平台可以实时、 可靠地完成数据通信和转换, 解决了在列车通信异构组网中TCN 数据和CAN 数据的通信问题, 也推动了国内对具有CAN接口的列车车载设备开发进程。