论文部分内容阅读
摘 要:介绍了车载PIS一体化系统中PIS主程序的软件架构及设计方案,并结合实际项目对设计方案可行性进行了分析。
关键词:车载PIS一体化;以太网;总线负载
1 绪论
车载PIS一体化系统是将TCMS主控制程序与PIS主程序集成在一个主控制器中(VCU),连接在以太网总线上,通过VCU既能监视、控制整列车,又能实现PIS系统功能。本文件详细描述了车载PIS一体化系统中PIS主程序的开发工具、软件架构、软件组织形式和软件设计规范。本文根据实际项目数据进行以太网总线负载计算,对软件设计方案进行了可行性分析,为软件模块设计提供依据。
2 实施方案
2.1 网络架构
列车通信网络由以太网总线构成,以太网总线贯穿整列车。
一列车的两个VCU互为冗余,当其中一个故障时,另外一个将自动接替它的工作,实现无缝切换,保证PIS系统的正常运行。
TCMS主控制程序与PIS主程序在VCU设备内部实现数据交互。
2.2 开发工具说明
PIS主程序软件使用ISaGRAF 5.2版本的开发工具开发,该软件开发框架为:程序、字典、IO配线。
程序主要用于创建逻辑关系,字典用于定义各种变量,包括数据结构体,IO配线主要实现了本地变量与其他以太网设备的数据交换,首先IO配线将本地变量映射至相应协议的数据包中,在通过以太网协议将数据包发送至以太网总线,以太网协议的实现封装在底层库。
2.3 软件架构
PIS主程序的软件架构主要由三部分组成:配线端口、数据输入输出模块、逻辑控制模块。
在VCU与各PIS系统设备之间,需要建立一个以太网通讯连接。IO配线的类型主要是根据过程数据的类型进行划分的,不同的通讯协议过程数据类型不同。在使用IO配线端口时,首先要将过程数据的类型导入应用软件中,数据类型导入完成之后,配置各设备的配线端口。应用程序数据与过程数据之间存在映射的过程,从过程数据获取所有PIS设备的数据,以及将VCU中映射的数据发送给各PIS设备,这些工作都在配线端口中完成。
在数据输入输出模块中,输入是将IO配线端口的数据复制给本地变量组中,而输出则相反。PIS系统设备数据输入输出程序: P_II_HW、P_IO_HW。
PIS主程序逻辑诊断包括八个功能模块:线路信息初始化及报站功能、DACU初始化及控制功能、客室广播功能、司机室对讲功能、乘客紧急对讲功能、预录紧急语音播报功能、各功能优先级诊断、PIS系统状态诊断。
2.4 软件组织形式
模块采用代码段来描述。代码段使用PRG来灵活组织。本系统中输入输出模块各对应一个PRG,逻辑模块按照功能分类来组织划分PRG。特殊模块单独作为一个PRG。
模块与模块之间采用全局变量来交换数据。全局变量使用数据集来组织。本系统中所有输入输出的全局变量使用数据集来组织。
数据集 (以下简称DUT)的目的是将对应同一个节点或同一个功能的各种变量聚集于一个结构中。一个DUT由基本的数据类型组成,且可以包含不同数据类型的变量。
在本系统中DUT可以用作硬件输入输出变量,各个PIS设备的状态,各个功能码对应的诊断变量,软硬件版本号。
DUT用于从一个POU传送数据到另一个或者多个POU中。当编写程序时,只需要在POU对应的变量组里面定义该DUT结构,这样POU中需定义的变量数目将会大大减少。
3 以太网总线负载计算
发送报文的时间以毫秒计算。
UPD报文的大小以字节计算。
TRDP报文的大小以字节计算。
下面公式给出了UPD报文服务的网络负载估计方法,单位为字节/秒:
(以太网封装 + IP报文头 + UDP报文头 + 数据长度) * 1000 / 发送报文的周期 = (26 + 20 + 8 + 数据长度) * 1000 / 发送报文周期 = (54 + 数据长度) * 1000 / 发送报文周期
下面公式给出了TRDP报文服务的网络负载估算方法,单位为字节/秒:
(以太网封装 + IP报文头 + UDP报文头 + TRDP报文头 + 数据长度) * 1000 / 发送报文周期 = (26 + 20 + 8 + 40 + 数据长度) / 发送报文周期 = (94 + 数据长度) / 发送报文周期
以苏州轻轨二号线的总线数据为例,对于各个系统的总线负载计算,TRDP报文数据负载如下:
RIOM10_1:((94 + 8) * 1000 / 50 + (94 + 24) * 1000 / 50) * 2 = 8800 字节/秒。同理RIOM11、RIOM21、RIOM31均为TRDP通讯,网络负载分别为8640 字节/秒、8640 字节/秒、4820 字節/秒。
UDP报文数据负载如下:
RIOM10_2: ((54 + 8) * 1000 / 50 + (54 + 40) * 1000 / 50) * 2 = 6240 字節/秒。同理,车门、空调、辅助、DDU、DACU、HMI、FDU、IDU、DLMU、DSDU、PECU、DRV、公共端口均为UDP通讯,网络负载分别为40800 字节/秒、1264 字节/秒、1272字节/秒、15680 字节/秒、4960 字节/秒、2800 字节/秒、928 字节/秒、928 字节/秒、992 字节/秒、992 字节/秒、7440 字节/秒、464 字节/秒和648 字节/秒。
由此可以计算总线负载:
(8800 + 8640 + 8640 + 4820 + 6240 + 40800 + 1264 + 1272 + 15680 + 4960 + 2800 + 928 + 928 + 992 + 992 + 7440 + 464 + 648) * 8 / (100 * 1024 * 1024) = 0.89%
4 结论
以太网总线负载0.89%远小于理论带宽的30%到40%,因此该软件设计方案符合总线负载要求,可以保证车载PIS一体化系统的可用性和可靠性。
参考文献:
[1]姚晓峰,陈晓侠,张春光.工业以太网总线系统的通信软件设计[J].控制工程,2006, 13(3):268-270.
[2]国际电工委员会.IEC61375-1-2007铁路电气设备—列车总线—第1部分:列车通信网络[S].国际标准.
[3]王磊,何正友.高速列车通信网络技术特点及其应用[J].城市轨道交通研究,2008(2):57-64.
关键词:车载PIS一体化;以太网;总线负载
1 绪论
车载PIS一体化系统是将TCMS主控制程序与PIS主程序集成在一个主控制器中(VCU),连接在以太网总线上,通过VCU既能监视、控制整列车,又能实现PIS系统功能。本文件详细描述了车载PIS一体化系统中PIS主程序的开发工具、软件架构、软件组织形式和软件设计规范。本文根据实际项目数据进行以太网总线负载计算,对软件设计方案进行了可行性分析,为软件模块设计提供依据。
2 实施方案
2.1 网络架构
列车通信网络由以太网总线构成,以太网总线贯穿整列车。
一列车的两个VCU互为冗余,当其中一个故障时,另外一个将自动接替它的工作,实现无缝切换,保证PIS系统的正常运行。
TCMS主控制程序与PIS主程序在VCU设备内部实现数据交互。
2.2 开发工具说明
PIS主程序软件使用ISaGRAF 5.2版本的开发工具开发,该软件开发框架为:程序、字典、IO配线。
程序主要用于创建逻辑关系,字典用于定义各种变量,包括数据结构体,IO配线主要实现了本地变量与其他以太网设备的数据交换,首先IO配线将本地变量映射至相应协议的数据包中,在通过以太网协议将数据包发送至以太网总线,以太网协议的实现封装在底层库。
2.3 软件架构
PIS主程序的软件架构主要由三部分组成:配线端口、数据输入输出模块、逻辑控制模块。
在VCU与各PIS系统设备之间,需要建立一个以太网通讯连接。IO配线的类型主要是根据过程数据的类型进行划分的,不同的通讯协议过程数据类型不同。在使用IO配线端口时,首先要将过程数据的类型导入应用软件中,数据类型导入完成之后,配置各设备的配线端口。应用程序数据与过程数据之间存在映射的过程,从过程数据获取所有PIS设备的数据,以及将VCU中映射的数据发送给各PIS设备,这些工作都在配线端口中完成。
在数据输入输出模块中,输入是将IO配线端口的数据复制给本地变量组中,而输出则相反。PIS系统设备数据输入输出程序: P_II_HW、P_IO_HW。
PIS主程序逻辑诊断包括八个功能模块:线路信息初始化及报站功能、DACU初始化及控制功能、客室广播功能、司机室对讲功能、乘客紧急对讲功能、预录紧急语音播报功能、各功能优先级诊断、PIS系统状态诊断。
2.4 软件组织形式
模块采用代码段来描述。代码段使用PRG来灵活组织。本系统中输入输出模块各对应一个PRG,逻辑模块按照功能分类来组织划分PRG。特殊模块单独作为一个PRG。
模块与模块之间采用全局变量来交换数据。全局变量使用数据集来组织。本系统中所有输入输出的全局变量使用数据集来组织。
数据集 (以下简称DUT)的目的是将对应同一个节点或同一个功能的各种变量聚集于一个结构中。一个DUT由基本的数据类型组成,且可以包含不同数据类型的变量。
在本系统中DUT可以用作硬件输入输出变量,各个PIS设备的状态,各个功能码对应的诊断变量,软硬件版本号。
DUT用于从一个POU传送数据到另一个或者多个POU中。当编写程序时,只需要在POU对应的变量组里面定义该DUT结构,这样POU中需定义的变量数目将会大大减少。
3 以太网总线负载计算
发送报文的时间以毫秒计算。
UPD报文的大小以字节计算。
TRDP报文的大小以字节计算。
下面公式给出了UPD报文服务的网络负载估计方法,单位为字节/秒:
(以太网封装 + IP报文头 + UDP报文头 + 数据长度) * 1000 / 发送报文的周期 = (26 + 20 + 8 + 数据长度) * 1000 / 发送报文周期 = (54 + 数据长度) * 1000 / 发送报文周期
下面公式给出了TRDP报文服务的网络负载估算方法,单位为字节/秒:
(以太网封装 + IP报文头 + UDP报文头 + TRDP报文头 + 数据长度) * 1000 / 发送报文周期 = (26 + 20 + 8 + 40 + 数据长度) / 发送报文周期 = (94 + 数据长度) / 发送报文周期
以苏州轻轨二号线的总线数据为例,对于各个系统的总线负载计算,TRDP报文数据负载如下:
RIOM10_1:((94 + 8) * 1000 / 50 + (94 + 24) * 1000 / 50) * 2 = 8800 字节/秒。同理RIOM11、RIOM21、RIOM31均为TRDP通讯,网络负载分别为8640 字节/秒、8640 字节/秒、4820 字節/秒。
UDP报文数据负载如下:
RIOM10_2: ((54 + 8) * 1000 / 50 + (54 + 40) * 1000 / 50) * 2 = 6240 字節/秒。同理,车门、空调、辅助、DDU、DACU、HMI、FDU、IDU、DLMU、DSDU、PECU、DRV、公共端口均为UDP通讯,网络负载分别为40800 字节/秒、1264 字节/秒、1272字节/秒、15680 字节/秒、4960 字节/秒、2800 字节/秒、928 字节/秒、928 字节/秒、992 字节/秒、992 字节/秒、7440 字节/秒、464 字节/秒和648 字节/秒。
由此可以计算总线负载:
(8800 + 8640 + 8640 + 4820 + 6240 + 40800 + 1264 + 1272 + 15680 + 4960 + 2800 + 928 + 928 + 992 + 992 + 7440 + 464 + 648) * 8 / (100 * 1024 * 1024) = 0.89%
4 结论
以太网总线负载0.89%远小于理论带宽的30%到40%,因此该软件设计方案符合总线负载要求,可以保证车载PIS一体化系统的可用性和可靠性。
参考文献:
[1]姚晓峰,陈晓侠,张春光.工业以太网总线系统的通信软件设计[J].控制工程,2006, 13(3):268-270.
[2]国际电工委员会.IEC61375-1-2007铁路电气设备—列车总线—第1部分:列车通信网络[S].国际标准.
[3]王磊,何正友.高速列车通信网络技术特点及其应用[J].城市轨道交通研究,2008(2):57-64.