列车控制仿真测试平台中模拟临时限速服务器研究

2013-05-08 08:43郭艳军
铁路计算机应用 2013年3期
关键词:分界点列控应答器

王 喆,郭艳军

(1.中国铁道科学研究院 通信信号研究所,北京 100081;2.北京大学 地球与空间科学学院,北京 100871)

列车控制中心(以下简称列控中心)是CTCS-2级列车控制系统地面设备的重要组成部分,是完成地面信息处理并向列车动态传送信息的关键信号设备,是高安全性、高可靠性要求的系统。它对站内和区间轨道电路的载频、低频信息编码,依据联锁系统当前的进路状态、临时限速服务器(Temporary Speed Restrictions Server,以下简称TSRS)下达的临时限速命令和应答器报文定义原则对应答器用户数据进行实时组帧和编码,控制有源应答器向车载子系统传送信息,保证列控中心管辖内列车的运行安全[1]。因此,列控中心的安全性测试成为验证系统功能,确认系统是否满足系统需求,是否具有足够安全性防护能力的重要手段。通过建立TSRS仿真,验证和检测列控中心与其之间交互的安全性和正确性,是列车控制设备在投入运营前必须完成的室内仿真测试的重要组成部分。

1 TSRS-TCC通信框架

TSRS与列控中心(TCC)之间采用以太网通信方式,使用用户数据报协议(UDP)并采用信号安全数据网互连,确保信息传输的安全性和可靠性。其安全通信体系结构如图 1所示。

按照TSRS-TCC通信协议要求,列控中心要向TSRS定期发送闭塞分区状态信息、应答器方向信息,另外,根据TSRS的请求还需要发送当前执行的临时限速信息以及临时限速下达过程中反馈给TSRS的临时限速错误回执;TSRS主要向列控中心发送周期时钟信息、初始化命令和临时限速命令等。

图1 TSRS-TCC安全通信体系结构

2 软件模块结构

基于模块功能高内聚、低耦合的原则,TSRS仿真系统从功能角度可以划分为3层:表示层、应用层和通信层,如图 2所示。

图2 软件模块结构图

通信层在铁路信号安全通信协议的基础上负责对外通信功能,对上层应用屏蔽一切通信细节;应用层负责处理模拟TSRS的应用逻辑,包括临时限速下达、基于分界点的临时限速测试用例生成、故障注入等;表示层负责将收到的列控中心数据用图形或者表格的形式表现出来。

3 通信层设计

列控中心和TSRS的逻辑处理主机均采用二乘二取二的可靠性和安全性冗余结构,其中列控中心的每系每个端口与TSRS两系的对应端口均建立通信连接,如图 3所示,A、B两网一共有8个通信通道,只要有一个通道能够保持通信连接,列控中心与TSRS之间就能够正常收发数据。

图3 TSRS与TCC连接示意图

TSRS仿真系统的通信层接收应用层的数据,并负责将这些数据发送给对方列控中心的主备系,其中只有模拟TSRS的主系向对方设备的主、备系发送应用数据信息,模拟备系不向对方设备发送任何数据。

4 应用层设计

4.1 系统初始化模块

系统初始化模块负责根据系统配置文件来初始化系统状态。仿真系统配置文件主要包括网络参数配置文件,文件中定义了列控中心编号、临时限速服务器编号,列控中心主备机的IP地址和端口号、TSRS主备机IP地址和端口号、故障安全现场总线FSFB安全协议通信参数等信息。系统在启动时会自动读取网络配置参数,然后将参数传递给通信层并对通信层和应用层的部分数据进行初始化。

4.2 临时限速手动执行模块

本系统最重要的功能就是能够对列控中心下达临时限速。临时限速手动执行模块接收用户输入的临时限速参数信息,包括临时限速所在线路号、临时限速速度值、起点公里标、终点公里标、长链信息、里程标系覆盖标志以及公里标系标识等,按照通信协议组成应用数据包交给通信层下达给指定的列控中心设备。该模块接收用户的一次输入并执行一条临时限速命令,可以通过表示层的临时限速信息窗口或者错误回执窗口获得临时限速执行的情况。该模块适合对特定的临时限速单步执行并观察相应结果,从而达到对列控中心临时限速处理模块进行调试的目的。

4.3 临时限速自动执行模块

临时限速手动执行功能模块一次只能执行用户输入的一条临时限速信息,而临时限速自动执行模块负责对列控中心临时限速功能模块响应长时间、大批量、任意点临时限速处理能力进行压力和全覆盖测试。因此,临时限速自动执行模块需要用户提供整个测试区的起点、终点公里标,单条临时限速的长度、同时执行的临时限速个数(按照协议一般不超过3条)、临时限速距离间隔以及下达限速命令的时间间隔信息,图 4为自动下达临时限速示意图。

图4 自动下达临时限速示意图

临时限速自动执行模块会根据用户提供的测试参数自动下达、取消临时限速,每条临时限速的执行情况都会被存储到结果数据库中,以方便在结束测试后测试人员对结果进行核对并及时发现列控中心系统错误。当临时限速距离间隔和临时限速区长度都设置为1 m时,该模块功能能够遍历所要测试区域的每1 m长度,从而做到对整个测试区的完全覆盖测试。

4.4 基于分界点的测试用例生成模块

4.4.1 影响应答器报文的临时限速分界点

人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部,因此针对各种边界情况设计测试用例,可以查出更多的错误。临时限速自动执行模块虽然能够对列控中心管辖范围内的数据配置起到全覆盖测试的作用,但是缺乏针对应答器报文选择影响较大的临时限速关键分界点的测试功能。以某标准车站下行线为例,当排列了往下行线正向的侧线发车进路后,若临时限速分别下达在进路上、正向L1(85 km/h制动到45 km/h的距离)范围内、正向L2(线路当前方向最高允许速度制动到45 km/h的距离)范围内或者管辖范围以外时,对于侧线发出应答器中报文的临时限速有效长度、临时限速速度值以及应答器到临时限速的距离等字段取值有非常大的影响。对于CTCS-2级列控中心,按照报文定义规则,在排定指定进路的情况下,综合考虑线路正向反向、正线侧线等因素,对列控中心报文生成影响较大的临时限速分界点如图 5所示。

基于上述分界点,可以在分界点前后以及跨相应分界点处分别下达不同的临时限速,然后核对相应应答器的报文来验证列控中心对上述关键区域报文生成功能的正确性。

4.4.2 参数化分界点的测试用例生成方法

基于参数化分界点的测试用例生成方法,支持测试人员自定义测试用例模板,并且能结合用例模板和本站分界点数据自动生成当前车站的测试用例。

本方法将用例模板和分界点数据分离,用例模板中以参数的形式表示分界点数据;而分界点数据表中包含了当前测试车站的相关分界点名称(如表 1中定义)以及对应的公里标数值。

表 1 分界点参数定义

图5 临时限速特殊点示意图

自定义测试用例模板是基于XML编写的脚本,脚本示例如下:

脚本中可以定义测试用例所在的分类并且最大支持3级分类,分别用标签表示。2级分类标签中还可以定义线路号、上下行和正向反向等信息;第3级分类就是具体的测试用例模板,其包括测试用例名称和起点、终点公里标信息。这里的起点、终点公里标都是用表 1中分界点名称来描述的,不涉及到具体的公里标数值,因此通过这种方式定义的用例模板可以适用于任何车站。

为了能够生成更加灵活的测试用例,还可以在标签的公里标名称后添加必要的加减运算,比如“+1”,“-1”,“+n”,“-n”等,其含义如表 2所示。

表 2 公里标运算符定义

此处的“1”还可以替换为任意的常数值,内方和外方指的是以当前车站站内区域为中心,远离该区域定义为外方,接近该区域定义为内方。例如,“start="WayinSignal+n”表示临时限速起点位于进站口信号机外方任意(随机数)距离;“end="FwdL1-10”表示临时限速终点位于线路正向L1分界点内方10 m处。

系统将自定义测试用例模板脚本和数据(分界点公里标)脚本做关联后,生成同具体车站相关的测试用例集合并以列表的形式显示在系统中供用户测试。通过该方法可以使得测试用例模板适用于绝大多数车站,对每个车站进行测试之前只需要填写分界点公里标表格即可,将测试人员的工作量降到了最小并提高了正确性。另外,如果需要添加新的测试用例类型,只需要更改模板重新生成数据就可以更新所有待测试车站的测试用例,极大地提高了工作效率。

4.5 故障注入模块

故障注入模块用于模拟通信过程中各种可能出现的故障,以验证列控中心系统在应对通信故障的情况下对临时限速的处理机制。

故障注入的类型包括:通信中断模拟(针对系统的8个通信信道,可以指定中断其中任意一条或多条信道)、TSRS倒机模拟、通信周期异常、中断时钟包发送、通信包长度异常等故障类型。这些故障类型可以逐个模拟也可以并发出现,从全面的角度来验证列控中心的安全性和可靠性。

5 表示层设计

5.1 协议信息交互模块

该模块是整个系统与测试人员之间交互的窗口,负责将通信层和应用层传过来的各种协议数据以良好的用户界面表示出来,方便测试人员及时观察各种数据的变化;另外,还要提供信息采集界面供用户输入所要下达的临时限速信息和自动执行临时限速的参数信息等,并将这些信息交给应用逻辑层处理并发送执行。

5.2 通信状态显示模块

通信状态显示模块能够显示本地TSRS的A机和B机的IP地址绑定状态、本地主备用信息,以及被测列控中心的A机、B机主备用状态和通信通道状态等。状态结果用状态图的形式表示,绿色矩形表示主控机,黄色矩形表示备用机,红色矩形表示离线或通信中断状态;另外,绿色线条表示通信正常,红色线条表示通信中断,系统界面如图 6所示。该模块提供了最直观的方式,可以实时观察通信状态从而方便测试的进行。

6 结束语

本系统在Visual Studio 2008环境下采用C++语言开发,自动下达临时限速的结果,采用Access数据库方式存储。

该系统已经应用在龙岩-漳州CTCS-2级高速铁路列控中心调试和验证过程中,提高了测试效率,降低了测试成本。下一步工作将重点建立应答器报文预期结果数据库,并完善报文自动核对功能,使得系统更加智能化,为以后的通用性仿真测试大平台的研究奠定基础。

图6 系统界面图

[1] 石 坤,穆建成,叶 峰. 基于数据驱动的列控中心报

文自动化测试研究[J].铁路计算机应用,2011,20(8).[2] 吴芳美.铁路安全软件测试评估[M].北京:中国铁道出

版社,2001.

[3] 刘长波.车站列控中心应答器报文测试的探讨[J].铁路通信信号工程技术,2007,4(1):6-8.

[4] 朱 菊,王志坚,杨 雪.基于数据驱动的软件自动化

测试框架[J].计算机技术与发展,2006,16(5):68-70.

猜你喜欢
分界点列控应答器
关注特殊值,巧解一类导数压轴题
列控联锁数据管理分析平台的研究与探索
列控中心驱采不一致分析及改进方案
怎样确定含参二次函数问题中分类讨论的“分界点”
便携式列控中心测试设备设计与实现
应答器THR和TFFR分配及SIL等级探讨
列控数据管理平台的开发
新型多功能水声应答器电子系统设计
找分界点思想在一类导数题中的应用
虚拟应答器测试方法研究