一种进路状态判别处理器的设计及实现
2021-08-17党梦茜
党梦茜
在轨道交通运行线路中,信号设备对于保障线路安全发挥着重要作用。其中计轴设备是通过检测区段占用/空闲状态来保证列车运行安全[1]。基于现有的计轴设备,本文提出了一种在进路首末端配置计轴点进行列车进路占用检查的模式,该模式可明显降低投资成本和人员维护成本。另外,针对现有的计轴器通常采用继电器输出进路状态(进路占用/空闲状态),无法直接与联锁实现数据安全通信的问题,设计了一种进路状态判别处理器,通过该处理器计轴设备能够将进路状态编码后输送至联锁,从而实现与联锁系统之间的数据安全传输。
1 需求分析
1)实现进路判别及处理。进路状态判别处理器接收到计轴器传递的进路状态(占用/空闲)信息后,先与联锁输入的进路选择信息、道岔定/反位状态进行一致性校核,再将列车进路空闲或占用状态传递给联锁。
2)实现数据安全传输。遵从RSSP-I安全通信协议,进路状态判别处理器与联锁通过网口进行双向数据安全传输。
3)实现设备工作状态监测。将进路状态判别处理器的设备运行状态通过网口传递至集中监测,便于工作人员了解设备运行状况。
2 设计方案
进路状态判别处理器设计结构见图1,主要由电源模块、主控模块和监测模块构成。其中:电源模块主要将24 V电压转换为3.3 V电压,向主控模块和监测模块供电;主控模块作为核心模块,主要实现进路判别及处理功能,并遵从RSSP-I安全协议,与联锁实现双向数据安全传输;监测模块是集中监测和进路状态判别处理器的一个接口单元,将设备运行状态发送至集中监测。
2.1 电源模块
如图1所示,电源模块主要由24-5 V电压转换电路、负载开关电路、5-3.3 V电压转换电路构成。24-5 V电压转换电路将24 V电压转化为5 V电压,输入至负载开关电路;负载开关电路采用3个完全相同的具有热关断保护功能的单通道负载开关TPS22810,可避免元器件结温过高,确保元器件处于安全工作区域[2]。负载开关电路将5 V电压分3路送至5-3.3 V电压转换电路,转换为3路3.3 V电压,对于主控模块和监测模块供电。
图1 进路状态判别处理器设计结构
2.2 主控模块
主控模块采用冗余设计,包含2个结构、功能完全相同的硬件模块,每个模块主要包含主控CPU模块、W5500网口芯片模块和通信状态展示模块。
2.2.1 主控CPU1/2
主控CPU1/2模块是主控模块的核心电路模块,均选用STM32F407VET6芯片。主控CPU1/2模块电路主要包含电源、调试下载电路、启动方式选择电路、晶振电路、复位电路,这些电路结合主控CPU1/2芯片称为一个最小系统[3],从而保障CPU正常工作。
2.2.2 基于W5500网口芯片的数据通信
W5500与主控CPU(主机)连接见图2,有MOSI、MISO、SCLK、SCSn 4路信号[5]。MOSI代表主机输出,W5500输入;MISO代表主机输入,W5500输出;SCLK接收主机的SPI时钟信号;SCSn为片选信号。主控CPU芯片通过W5500网口芯片和联锁进行双向通信[5]。
图2 主控CPU和W5500连接图
2.2.3 通信状态展示模块
主控CPU与SN74HC245DW缓冲器连接,输出CPU工作状态至多个LED指示灯。工作状态包含CPU工作/故障状态、接收/发送数据状态、与监测CPU芯片通信状态等。
2.3 监测模块
通过串口通信方式接收主控CPU1/2发送的主控模块运行状态,并将主控模块与监测模块的运行状态通过W5500网口芯片送至集中监测。如图1所示,监测模块主要由监测CPU3、TF卡模块、W5500网口芯片3及通信状态展示模块组成。其中,监测CPU3采用和主控模块相同的CPU芯片,与CPU1/2进行通信;TF卡模块可在卡槽内插入,方便修改系统内部实现逻辑,从而适应不同场合的功能需求,提高设备的利用价值;W5500网口芯片将主控CPU传递的数据信息发送至集中监测,输出的数据信息包括进路状态、通信状态、CPU故障/工作状态等;通信状态展示模块将监测CPU3和主控CPU通信状态、监测CPU3工作/故障状态等,通过缓冲器输出至LED进行显示。
3 软件实现
软件实现分为主控模块软件和监测模块软件2部分,主函数实现流程见图3。
图3 软件主函数实现流程
1)进入主函数main()进行初始化配置。首先对系统进行初始化配置,配置完成后开始进入while(1)循环,对于W5500端口进行初始化配置。
2)W5500接收数据。判断端口接收到数据后,进入W5500接收数据程序。首先将接收数据指示灯点亮,再由CPU对数据进行处理,处理时需先对数据进行解码,再进行进路判别及处理。
3)W5500发送数据。发送数据前,由CPU对处理后的数据进行编码,再由W5500发送数据程序发送数据,并点亮发送数据指示灯。
3.1 主控模块软件
3.1.1 基于RSSP-I协议的数据安全传输
随着网络通信的日趋深入,为铁路通信带来了极大的便利性和实用性,为保障信号安全设备互联互通,必须采用统一的接口和协议[6]。本文将RSSP-I协议应用于进路状态判别处理器和联锁之间的数据安全通信。RSSP-I协议具有6种安全防御技术:序列号、时间戳、超时、源标识、反馈报文和双重校验,可对应解决封闭式网络中的通信威胁,保障数据通信安全[7-8]。
当主控CPU通过W5500接收数据后,首先需对接收到的报文进行安全校验,通过后才可对数据进行处理。图4为接收数据安全校验流程。首先对报文头、尾进行有效性检查,有误直接丢弃;然后再对报文中的安全校验域进行检查,包括序列号校验和双通道安全校验码(SVC)校验。序列号校验用于判断报文是否有序,SVC校验可保障数据传输安全性,序列号校验或SVC校验其中之一有误,则需要进行时序对齐校正[8-9]。
图4 接收数据安全校验流程
当主控CPU通过W5500发送数据前,先对数据进行编码,生成发送报文。发送报文包括报文头、安全校验域、用户数据包、报文尾4个部分。其中,报文头包含报文类型和源目标地址;安全校验域包含序列号、安全数据长度、安全校验通道SVC_1和SVC_2;用户数据包即需要传输的数据;报文尾CRC16,根据报文头、安全校验域和用户数据包生成。
3.1.2 进路判别及处理功能实现
图5为进路判别及处理功能实现流程图。
图5 进路判别及处理功能流程
1)计轴器输出进路状态(空闲/占用)给进路状态判别处理器,如果进路空闲则进入(2);如果进路占用,则直接输出进路占用状态至联锁。
2)判断是否已选择进路。如果未选择进路,则直接输出进路空闲状态至联锁;如果已选择进路,则进入(3)。
3)判断选择进路选择信息和道岔的定/反位状态是否一致。如果一致,则将进路空闲信息传递给联锁;如果不一致,则将占用信息传送给联锁,保障进路状态输出符合“故障导向安全”原则[10]。
3.2 监测模块软件
监测模块软件主要是将设备工作/故障信息、进路状态等输出至集中监测。监测模块通过监测CPU接收主控CPU1/2传递的数据信息,并通过W5500发送数据程序将数据信息通过网口传递给集中监测。
4 结论
本文提出的进路状态判别处理器计划在成都某条旅游线路进行试验,能够基于RSSP-I协议实现其与联锁之间的数据安全通信,接收联锁发送的进路选择信息和道岔状态信息,并进行一致性校核,对于保障列车运行安全具有重要作用。