梅 樱, 赵红卫, 黄 枫, 张哲龙
(1 中国铁道科学研究院 机车车辆研究所, 北京 100081;2 北京纵横机电技术开发公司, 北京 100094)
基于ControlBuid的TCMS集成软件开发平台设计*
梅樱1, 赵红卫1, 黄枫1, 张哲龙2
(1中国铁道科学研究院 机车车辆研究所, 北京 100081;2北京纵横机电技术开发公司, 北京 100094)
自主研发基于ConrolBuild的TCMS集成软件开发平台,首先分析了开发该平台的软件需求;然后详细描述了平台软硬件集成化设计的原理及实现过程;最后以某型动车组TCMS在本平台的应用实现为例,验证了本平台的可用性和正确性。
ControlBuild, TCMS, 集成软件, 开发平台
列车网络控制系统(Train Control and Management System, TCMS)是现代智能化轨道交通车辆的神经中枢,承担着整个列车的控制、监视、诊断与保护等任务[1]。由于TCMS是一个大型、复杂、高度集成化的系统,因此,采用一种可视化、模块化的平台对系统的应用软件进行开发,是对列车网络控制系统进行安全、可靠、高效集成的重要保证[2]。
目前国际上对可视化、模块化编程制定了标准IEC 61131-3[3],国际上几乎所有TCMS集成商,均具有自主的满足该标准的平台进行列车网络控制系统的软件开发,如西门子的SIBAS G平台、庞巴迪的MITRAC平台等[4]。而国内尚未有完全自主开发的该类平台。本文将研究我国自主研发的基于ConrolBuild的TCMS集成软件开发平台。
1.1ControlBuild软件特点
ControlBuild(简称CB)是一款满足IEC 61131标准的开放的自动化软件平台,具有自动生成工程源码功能,其自带的代码生成器支持生成Windows、Linux和QNX等多种操作系统平台下的源代码。但目前CB主要用于系统仿真,尚未用作列车网络控制系统软件集成开发平台,其主要原因如下:
(1) CB作为一个通用的仿真软件,不具备搭建TCMS应用所需的基本模块库;
(2) CB作为一个纯软件仿真平台,不具备与目标机硬件接口驱动能力;
(3) CB只能进行上层的逻辑应用编程,不具备对目标机的TCMS功能驱动(如故障存储、任务调度等)能力;
(4) CB也不具备TCMS集成软件开发平台所需的工具链(包括变量导入配置、诊断配置、可执行代码编译下载、目标机监控等)。
1.2开发平台软件需求
鉴于上述原因,还需对CB做进一步开发,才能实现TCMS集成软件开发平台的功能需求。
针对2.1中描述的CB 4个不具备条件,图1提出了基于ControlBuild的TCMS集成软件开发平台的软件开发需求,其中包括:
(1) 功能模块库:搭建TCMS应用软件系统所需的基本功能库,包括算法库、控制库、逻辑库、TCN通信模块库等基本功能模块;
(2) 目标机硬件驱动:目标机硬件驱动包括两个部分,列车网络通信驱动和一般硬件驱动。列车网络通信驱动是TCMS运行的基础功能,因此对通信网卡进行驱动,实现通信功能,是CB平台作为列车网络控制系统TCMS开发和验证平台首要完成的功能;在列车网络控制系统的目标机上,还需进行电源管理、模拟量采集、硬件保护、数字量输入采集、数字量输出控制等硬件驱动功能,因此,实现对目标机一般硬件的驱动的,是CB集成软件开发平台需要完成的重要功能;
(3) TCMS功能驱动:TCMS系统除完成主要的控制逻辑实现外,还要完成系统的故障诊断及故障存储;具体的功能需求,包括故障诊断、非易失变量存储、底层任务调度和底层服务。这些功能主要用于保证软硬件系统的运行安全、使用维护方便,成为TCMS不可或缺的组成部分;
(4) 插件工具:由于采用符合IEC 61131标准的模块化编程,在实现图形化编程后,插件工具主要完成所有通信驱动、IO驱动、控制与诊断逻辑、诊断存储等所有程序代码的编译、链接并生成可执行代码,插件工具还提供了程序运行状态监控,包括变量导入工具、诊断配置工具、变量在线监控工具等。
图1 “基于ControlBuild的TCMS集成软件开发平台”软件开发需求
将ControlBuild与开发的各类驱动及目标机硬件系统实现一体化集成,使其成为一个完整的、可用的、可靠的TCMS应用软件开发平台是本文研究的核心。为此,本文设计了一个关于本平台的软硬件系统结构体系,其原理如图2所示是本文设计的“基于CB的集成软件开发平台”的软硬件体系,该体系采用应用、功能、驱动分进程进行管理的结构。
首先用户在CB软件平台进行控制逻辑、算法等TCMS应用功能的编程,同时用户根据TCMS需求对应用程序进行运行周期分配,CB将根据用户应用程序及周期分配情况,自动生成各个周期相应的源代码;然后用户通过相关配置工具,将CB应用程序中的变量与驱动建立映射,生成配置文件;随后通过编译工具将CB生成的各个周期的源代码编译生成目标机的可执行进程文件,同时根据配置文件编译生成目标机的硬件驱动和TCMS功能驱动进程可执行文件;最后通过监控工具将生成可执行文件下载到目标机硬件中,并通过目标机硬件上的底层服务程序实现所有可执行文件的顺序加载,从而完成TCMS的编程、编译、下载及运行。
图2 “基于CB的TCMS集成软件开发平台”的软硬件体系结构
如图2所示,由CB生成的周期进程T1~Tn,其主要实现列车网络控制系统的逻辑控制、算法等应用功能。由于周期进程对系统的实时控制十分重要,因此采用单独的“任务调度”进程对“CB功能进程_T1”~“CB功能进程_Tn”进程调度及监控,以保证系统控制的实时、可靠和安全性。
配置工具将CB应用程序中的变量与驱动建立映射,通过变量交互管理机制进行数据交互和管理,最终实现CB中定义的硬件变量对系统硬件的驱动控制,以及对TCMS相关功能的控制,从而完成了ControlBuild与开发的各类驱动及目标机硬件系统实现一体化集成。
3.1平台软件实现机制
通过第2节的设计可知,基于ControlBuild的TCMS集成软件开发平台实现的核心是:如何实现CB功能进程与各驱动进程间的交互管理,使ControlBuild平台中的相关变量能够控制目标机硬件并实现TCMS相关功能。
本文所采用的平台软件实现机制是:变量交互管理通道,即通过变量交互管理通道实现CB变量对硬件接口或寄存器的控制及相关TCMS功能的控制。图3所示为平台的软件系统实现机制。平台软件实现机制如下:通过配置工具,将硬件配置接口信息及TCMS功能驱动信息与CB中的接口变量进行映射,并生成配置文件;通过可执行代码编译工具完成目标机的可执行代码的生成,其主要生成2大部分内容。
图3 平台的软件系统实现机制
(1) 根据平台生成的CB功能进程,这部分进程主要执行平台中应用的逻辑功能;
(2) 根据系统硬件配置文件生成的目标机硬件及系统功能驱动进程。
可执行代码编译工具根据建立的映射关系,在进程(1)和进程(2)之间建立一个变量交互管理通道,两个进程都根据不同的硬件接口和TCMS功能配置,周期的更新及读取其与变量交互管理通道间接口的变量,从而完成数据的周期交互。
3.2平台软件实现
如图4所示为平台软件系统实现的流程图。CB功能进程中的变量与硬件及系统功能中的变量通过变量交互管理通道的映射进行交互。其过程如下:
(1) CB功能进程实时检测其配置的每个任务周期T1~Tn的轮询周期是否已到,若已经到达,则从变量交互管理通道中读取相关地址的数值并对所映射变量进行更新;同时向变量交互管理通道相关地址写入需要更新的变量的数值;
(2) 硬件驱动进程实时检测其配置的轮询周期是否已到,若已经到达,则从变量交互管理通道中读取相关地址的数值并根据映射配置控制相关的硬件接口或寄存器;同时将从硬件接口或寄存器中读取的硬件信息根据映射配置写入变量交互管理通道的相关地址;
(3) TCMS系统功能驱动进程实时检测系统运行过程中是否有相关的控制功能被触发,若有,则从变量交互管理通道中读取相关地址的数值并进行TCMS功能的控制实施;同时将TCMS功能中的控制结果或相关状态根据映射配置写入变量交互管理通道的相关地址。
至此,解决了CB平台对目标机硬件及TCMS功能控制的问题,使得CB成为适用于轨道交通TCMS系统开发的平台软件。
为验证研发的基于ControlBuild的TCMS集成软件开发平台的可用性和正确性,以某型动车组TCMS系统实现为目标,在平台上开发了该型动车组的TCMS应用控制软件,如图5所示。
图4 平台软件系统实现流程图
图5 某型动车组TCMS应用软件实现示意图
为了验证最终软件的运行效果,在试验室搭建了模拟列车网络控制系统实际配置的系统测试平台,如图6所示。
图6 某型动车组的TCMS系统测试平台示意图
该平台搭建了模型动车组的低压电气模型,模拟了列车的运行环境及与TCMS系统的所有接口,从而能够对所实现的TCMS系统的所有功能进行测试。
验证过程中,对TCMS各控制逻辑及系统功能进行了逐项详细测试,测试结果表明采用研制的平台所开发的动车组TCMS系统能够按照既定功能稳定的运行,证明了本平台的可用性和正确性。
研制完成了基于ControlBuild的TCMS集成软件开发平台,该平台为TCMS集成设计提供了可视化、模块化的应用软件集成开发环境;为用户提供了一套完整的系统开发工具链;通过工具链生成的系统目标机可执行程序,实现了对目标机硬件控制及TCMS系统功能控制。
用户只需在本平台上开发TCMS系统逻辑部分应用软件,即可快速、完整实现对不同项目的TCMS系统开发,大大缩短了系统开发周期、节约大量开发成本、提高了系统可靠性,适合在轨道交通领域广泛推广,具有很好的发展前景。
[1]孙宁, 李照星, 杨润栋,等. 城市轨道交通车辆应用技术[M]. 北京: 中国铁道出版社, 2014.
[2]张大海, 施承有. 成都地铁1 号线列车微机网络控制系统[J]. 机车电传动, 2009,(6): 41-43.
[3]Karl-Heinz John, Michael Tiegelkamp. IEC 61131-3:Programming Industrial Automation Systems[S], 2000.
[4]刘先恺. CRH2型200 km/h动车组列车网络控制系统[J]. 机车电传动, 2008,(6): 1-4.
The Design of Integrated Software Development Platform Based on ControlBuid
MEI Ying1, ZHAO Hongwei1, HUANG Feng1, ZHANG Zhelong2
(1Locomotive and Car Research Institute, China Academy of Railway Sciences, Beijing 100081, China;2Beijing Zongheng Electro-Mechanical Technology Development Co., Beijing 100094, China)
This article studied the TCMS integrated software development platform based on ConrolBuild, which is independently developmented in China. Firstly the platform software requirements were analyzed, then the software and hardware integrated principle and the realization process of the design platform was described in detail. Finally through an application of a certain type EMU TCMS on this platform, the correctness and availability of this platform was proved.
ControlBuild; TCMS; integrated software; development platform
1008-7842 (2016) 01-0020-04
女,助理研究员(
2015-09-01)
U284.48+1
Adoi:10.3969/j.issn.1008-7842.2016.01.05