基于图像识别技术的联锁系统自动测试技术研究
2022-02-15陈宁
陈宁
广州城市职业学院 广东 广州 510405
引言
计算机联锁系统是车站信号控制系统的核心设备,是保证行车安全高效作业的关键。确保联锁关系正确是联锁设计、设备制造、施工、维护应遵循的基本原则,而联锁试验是验证信号设备联锁关系正确的主要手段之一,正确的试验方法、完整的试验内容以及彻底的试验过程是联锁试验最基本的要求。
1 联锁测试概述
对联锁系统的测试通常采用黑盒测试方法,测试人员根据测试案例,在人机交互平台操作相关命令,联锁系统在收到命令后,根据采集到的轨旁设备状态进行逻辑运算,并将运算结果反馈给人机交互平台,测试人员根据相关的设备状态对测试结果进行判定。因此,对联锁系统进行自动化测试,需要[1]:①模拟测试人员的操作,自动形成仿真命令,并对测试结果进行判定;②模拟轨旁设备状态,并将设备状态实时发给联锁系统。结合上述测试需求,设计了测试平台,其中控制平台负责模拟测试人员生成并发送仿真命令,轨旁仿真用来模拟轨旁设备的状态。测试过程为测试人员选择测试项,测试平台向被测联锁系统发送仿真命令和设备状态数据,并接收状态数据,解析后根据期望结果判定案例执行结果。
2 研究思路
铁路站场数据自动提取方法整体研究思路。计算机联锁上位机界面将站场信息通过图形化方式显示,作为图像识别系统的输入;分析信号设备显示特征,提炼关键信息并构建站场数据模型;研究学习图像识别相关算法,对不同类型的信号设备进行识别试验;结合设备的显示特征,设计流程识别信号设备,并将提取的站场数据保存在数据模型中。
3 自动测试平台模型
根据自动化程度的不同,自动测试平台可分为二大类:自动执行类和自动判定类。自动执行类测试可以实现自动下发操作命令,但是测试结果还需要通过人工识别并进行判定;自动判定类测试,在自动下发操作命令的基础上,可自动判定测试结果的正确性。根据判定信息的不同,自动判定类测试又可分为逻辑判定型和显示判定型。其中逻辑判定型是将联锁机运算结果与预期结果进行比较,确定其正确性;显示判定型是将操作机显示状态信息与预期结果比较,确定其正确性。逻辑判定型自动仿真测试平台主要是针对供应商的计算机联锁车站软件测试进行设计开发,又称为“供应商自动测试平台”,其自动化程度相对更高。因此,本文选取该类平台进行研究,主要分三步进行:①对自动测试平台进行风险分析,识别失效模式,分析故障原因,判断故障影响,制定风险控制措施;②设计一套应用自动测试平台的联锁车站软件测试方案(简称“新联锁车站软件测试方案”);③采用过程风险分析方法对新联锁车站软件测试方案进行验证。
4 基于通信接口的联锁软件自动测试工具软件
通过控显软件与联锁软件之间的通信接口A,测试工具软件向联锁软件输入各种操作命令,例如:办理进路、单操道岔等;通过I/O接口仿真软件与联锁软件之间的通信接口B,测试工具软件可以获得信号设备的状态信息(例如:区段状态、道岔位置等),同时获得联锁软件输出的控制命令(例如:开放或关闭信号,转换道岔位置等)[2]。通过对比联锁软件的输出与预期结果的一致性,测试工具软件即可实现对联锁软件功能及配置数据的正确性、完整性的自动化测试。但是,除了联锁软件以外,计算机联锁产品中还包括用于提供操作显示界面的控显软件。即使联锁软件中的功能逻辑和配置数据是正确的,如果控显软件存在缺陷,导致操作显示界面的功能或显示错误,仍然会影响车站运输作业的安全和效率。因此,对于操作显示界面的显示及操作功能,以及控显软件与联锁软件之间的通信接口,也必须进行测试,确认其正确性和完整性。但是,脱离了联锁软件的配合,控显软件无法单独实现任何显示和操作功能。因此,要想测试操作显示界面,必须同时运行联锁、控显软件,而且其测试方法和操作步骤与测试联锁软件时有很大程度的重叠。
5 开始试车场景分析
信号系统试车:试车线获得车辆段下发的试车线控制权,开始试车,列车可以在试车线进行信号系统功能测试和调试。在任何时候,仅允许一辆列车在试车线上试验。试车线能够测试车载信号系统ATP/ATO以及车载设备与车辆接口的功能,能对车载信号系统进行各种速度等级的列车自动休眠/唤醒、ATP功能、全自动驾驶、ATO自动驾驶、牵引和制动性能试验、站台自动发车、ATO精确停车、模拟站间运行、自动折返(试车线两端都能自动折返)、车门及安全门的模拟控制、远程复位、车辆接口、车-地通信及驾驶模式间转换、联锁等功能的测试。传统模式的试车线除具备正常功能验证外,同时具备对各子系统的故障模拟测试、故障复现实验、故障确认和软硬件升级验证等,均不会影响车辆段、正线的正常运营;但合用车辆段设备的试车线需要考虑测试的故障内容、测试故障影响范围,测试故障对车辆段日常运营的影响。测试受限功能主要包含以下内容。
5.1 显示特征分析
铁路信号设备主要包括信号机、道岔和轨道电路,文献对各信号设备在计算机联锁上位机界面中的绘制特点作了明确规定[3]。①列车信号机(包括出站兼调车)采用双灯位,即用2个圆圈表示;调车信号机采用单灯位,即1个圆圈表示;信号机基座采用1段短竖线表示;高柱信号机在基座和圆圈之间增加1段短横线来表示灯柱;信号机名称用银白色表示。②道岔斜线在屏幕中的倾斜角度宜一致,应提供道岔的状态信息,如表示道岔开通位置的短线在道岔定位时显示绿色,反位时显示黄色等。③轨道区段线条不能有明显锯齿,表示到发线的线条间距统一,应提供轨道区段空闲、占用等状态信息,轨道区段名称采用银白色。对道岔的凸包形状进行了分析:单动道岔的凸包形状为三角形和梯形,双动道岔为斜直线,交叉渡线为菱形。
5.2 自动测试平台风险分析
风险分析的方法之一,失效模式影响与危害性分析(Failure Mode Effects and Criticality Analysis,FMECA),主要用于识别产品失效模式及其可能产生的影响,是一种定性的分析技术。FMECA在产品生命周期各阶段均可采用。在产品使用阶段应用FMECA,可以分析研究产品使用过程中可能或实际发生的故障、原因及其影响,为提高产品可靠性、可用性、维护决策等提供依据。常用的FMECA方法可细分为功能FMECA、硬件FMECA、软件FMECA、过程FMECA等。对于自动测试平台的风险分析采用功能FMECA,研究步骤为:①功能分析;②约定分析层次;③识别失效模式;④分析故障原因;⑤判断故障对于不同层次的影响;⑥制定风险控制措施。步骤③—步骤⑥以自动测试平台FMECA表的形式体现。
5.3 基于实时视频捕捉的图像识别技术
用高清数字摄像机实时拍摄控显机的显示界面,通过适当的算法提取画面中各个图形元素的特征值,然后与已知的各种图形元素的特征值(模板)进行比对,从而识别出当前界面中是否存在某个已知的图形元素。这种技术方案与目前已经广泛应用的人脸识别系统的原理比较类似。采用基于实时视频捕捉及模板匹配的图像识别技术,有以下几个方面的优点[4]。①测试主机及其外围设备独立于被测系统,不需要在被测系统中安装任何用于图像识别或自动测试的软件,不会对被测系统的正常运行产生影响。②图像识别算法属于通用算法,经过多年的发展,大部分常用算法已经用各种常用编程语言实现,包括一些开源、免费的代码库(例如:OpenCV库),从而降低了图像识别功能的开发难度。
5.4 数据分析处理
在进行联锁试验操作时,试验分析系统实时采集联锁设备状态及按钮操作信息,并自动查找匹配当前操作的进路以及具体的试验项。将采集筛选出的联锁试验相关信息与该试验项判定条件进行智能分析判定,确定该试验项是否试验正确、完整[5]。若该试验项采集到的联锁设备状态及按钮操作信息与判定条件完全吻合,则系统判定该项试验完成,系统自动在联锁试验检查表中该进路的该试验项下打“√”符号。若该试验项直至试验结束采集到的联锁设备状态及按钮操作信息与判定条件部分吻合,则系统判定该项试验不完整,系统自动在联锁试验检查表中该进路的该试验项下用不同颜色标记,提示试验人员该项试验不完整。若系统一直未采集到与该试验项判定条件相关的设备状态及按钮操作信息,则系统判定该项还未进行试验操作,联锁试验检查表中该进路的该试验项下一直处于空白状态,提示试验人员该项还未开始试验。
5.5 模板匹配
模板匹配算法在图像处理中通常被应用于字符识别,而字符识别算法也不仅限于模板匹配,应用较为广泛的还有人工神经网络(ANN,ArtificialNeural Network)与支持向量机(SVM,SupportVector Machine)算法,这2种算法在识别率和识别时间上均优于模板匹配算法,但都需提前进行大量样本字符的训练,更适合对复杂文本进行识别[6]。在上位机界面中,设备名称通常仅由字母和数字组成,构成简单,从软件设计成本考虑无须采用ANN或SVM,因此本文采用模板匹配算法对信号设备名称进行识别。
6 新联锁车站软件测试方案验证
对新联锁车站软件测试方案采用过程FMECA方法进行验证。参约定过程FMECA分析层次:以新联锁车站软件测试方案为初始约定层次;以预测试、出厂测试等环节为中间约定层次;以“P3-执行预测试”“P4-生成自动测试案例”等活动为最低约定层次[7]。过程FMECA针对最低约定层次可能发生的失效模式进行识别及分析,对薄弱环节制定并采用改进措施,进而提高软件测试结果的质量和可靠性。由于过程FMECA与功能FMECA的应用方法类似,故不再列举完整记录。以最低约定层次“P4-生成自动测试案例”为例,列举过程FMECA记录。按照上述分析方法逐一对新联锁车站软件测试方案中所有活动进行分析,证明所有控制措施能将过程风险完全消除或减小到可接受水平,证明新联锁车站软件测试方案有效、可靠。
7 结束语
本文研究了联锁系统的自动化测试技术,开发了基于图像识别技术的自动化测试平台,该平台将专家经验融合进了自动测试,可以对站场数据进行全覆盖测试,特别适用于中型和大型站场测试。由于通信层可以增加和修改通信协议适配不同的被测对象,因此具有良好的可扩展性,同时也可以运用在其他安全系统,比如智能汽车等领域的自动化测试。该平台大为提高了联锁系统测试的完备性和自动化程度,降低了成本。