CN112722016B - 用于轨道交通列车自动控制系统的自动化测试系统及方法 - Google Patents
用于轨道交通列车自动控制系统的自动化测试系统及方法 Download PDFInfo
- Publication number
- CN112722016B CN112722016B CN202110048669.8A CN202110048669A CN112722016B CN 112722016 B CN112722016 B CN 112722016B CN 202110048669 A CN202110048669 A CN 202110048669A CN 112722016 B CN112722016 B CN 112722016B
- Authority
- CN
- China
- Prior art keywords
- script
- train
- automatic
- information
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B61—RAILWAYS
- B61L—GUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
- B61L27/00—Central railway traffic control systems; Trackside control; Communication systems specially adapted therefor
- B61L27/60—Testing or simulation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Train Traffic Observation, Control, And Security (AREA)
- Electric Propulsion And Braking For Vehicles (AREA)
Abstract
本发明涉及一种用于轨道交通列车自动控制系统的自动化测试系统及方法,该自动化测试系统包括用于解析列车自动控制系统所用数据的数据分析模块M1、用于对列车自动控制系统的所有外围设备进行仿真的脚本运行模块M2、用于模拟相关的司机驾驶列车操作的司机操作仿真模块M3和用于生成相应的测试日志报告的日志自动分析模块M4,所述的数据分析模块M1和司机操作仿真模块M3分别连接脚本运行模块M2,所述的列车自动控制系统分别连接脚本运行模块M2、司机操作仿真模块M3和日志自动分析模块M4。与现有技术相比,本发明具有以下优点:降低轨道交通列车自动控制系统的测试和验证成本,提高测试效率等。
Description
技术领域
本发明涉及列车自动控制系统的自动化测试领域,尤其是涉及一种用于轨道交通列车自动控制系统的自动化测试系统及方法。
背景技术
轨道交通列车自动控制系统ATC(Automatic Train Control)作为轨道交通的核心控制系统,承担着列车自动防护和自动运行的任务。其稳定性和安全性要求都有很高要求,为了获得高可信息,高质量的自动控制系统,单纯依靠传统的手工测试是远远不够的,其不仅耗费时间,且面对海量的测试日志,难以实现全面的分析和测试。基于以上原因,发明一种高效的、自动化的测试系统成为解决该问题的一个重要方向。
目前传统的适用于列车自动控制系统的自动化测试方案,主要停留在通过自动化脚本技术实现自动化的仿真场景模拟方面,通过编写相应的自动化脚本关键字,实现各种场景的仿真以及相应的故障注入功能,对于测试结果的验证还需要人工通过界面和相关记录进行查看,无法做到真正的全自动化测试。尤其是在长时间的自动执行测试过程中将生成大量的测试日志,测试人员在检查日志和核对结果方面需要花费大量的时间和精力。此外在进行人工驾驶列车(如手动开关门方式CM模式列车驾驶时)的相关自动化脚本编写时,需要测试人员编写大量的开关门和启动、停车脚本,严重影响了测试的效率。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种用于轨道交通列车自动控制系统的自动化测试系统及方法。
本发明的目的可以通过以下技术方案来实现:
根据本发明的一个方面,提供了一种用于轨道交通列车自动控制系统的自动化测试系统,该自动化测试系统包括用于解析列车自动控制系统所用数据的数据分析模块M1、用于对列车自动控制系统的所有外围设备进行仿真的脚本运行模块M2、用于模拟相关的司机驾驶列车操作的司机操作仿真模块M3和用于生成相应的测试日志报告的日志自动分析模块M4,所述的数据分析模块M1和司机操作仿真模块M3分别连接脚本运行模块M2,所述的列车自动控制系统分别连接脚本运行模块M2、司机操作仿真模块M3和日志自动分析模块M4。
作为优选的技术方案,所述的数据分析模块M1对数据中的线路链接关系、站台、信号机、道岔、屏蔽门、轨道和信标信息进行整理和特征提取,同时根据数据描述的列车运行交路,对每个交路中的设备进行编号处理,计算出每个交路中的设备特征关系,再根据测试特征脚本选取符合条件的交路,将其作为本次测试使用的列车运行线路,自动生成脚本运行所需的初始化基本信息,包括线路信息和线路特征点位置,以供脚本运行模块M2使用。
作为优选的技术方案,所述的脚本运行模块M2根据数据分析模块M1生成的线路信息和设备位置信息,自动生成列车的初始位置脚本,以及列车运行线路脚本,同时根据线路信息搜索站台正确停靠点,自动获得该条线路的所有站台停车点信息,再解析测试场景脚本,并匹配当前的测试特征数据,结合司机操作仿真模块生成的司机操作信息,自动计算出列车运行操作指令,并发送给列车自动控制系统,用于实现相应测试场景的仿真和相应功能的测试。
作为优选的技术方案,所述的司机操作仿真模块M3,实时获取车载控制器发送给人机接口的显示信号以及车载控制器同步发送给仿真车辆的列车控制信号,自动提取当前的模式、参考速度、列车操作提示,并将其转换为司机操作指令,发送给脚本运行模块M2。
作为优选的技术方案,所述的日志自动分析模块M4解析已编辑好的测试自动分析脚本,生成自动分析规则,实时监控列车自动控制系统的诊断数据,被测系统与自动化测试系统间的交互信息,并按照自动分析规则进行监控;对异常日志,符合预期的记录,不符合预期的记录进行分类存储,并最终生成相应的测试日志报告。
根据本发明的另一个方面,提供了一种采用所述的用于轨道交通列车自动控制系统的自动化测试系统的方法,该方法包括以下步骤:
步骤1)数据分析模块M1解析列车自动控制系统所用数据;
步骤2)脚本运行模块M2对列车自动控制系统的所有外围设备进行仿真;
步骤3)司机操作仿真模块M3模拟相关的司机驾驶列车操作;
步骤4)日志自动分析模块M4生成相应的测试日志报告。
作为优选的技术方案,所述的数据分析模块M1的具体执行步骤如下:
步骤S101:读取被测系统所用的数据,将数据中的线路链接关系、站台、信号机、道岔、屏蔽门、轨道和信标设备信息进行特征提取并存储;
步骤S102:解析测试人员事先定义好的测试特征脚本,对步骤S101中生成的设备信息进行进一步特征提取,并进行特征匹配,将匹配成功的线路和设备特征进行设备特征编号并存储;
步骤S103:根据S102生成的已编号的测试线路特征数据进行进一步的信息整理,获得测试的相应初始状态信息,包括列车初始位置、运行线路和折返位置信息,并将其发送给脚本运行模块M2。
作为优选的技术方案,所述的脚本运行模块M2的具体执行步骤如下:
步骤S201:获取来自数据分析模块M1的脚本初始化信息,自动生成列车初始位置脚本;
步骤S202:在步骤S201的基础上,自动生成运行线路脚本,其中包括信号机、道岔、屏蔽门和进路状态信息;
步骤S203:根据线路信息,自动生成站台停靠站和折返站信息列表,同时进行停车点位置的计算,为后续模拟司机停靠站、站台折返操作指令做准备;
步骤S204:解析测试人员编写的测试场景脚本,并输出给步骤205进行后续的模拟场景指令生成;
步骤S205:根据S204解析的测试场景脚本以及从司机操作仿真模块M3获取到的司机操作仿真指令,动态计算列车的实际运行状态信息和场景指令信息;
步骤S206:根据步骤S205生成的列车运行状态信息和场景指令,转换为列车自动控制系统外部仿真接口的消息,并按照实际接口的要求发送给被测系统,实现相应场景的仿真;
步骤S207:监控脚本结束指令,当结束时,则直接停止后续脚本的执行,反之则返回到S205,周期性执行步骤S205和S206。
作为优选的技术方案,所述的司机操作仿真模块M3的具体执行步骤如下:
步骤S301:实时接收车载控制器发送给列车的硬线信号以及发送给列车综合管理系统信息;
步骤S302:与步骤S301同时,通过网络抓包实时获取车载控制器发送给司机人机接口的显示信息;
步骤S303:根据接口协议配置对步骤S301接收到的信息解析,并存储到相应控制指令字段中去;
步骤S304:根据接口协议配置对步骤S302接收到的信息解析,并存储到相应控制指令字段中去;
步骤S305:实时监控司机人机接口视频图像,并与车载控制发送的显示指令进行对比,检测DMI上显示的图像与输入指令是否一致;
步骤S306:根据步骤S303和S304解析出的信息进行整合计算,动态计算出当前运行模式和司机控制相关指令信息,包括驾驶模式、运营模式、列车参考速度、开关门提示信息、发车提示信息、模式转换提示信息和折返提示信息,并发送给脚本运行模块M2;
步骤S307:将步骤S305中检测不一致的进行记录,并输出显示;
步骤S308:监控运行结束指令,当结束时,则直接停止后续程序的执行,反之则返回到S301和S302,周期性执行相应步骤。
作为优选的技术方案,所述的日志自动分析模块M4的具体执行步骤如下:
步骤S401:编辑好的自动分析脚本;
步骤S402:判断自动分析脚本是否能够正确解析,若不能,则返回相应错误提示;
步骤S403:对无法进行正确解析的自动分析脚本进行错误日志输出;
步骤S404:对可解析的自动分析脚本进行进一步处理,生成可执行的自动分析规则;
步骤S405:实时获取被测系统的诊断数据以及网络抓包数据,并进行解析处理,最后送入到自动分析规则中进行结果判断;
步骤S406:对自动分析结果进行存储,包括符合预期,不符合预期的结果进行输出显示,并生成相应的报告;
步骤S407:检测自动分析脚本是否更新,当自动分析脚本更新时则返回步骤S401重新进行自动分析脚本的解析处理,反之继续运行;
步骤S408:监控运行结束指令,当检测到结束指令或运行超时,结束流程,反之则返回步骤S405继续周期性执行自动分析指令;
其中当步骤S408是由于超时结束时,将产生超时报警日志,以供测试人员查看。
与现有技术相比,本发明具有以下优点:
1、相较于现有自动化测试技术,本技术方案提供一种实时的可编程的自动分析脚本方法,实时监控系统诊断日志,并对其进行分析,极大的提高了系统测试分析问题的效率。
2、基于车载控制器输出给车辆和司机人机接口(DMI)的信息实现了仿真司机驾驶指令的自动生成,省去了司机控车指令相关脚本的编写时间,进一步提高了系统测试的效率。
3、基于司机驾驶指令的自动生成功能,提供了一种能对系统进行长时间无人自动化拷机测试的方法,即使列车运行在人工驾驶模式下,也能通过自动生成的司机驾驶指令,实现列车的正常停靠站、开关门、按时发车、规定路段折返等功能,最后通过实时日志自动分析功能,检验系统的功能正确性,为系统的稳定性相关测试提供强有力的工具支撑。
附图说明
图1是本发明的用于轨道交通列车自动控制系统的自动化测试系统的结构图;
图2是本发明的用于轨道交通列车自动控制系统自动化测试系统的数据分析模块M1的流程图;
图3是本发明的用于轨道交通列车自动控制系统自动化测试系统的脚本运行模块M2的流程图;
图4是本发明的用于轨道交通列车自动控制系统自动化测试系统的司机操作仿真模块M3的流程图;
图5是本发明的用于轨道交通列车自动控制系统自动化测试系统的日志分析模块M4的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本实施例中,将轨道交通列车自动控制系统自动化测试系统应用于测试车载控制器子系统在人工驾驶模式下的开关门功能。
如图1所示,是本发明用于轨道交通列车自动控制系统的自动化测试系统的结构示意图。本实施例中用于轨道交通自动控制软件的自适应的自动化测试系统包括:数据分析模块M1,脚本运行模块M2,司机操作仿真模块M3以及日志自动分析模块M4。
其中,数据分析模块M1解析线路特征脚本,此处设计的线路特征脚本形式如下:
"Beacon_1"->"Beacon_2"->"*"->"SSA_1"->"*"->"SSA_2"->"*"->"SSA_3"
上面的脚本中描述了两个Beacon(信标)和三个SSA(停车服务区),‘*’代表任意特征设备,其中两个信标用于列车初始化定位使用,另外三个SSA则用于测试不同的开关门方式使用(包括手动开关门,半自动开关门以及全自动开关门),基于此脚本,结合系统数据,通过数据分析模块M1的处理,可生成如下初始化信息:
通过步骤S102,获取的特征点匹配信息如下:
Beacon_1id:21401,position:[21079,3.22],direct:Both
Beacon_2id:20005,position:[21079,27.42],direct:Both
SSA_1id:2919366697,begposition:[20410,14.68],length:138
SSA_2id:2919366698,begposition:[20413,0.0],length:167
SSA_3id:2919366699,begposition:[20001,0.0],length:167
通过步骤S103,获取到线路列表信息如下(其中的值为区段id):
[20922,20923,20242,20243,20244,20245,20246,20405,21079,20407,20752,20753,20754,20409,20410,20411,20412,20413,20414,20415,20001,20002,20003,20004,20014,20022,20007,20008,20009,20010,20011,20012,20013,…,20838](其中的…为由于线路太长而省略的区段id)。
在脚本运行模块M2中,根据数据分析模块M1生成的特征点数据以及线路数据,具体流程如下:
通过步骤S201自动生成,列车初始位置信息如下:
Block_id=20923
Abscissa=22070mm
再通过步骤S202生成运行线路脚本如下:
Block_List=20922,20923,20242,20243,20244,20245,20246,…,20838
Cog_dir=END1_Forward(车头1朝前)
Direction=Up
trainLen=141370mm
通过步骤S203,自动生成三个站台的停车点位置如下:
SSP_1(SSA_1):Block_id=20410,Abscissa=133450mm
SSP_2(SSA_2):Block_id=20413,Abscissa=133450mm
SSP_3(SSA_3):Block_id=20001,Abscissa=133450mm
通过步骤S204,对已编辑好的场景脚本进行解析,其中场景脚本的形式如下:
Set HIGHEST_MODE=CBTC-CM#(以人工驾驶模式运行脚本)
Set DMS_MODE=MM#(设置初始化门控模式为全手动)
When the train leaving SSA_1,set DMS_MODE=AM#(列车离开SSA1后,设置门控模式为半自动)
When the train leaving SSA_2,set DMS_MODE=AA(设置初始化门控模式为全自动)
结合司机操作仿真模块M3以及测试场景脚本的要求,步骤S205将自动计算出相应的列车运行状态以及相应的场景指令,并通过步骤206生成测试仿真的接口信号发送给被测系统,实现场景仿真。由于此步骤为动态计算,这里将动态计算的关键过程列出如下:
放置列车在初始轨道上,同时根据列车朝向,将车头1的钥匙打上(KSON1=1)
根据司机操作仿真输出提示,自动按压RM按钮,转到RM模式,并根据司机操作仿真提示的速度范围(20km/h),自动模拟列车低速运行。
当列车通过Beacon_1和Beacon_1完成定位初始化,并获得区域控制器给的有效EOA之后,在车载的提示下,将转换为CBTC_CM模式,通过根据司机操作仿真计算出的参考速度自动模拟司机进行加/减速运行。
当列车接近SSA_1时,根据在S203中计算出的停车点,模拟司机操作完成降速停车操作,保证列车停准在SSA_1中。
当列车停准后,根据司机仿真模块获取的开门提示,自动模拟司机按压开门按钮。
根据司机仿真模块获取的关门提示,自动模拟司机按压关门按钮。
列车关门后,根据发车提示,模拟司机发车,并按照司机操作仿真模块计算出的参考速度自动模拟司机进行加/减速运行。
列车离开SSA_1后,根据场景脚本,将自动设置门控模式为半自动。
当列车接近SSA_2时,根据在S203中计算出的停车点,模拟司机操作完成降速停车操作,保证列车停准在SSA_2中。
当列车停准后,由于门控模式为半自动,司机操作仿真模块M3将不会触发司机开门按钮操作,门将根据车载发送给车辆的控制信号自动打开。
根据司机仿真模块获取的关门提示,自动模拟司机按压关门按钮。
列车关门后,根据发车提示,模拟司机发车,并按照司机操作仿真模块计算出的参考速度自动模拟司机进行加/减速运行。
列车离开SSA_2后,根据场景脚本,将自动设置门控模式为全自动。
当列车接近SSA_3时,根据在S203中计算出的停车点,模拟司机操作完成降速停车操作,保证列车停准在SSA_3中。
当列车停准后,由于门控模式为全自动,司机操作仿真模块M3将不会触发司机开关门按钮操作,门将根据车载控制器发送给车辆的控制信号自动打开和关闭。
当上述过程完成后,自动生成测试结束指令。
当步骤S207收到S206发送的结束指令时,将结束本次脚本执行流程,反之则继续周期执行S205和S206。
在上述描述中,脚本运行模块M2中用到了由司机操作仿真模块M3计算的操作指令,其关键计算过程如下:
在列车停靠在初始位置,打上车头1的钥匙后,通过步骤S301和S303,获取到车载控制器给车辆的RMIND(RM可选提示)信号为真,并通过步骤S306生成转RM模式指令给脚本执行模块M2。
当列车转换为RM模式后,通过步骤S302和S304,获取最大运行速度MAX_SPEED并考虑余量,通过步骤S306转换为速度指令,发送给脚本执行模块M2。
当列车转换为CM模式后,通过步骤S302和S304,获取车载参考速度SPEED_ORDER通过步骤S306转换为速度指令,发送给脚本执行模块M2。
通过步骤S302和S304,获取门控模式为手动时,监控停准信号和开门提示信息,当两个都满足时,通过步骤S306生成司机开门指令,并发送给脚本执行模块M2。
通过步骤S302和S304,获取门控模式为手动时,监控停准信号和关门提示信息,当两个都满足时,通过步骤S306生成司机关门指令,并发送给脚本执行模块M2。
通过步骤S302和S304,获取门控模式为半自动时,监控停准信号和关提示信息,当两个都满足时,通过步骤S306生成司机关门指令,并发送给脚本执行模块M2。
通过步骤S302和S304,监控发车提示信息,当有发车提示信息时,通过步骤S306生成司机启动列车运行指令,并发送给脚本执行模块M2。
当接收到脚本运行完成或超时指令时,则通过步骤S308结束司机操作仿真模块的运行。
此外,司机操作仿真模块M3中的步骤S305和S307,采用的是成熟的图像识别技术,通过对司机人机接口的实时图像进行采集分割,再与根据车载控制器发送来的实时显示信号解析出来的预期图像进行对比,并对异常结果进行记录。
日志分析模块M4先解析自动分析脚本,此处的自动分析脚本形式如下:
When the train is correct_docking in SSA_1:
check if DMS_MODE!=MM=>ErrorLog(“在SSA_1站台的门控方式不是手动,与预期不一致!”);
check if DOOR_Status change from CLOSE to OPEN=>NormalLog(“在SSA_1站台完成的手动开门操作.”);
check if DOOR_Status change from OPEN to CLOSE=>NormalLog(“在SSA_1站台完成的手动关门操作.”);
When the train is correct_docking in SSA_2:
check if DMS_MODE!=AM=>ErrorLog(“在SSA_2站台的门控方式不是半自动,与预期不一致!”);
check if DOOR_Status change from CLOSE to OPEN=>NormalLog(“在SSA_2站台完成的自动开门操作.”);
check DOOR_Status change from OPEN to CLOSE=>NormalLog(“在SSA_2站台完成的手动关门操作.”);
When the train is correct_docking in SSA_3:
check if DMS_MODE!=AA=>ErrorLog(“在SSA_3站台的门控方式不是全自动,与预期不一致!”);;
check if DOOR_Status change from CLOSE to OPEN=>NormalLog(“在SSA_3站台完成的自动开门操作.”);
check if DOOR_Status change from OPEN to CLOSE=>NormalLog(“在SSA_3站台完成的自动关门操作.”);
步骤S401将对上述脚本进行解析,当脚本中存在无法解析的部分时,在步骤S402中将被发现并记录,并通过步骤S403进行错误点的详细展示,由于本次脚本设计的格式正确,将直接进行步骤S404,对自动分析脚本进行可执行化操作,目前采用的是生成python代码的方式,具体形式如下:
if ccnv.correct_docking[k]==True and ccnv.docking_zone_id[k]==SSA_1.id:
if ccnv.Manual_door_opening_management[k]!=True or ccnv.Manual_door_opening_management[k]!=True:
AnalysisLog(False,"在SSA_1站台的门控方式不是手动,与预期不一致!!!")
if ccnv.TD_state[k-1]==CLOSE and ccnv.TD_state[k-1]==OPEN:
AnalysisLog(True,"在SSA_1站台完成的手动开门操作.")
if ccnv.TD_state[k-1]==OPEN and ccnv.TD_state[k-1]==CLOSE:
AnalysisLog(True,"在SSA_1站台完成的手动关门操作.")
if ccnv.correct_docking[k]==True and ccnv.docking_zone_id[k]==SSA_2.id:
if ccnv.Manual_door_opening_management[k]!=False or ccnv.Manual_door_opening_management[k]!=True:
AnalysisLog(False,"在SSA_2站台的门控方式不是半自动,与预期不一致!!!")
if ccnv.TD_state[k-1]==CLOSE and ccnv.TD_state[k-1]==OPEN:
AnalysisLog(True,"在SSA_2站台完成的自动开门操作.")
if ccnv.TD_state[k-1]==OPEN and ccnv.TD_state[k-1]==CLOSE:
AnalysisLog(True,"在SSA_2站台完成的手动关门操作.")
if ccnv.correct_docking[k]==True and ccnv.docking_zone_id[k]==SSA_3.id:
if ccnv.Manual_door_opening_management[k]!=False or ccnv.Manual_door_opening_management[k]!=False:
AnalysisLog(False,"在SSA_3站台的门控方式不是全自动,与预期不一致!!!")
if ccnv.TD_state[k-1]==CLOSE and ccnv.TD_state[k-1]==OPEN:
AnalysisLog(True,"在SSA_3站台完成的自动开门操作.")
if ccnv.TD_state[k-1]==OPEN and ccnv.TD_state[k-1]==CLOSE:
AnalysisLog(True,"在SSA_3站台完成的自动关门操作.")
完成步骤S404后,自动分析模块将通过步骤S405实时接收系统诊断日志和网络抓包日志,其中本次实例中主要需要使用到的是车载控制器中的CCNV软件(车载控制器非安全软件)的诊断数据进行分析,也即上述可执行程序中的ccnv.表示的内容。
在步骤405检索到满足自动分析条件的记录时,将生成测试日志,并通过步骤S406进行输出,日志的形式类似如下:
检测成功,在SSA_1站台完成的手动开门操作.
检测成功,在SSA_1站台完成的手动关门操作.
检测成功,在SSA_2站台完成的自动开门操作.
检测成功,在SSA_2站台完成的手动关门操作.
检测成功,在SSA_3站台完成的自动开门操作.
检测成功,在SSA_3站台完成的自动关门操作.
步骤S407将实时查看自动分析脚本是否有更新,若有更新将采用新脚本重新载入进行结果判断,本次实例自动分析脚本不更新,因此将继续执行步骤S408,待收到测试结束指令后,将结束本次的自动分析流程。
通过以上实例可知,虽然本次的测试过程步骤复杂,但是测试人员所需编写的测试执行和自动分析脚本简单、易懂,其他复杂的工作均交给自动化测试系统自动完成,对于降低列车自动控制系统的测试和验证成本、提高测试效率有极大的帮助。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种用于轨道交通列车自动控制系统的自动化测试系统,其特征在于,该自动化测试系统包括用于解析列车自动控制系统所用数据的数据分析模块M1、用于对列车自动控制系统的所有外围设备进行仿真的脚本运行模块M2、用于模拟相关的司机驾驶列车操作的司机操作仿真模块M3和用于生成相应的测试日志报告的日志自动分析模块M4,所述的数据分析模块M1和司机操作仿真模块M3分别连接脚本运行模块M2,所述的列车自动控制系统分别连接脚本运行模块M2、司机操作仿真模块M3和日志自动分析模块M4;
所述的数据分析模块M1对数据中的线路链接关系、站台、信号机、道岔、屏蔽门、轨道和信标信息进行整理和特征提取,同时根据数据描述的列车运行交路,对每个交路中的设备进行编号处理,计算出每个交路中的设备特征关系,再根据测试特征脚本选取符合条件的交路,将其作为本次测试使用的列车运行线路,自动生成脚本运行所需的初始化基本信息,包括线路信息和线路特征点位置,以供脚本运行模块M2使用;
所述的脚本运行模块M2根据数据分析模块M1生成的线路信息和设备位置信息,自动生成列车的初始位置脚本,以及列车运行线路脚本,同时根据线路信息搜索站台正确停靠点,自动获得该条线路的所有站台停车点信息,再解析测试场景脚本,并匹配当前的测试特征数据,结合司机操作仿真模块生成的司机操作信息,自动计算出列车运行操作指令,并发送给列车自动控制系统,用于实现相应测试场景的仿真和相应功能的测试。
2.根据权利要求1所述的一种用于轨道交通列车自动控制系统的自动化测试系统,其特征在于,所述的司机操作仿真模块M3,实时获取车载控制器发送给人机接口的显示信号以及车载控制器同步发送给仿真车辆的列车控制信号,自动提取当前的模式、参考速度、列车操作提示,并将其转换为司机操作指令,发送给脚本运行模块M2。
3.根据权利要求2所述的一种用于轨道交通列车自动控制系统的自动化测试系统,其特征在于,所述的日志自动分析模块M4解析已编辑好的测试自动分析脚本,生成自动分析规则,实时监控列车自动控制系统的诊断数据,被测系统与自动化测试系统间的交互信息,并按照自动分析规则进行监控;对异常日志,符合预期的记录,不符合预期的记录进行分类存储,并最终生成相应的测试日志报告。
4.一种采用权利要求1所述的用于轨道交通列车自动控制系统的自动化测试系统的方法,其特征在于,该方法包括以下步骤:
步骤1)数据分析模块M1解析列车自动控制系统所用数据;
步骤2)脚本运行模块M2对列车自动控制系统的所有外围设备进行仿真;
步骤3)司机操作仿真模块M3模拟相关的司机驾驶列车操作;
步骤4)日志自动分析模块M4生成相应的测试日志报告。
5.根据权利要求4所述的方法,其特征在于,所述的数据分析模块M1的具体执行步骤如下:
步骤S101:读取被测系统所用的数据,将数据中的线路链接关系、站台、信号机、道岔、屏蔽门、轨道和信标设备信息进行特征提取并存储;
步骤S102:解析测试人员事先定义好的测试特征脚本,对步骤S101中生成的设备信息进行进一步特征提取,并进行特征匹配,将匹配成功的线路和设备特征进行设备特征编号并存储;
步骤S103:根据S102生成的已编号的测试线路特征数据进行进一步的信息整理,获得测试的相应初始状态信息,包括列车初始位置、运行线路和折返位置信息,并将其发送给脚本运行模块M2。
6.根据权利要求4所述的方法,其特征在于,所述的脚本运行模块M2的具体执行步骤如下:
步骤S201:获取来自数据分析模块M1的脚本初始化信息,自动生成列车初始位置脚本;
步骤S202:在步骤S201的基础上,自动生成运行线路脚本,其中包括信号机、道岔、屏蔽门和进路状态信息;
步骤S203:根据线路信息,自动生成站台停靠站和折返站信息列表,同时进行停车点位置的计算,为后续模拟司机停靠站、站台折返操作指令做准备;
步骤S204:解析测试人员编写的测试场景脚本,并输出给步骤205进行后续的模拟场景指令生成;
步骤S205:根据S204解析的测试场景脚本以及从司机操作仿真模块M3获取到的司机操作仿真指令,动态计算列车的实际运行状态信息和场景指令信息;
步骤S206:根据步骤S205生成的列车运行状态信息和场景指令,转换为列车自动控制系统外部仿真接口的消息,并按照实际接口的要求发送给被测系统,实现相应场景的仿真;
步骤S207:监控脚本结束指令,当结束时,则直接停止后续脚本的执行,反之则返回到S205,周期性执行步骤S205和S206。
7.根据权利要求4所述的方法,其特征在于,所述的司机操作仿真模块M3的具体执行步骤如下:
步骤S301:实时接收车载控制器发送给列车的硬线信号以及发送给列车综合管理系统信息;
步骤S302:与步骤S301同时,通过网络抓包实时获取车载控制器发送给司机人机接口的显示信息;
步骤S303:根据接口协议配置对步骤S301接收到的信息解析,并存储到相应控制指令字段中去;
步骤S304:根据接口协议配置对步骤S302接收到的信息解析,并存储到相应控制指令字段中去;
步骤S305:实时监控司机人机接口视频图像,并与车载控制发送的显示指令进行对比,检测DMI上显示的图像与输入指令是否一致;
步骤S306:根据步骤S303和S304解析出的信息进行整合计算,动态计算出当前运行模式和司机控制相关指令信息,包括驾驶模式、运营模式、列车参考速度、开关门提示信息、发车提示信息、模式转换提示信息和折返提示信息,并发送给脚本运行模块M2;
步骤S307:将步骤S305中检测不一致的进行记录,并输出显示;
步骤S308:监控运行结束指令,当结束时,则直接停止后续程序的执行,反之则返回到S301和S302,周期性执行相应步骤。
8.根据权利要求4所述的方法,其特征在于,所述的日志自动分析模块M4的具体执行步骤如下:
步骤S401:编辑好的自动分析脚本;
步骤S402:判断自动分析脚本是否能够正确解析,若不能,则返回相应错误提示;
步骤S403:对无法进行正确解析的自动分析脚本进行错误日志输出;
步骤S404:对可解析的自动分析脚本进行进一步处理,生成可执行的自动分析规则;
步骤S405:实时获取被测系统的诊断数据以及网络抓包数据,并进行解析处理,最后送入到自动分析规则中进行结果判断;
步骤S406:对自动分析结果进行存储,包括符合预期,不符合预期的结果进行输出显示,并生成相应的报告;
步骤S407:检测自动分析脚本是否更新,当自动分析脚本更新时则返回步骤S401重新进行自动分析脚本的解析处理,反之继续运行;
步骤S408:监控运行结束指令,当检测到结束指令或运行超时,结束流程,反之则返回步骤S405继续周期性执行自动分析指令;
其中当步骤S408是由于超时结束时,将产生超时报警日志,以供测试人员查看。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110048669.8A CN112722016B (zh) | 2021-01-14 | 2021-01-14 | 用于轨道交通列车自动控制系统的自动化测试系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110048669.8A CN112722016B (zh) | 2021-01-14 | 2021-01-14 | 用于轨道交通列车自动控制系统的自动化测试系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112722016A CN112722016A (zh) | 2021-04-30 |
CN112722016B true CN112722016B (zh) | 2022-08-30 |
Family
ID=75593049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110048669.8A Active CN112722016B (zh) | 2021-01-14 | 2021-01-14 | 用于轨道交通列车自动控制系统的自动化测试系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112722016B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835413A (zh) * | 2021-09-22 | 2021-12-24 | 交控科技股份有限公司 | 联锁自动化测试系统、方法、设备以及存储介质 |
CN114489028A (zh) * | 2022-04-01 | 2022-05-13 | 北京全路通信信号研究设计院集团有限公司 | 一种列控系统的测试方法及系统 |
CN116149303B (zh) * | 2023-04-20 | 2023-08-29 | 卡斯柯信号(北京)有限公司 | 一种列车远程限制驾驶模式的测试方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103529711A (zh) * | 2013-10-17 | 2014-01-22 | 北京全路通信信号研究设计院有限公司 | Atc车载设备自动测试方法及系统 |
CN103631257A (zh) * | 2013-12-05 | 2014-03-12 | 中国铁道科学研究院 | 一种地铁列车信号系统自动化测试的方法及系统 |
KR20140114600A (ko) * | 2013-03-19 | 2014-09-29 | 한국철도공사 | 철도 차량 신호 장치용 검사 시스템 |
CN104913942A (zh) * | 2015-06-25 | 2015-09-16 | 株洲南车时代电气股份有限公司 | 一种列车自动运行系统的检测系统 |
CN105912469A (zh) * | 2016-04-11 | 2016-08-31 | 卡斯柯信号有限公司 | 用于轨道交通车载控制器软件的测试脚本自动化检测方法 |
CN107885095A (zh) * | 2017-09-26 | 2018-04-06 | 浙江浙大列车智能化工程技术研究中心有限公司 | Cbtc系统自动化测试装置及其测试方法 |
CN112162916A (zh) * | 2020-08-31 | 2021-01-01 | 北京交大思诺科技股份有限公司 | 可自动生成测试脚本的lkj测试系统 |
-
2021
- 2021-01-14 CN CN202110048669.8A patent/CN112722016B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140114600A (ko) * | 2013-03-19 | 2014-09-29 | 한국철도공사 | 철도 차량 신호 장치용 검사 시스템 |
CN103529711A (zh) * | 2013-10-17 | 2014-01-22 | 北京全路通信信号研究设计院有限公司 | Atc车载设备自动测试方法及系统 |
CN103631257A (zh) * | 2013-12-05 | 2014-03-12 | 中国铁道科学研究院 | 一种地铁列车信号系统自动化测试的方法及系统 |
CN104913942A (zh) * | 2015-06-25 | 2015-09-16 | 株洲南车时代电气股份有限公司 | 一种列车自动运行系统的检测系统 |
CN105912469A (zh) * | 2016-04-11 | 2016-08-31 | 卡斯柯信号有限公司 | 用于轨道交通车载控制器软件的测试脚本自动化检测方法 |
CN107885095A (zh) * | 2017-09-26 | 2018-04-06 | 浙江浙大列车智能化工程技术研究中心有限公司 | Cbtc系统自动化测试装置及其测试方法 |
CN112162916A (zh) * | 2020-08-31 | 2021-01-01 | 北京交大思诺科技股份有限公司 | 可自动生成测试脚本的lkj测试系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112722016A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112722016B (zh) | 用于轨道交通列车自动控制系统的自动化测试系统及方法 | |
CN110789568B (zh) | 一种基于列车运营场景的故障诊断方法与系统 | |
CN102004489B (zh) | 基于数据驱动的车载运行控制系统的测试系统及方法 | |
CN103219030B (zh) | 一种车载视频与总线数据同步采集及回放的方法 | |
CN111399481B (zh) | 一种自动驾驶场景信息收集及远程升级方法及系统 | |
CN101186217B (zh) | 调车机车作业安全监控专家系统的结构 | |
CN103529711B (zh) | Atc车载设备自动测试方法及系统 | |
CN111007837B (zh) | 一种对tcms进行测试的测试系统和方法 | |
CN103049379B (zh) | 一种系统测试的方法 | |
CN110126886B (zh) | 驼峰安全防护信息系统 | |
US20200156678A1 (en) | Railroad track verification and signal testing system | |
CN111857090B (zh) | 一种用于ats性能测试的方法和装置 | |
CN113268415A (zh) | 一种基于测试用例的联锁规则自动测试系统及方法 | |
CN112000557A (zh) | 轨道交通信号系统自动化测试装置 | |
CN108776452B (zh) | 一种特种设备现场维保监控方法及系统 | |
CN101106559B (zh) | 基于报文解析的atp/ato调试方法 | |
CN104636243A (zh) | Gsm-r网络测试日志数据可视化回放与统计分析系统及方法 | |
CN111062496A (zh) | 一种基于LabVIEW的城市轨道交通车站屏蔽门智能检修系统 | |
CN113590468A (zh) | 列车自动监控系统ats接口自动化测试方法及装置 | |
CN113434420A (zh) | 设备测试方法及装置 | |
CN110398949B (zh) | 一种基于黑箱测试的高速铁路列车运行控制系统的测试平台 | |
CN114493196A (zh) | 一种数据分析方法、系统、电子设备及存储介质 | |
CN114691488A (zh) | 一种联锁系统自动化测试系统及方法 | |
CN113886268A (zh) | 基于testbed平台的轨旁控制器自动化测试方法 | |
CN116513277B (zh) | 一种基于lkj运行记录数据的列控场景测试方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |