基于TestStand的机车TCU控制逻辑软件自动化测试

2018-01-05 11:08段静余长超陈展
中国新技术新产品 2018年22期
关键词:自动化测试

段静 余长超 陈展

摘 要:本文在对测试环境需求分析的基础上,阐述了利用OPC方式与机车TCU控制逻辑软件通信互联,从而实现测试环境的纯软构建。并借助NI TestStand软件测试管理工具,设计测试序列,实现机车TCU逻辑控制軟件的自动化测试。通过实际项目测试应用,该平台满足了对TCU逻辑软件自动化测试的需求。该方法具有很强的通用性,适用于同类型的软件测试活动。

关键词:OPC;TestStand;自动化测试

中图分类号:TK424 文献标志码:A

Abstract:This paper expounds the use of OPC mode and the communication of locomotive TCU control logic software based on the analysis of test environment requirements,so as to realize the soft construction of test environment. With the help of NI TestStand software test management tool, test sequence is designed to realize automatic test of TCU logic control software for locomotive. Through the actual project testing application, the platform meets the need of automatic testing of TCU logic software. Its very versatile and is suitable for the same type of software testing activities.

Keywords:OPC;TestStand; Automated test

0 引言

随着当前国内外轨道交通的不断发展,轨道车辆需求量也逐年攀升。牵引系统作为轨道车辆的“心脏”,承担着非常重要的角色。对于TCU逻辑控制软件的可靠性要求越发严格,不同市场项目的软件测试任务也越来越重。目前已经构建了TCU半实物仿真测试台以及TCU功能测试台,半实物仿真测试台注重于算法研究及TCU软件性能分析,TCU功能测试台注重于TCU的基本功能验证。但由于受测试台资源的限制以及市场项目进度紧张的压力,现有资源远不满足TCU控制软件逻辑功能的测试验证需求,因此研究开发了基于纯软件的自动化测试方法,实现可以更加便捷、高效地进行测试,减少在软件设计阶段存在的问题及缺陷,并可进行现场故障及问题的再现和分析,缩短产品开发周期、提升产品设计质量。

1 方案分析

机车TCU逻辑控制功能,由TCU机箱中的SMC主控插件的控制软件实现,主要完成对机车牵引变流器的各种逻辑控制功能,其中主要包括:主电路接触器控制逻辑、变流器模块脉冲启/停控制逻辑、故障诊断与保护控制逻辑、牵引制动力特性控制、功率分配控制等。为了快速进行软件在环,对TCU主控软件测试。同时,由于要实现对主控插件软件的测试,需要模拟TCU机箱中其他插件信号,通过外部通信接口方式替代实物机箱中的背板总线。

机车TCU控制软件采用KW公司的Multiprog软件,该软件具有OPC通信接口,并可在PC机上虚拟服务器,TCU控制软件编译完成后,可将目标码下载到虚拟的服务器中。仿真平台软件采用NI公司的图形化编程软件LabVIEW,LabVIEW带有基于DataSocket技术的OPC通信模块。

OPC(OLE for Process Control)是一个工业标准,为基于Windows的应用程序和现场过程控制应用建立了通信的桥梁。它改变了之前每一个现场应用软件都需要编写专用的接口函数方式,通过一种具有高效性、可靠性、开放性、客户操作性的即插即用的设备驱动程序OPC完成。它是以微软公司的OLE技术为基础,通过提供一套标准的OLE/COM接口完成,允许多台微机间交换文档、图形等对象。通过该标准,可将测试软件与被测软件快速建立数据连接,从而实现数据闭环。

同时为了提高测试验证效率,需要一种简便快捷的自动化测试方式。NI TestStand可用于开发、执行和部署测试系统软件。此外,用户还可使用任何编程语言编写的测试代码模块开发测试序列。测试序列可以指定执行流、生成测试报告、进行数据库记录,用户可借助易用的操作界面,快速部署测试系统进行自动化测试。

2 测试系统的组成与方案设计

针对机车TCU纯软测试的需求,设计一种基于NI的自动化测试仿真平台。被测软件通过设计OPC接口,与测试环境软件数据互联,同时设计基于TestStand的顶层管理。实现对被测软件的自动化测试。机车TCU纯软件自动化测试拓扑如图1所示。

针对机车TCU纯软件测试方案的分析,本方法仅需1台PC机即可完成所有测试工作。其中,被测软件和自动化测试环境软件安装在本地,两个软件系统间通过OPC服务器建立连接。在自动化测试软件中,根据仿真模型的构建需要,并结合通用平台化的考虑,该部分内部可分为实验环境应用软件、通用接口应用层软件、外部测试模型注入、自动化测试接口软件以及通信软件等。在实验环境应用软件内部,由牵引变流器传动模型和TCU机箱插件模拟组成。该部分与通用接口应用层软件、外部测试模型注入软件、自动化测试软件分别采用不同的端口进行本地TCP通信,将各个不同的模块进行集合。软件开发人员和软件测试人员既可以手动测试,也可以通过设计测试用例的测试序列进行自动化测试。

3 机车TCU控制逻辑纯软件仿真平台的实现

根据用户的需求,需要实现的功能包括:(1)TCU外部环境模拟;(2)TCU机箱内部插件数据模拟;(3)OPC通信;(4)波形监视、记录与回放;(5)外部测试模型接口设计。

3.1 TCU外部环境模拟

TCU外部环境模型包括主电路、司控台、模拟司控台、变流器数字量模型、电压电流模型、温度压力模型、机车运行模型等。

3.1.1 主电路模型

根据实际装车外部车辆电气,直观展示从供电电源到变压器、中间直流回路、到逆变器、交流电机、辅助用电设备等车辆电气装置的运行情况。通过主电路,可以查看各个元器件的工作状态及电路中各传感器读数,并可强制控件数据,主电路中的数据均来源于各插件模型和外部环境模型。

3.1.2 模拟司控台模型

模拟司控台通过OPC通信端口,直接与TCU进行数据交互,相比司控台,模拟司控台中数据更加齐全。司控台用于装车程序的调试,模拟司控台用于装车前,进行各种调试试验时,下发各种命令及TCU状态显示。模拟司控台的输出有主控制命令(主断、向前、向后、牵引、制动等)、模拟量给定(力矩、四象限电流、逆变电流、辅逆频率等)、各插件软件版本号、四象限模块/逆变模块/辅逆模块元件故障、模块过热故障、主控制命令、接触器及模块隔离状态显示等。

3.1.3 变流器数字量模型

变流器数字量模型包括TCU采集的所有数字量信号,如变流器元件故障,模块过热信号,充电短接接触器状态,主断状态等。为能够真实反应主变流器对TCU命令及外部环境的响应,结合DIO插件模型、司控台、主电路进行逻辑模拟。

3.1.4 电压电流模型

电压电流模型是根据能量平衡原理,利用电机侧功率及一些确定的电压量,来对变流器中各电压电流传感器的数值进行建模。由于模拟了电传动系统的所有外部环境,因此对TCU的所有输入电压电流信号进行建模,包括原边电流、四象限输入电流、中间电压和半中间电压、斩波电流等。

3.1.5 机车运动模型

机车运动模型主要是利用机车传动系统的参数及外部线路数据,配置相应的列车阻力系数、坡道、机车重量、转弯半径、齿轮传动比等,根据MCC插件模型输入的给定牵引/制动力矩、轮径、牵引/制动命令、过分相发电命令等,实时计算出输出电机轴的实际力矩、电机实时转速等。

3.1.6 网压模型

网压模型根据环境模型参数设置,司控台的过分相命令,变流器数字量模型的主断状态,MVB插件模型的电机速度、手柄给定力等,计算当前网压值,并能向变流器数字量模型输出过分相分主断信号,输出过分相预告信号。仿真模型中假设网压与当前机车运行工况及功率无关,网压模型可由正常工况和4种非正常工况(网压突升、突降、波动和过分相)综合而成,每种非常工况下的参数均可进行配置。

3.1.7 温度压力模型

温度压力模型是根据外部环境温度、用户设置参数及一些相关数据,建立变流器TCU采集的各种温度,水压数据模型。温度压力模型依据机车运动模型输出的实际力矩、电机转速,ACC插件模型的辅变实际输出频率,能够模拟出水温、水压、柜体温度、油温、电机温度等。

3.2 TCU机箱插件模拟

TCU插件包括所有通过AMS总线与SMC插件进行数据通信的插件,主要包括LSC、MSC、LCC、MCC、ACC、DIO插件等模型,建立这些插件模型的目的是模拟各插件与SMC插件的数据流关系及各插件的软件功能。

3.3 OPC通信

机车TCU控制软件与仿真平台软件通过OPC建立通信,SMC软件与各外部环境模型、插件模型、司控台、模拟司控台等交互的所有数据均可通过仿真平台模拟实现。SMC软件与仿真平台进行交互的数据按照最大接口单元进行设计,形成通用的通信协议配置文件,可在其基础上,针对具体车型的TCU软件,配置具体的通信协议,满足对多种车型TCU的需求。其中OPC通信软件代码中,分别在OpenDataSocket模块中设置读/写模式,通过数据转换,分别采用ReadDataSocket和WriteDataSocket进行数据读写操作,并根据软件工程内部通知器进行数据传输,保证数据同步的处理。

3.4 波形监视、数据记录与回放

快速波形监视软件主要用来对TCU逻辑控制软件内部重要数字模拟量的状态和数值进行监视,通过OPC服务器相应端口以10ms为周期接收256路数字量和64路模拟量。用户可根据需要配置任意16路数字量和16路模拟量进行实时监视。

同时,可以根据测试的需要,保存当前测试过程中的所有通道数据,每通道数据以Excel格式文件进行保存,并以实验当前时刻命名保存在安装软件的对应目录下。

测试环境软件还支持数据回放功能,通过界面操作,选择用户指定路径下的数据文件,在数据回放软件界面中通过勾选待观测通道进行回放分析。

3.5 外部测试模型接口设计

对于有特殊需求的仿真模型,软件测试人员可通过开放的外部接口,遵循软件内部制定的通信协议,通过外部的仿真模型数据覆盖软件测试软件内部已有的测试数据流的方式,即可实现外部数据注入。

4 自动化测试设计

NI TestStand是可立即执行的测试执行管理软件,用于组织、控制和执行自动化原型设计、验证或制造测试系统。加入在LabVIEW、Visual Basic .NET、Visual C/C++、LabWindows/CVI和C#中编写的测试程序,使用该工具可快速创建测试序列。使用NI TestStand编写的系统可与源代码控制、需求管理、数据管理系统进行集成。

当采用自动化测试手段时,手动执行测试环境软件无效,所有的外部接口数据中,自动化测试管理软件中的优先级最高,系统只响应TestStand测试序列中的测试数据。

借助于工具自带的序列编辑器,用户可创建测试序列,实现使用任何编程语言编写的代码模块执行的自动化。根据测试用例,设计对应的起始条件PreUUT、执行过程MainSequence,后处理PostUUT自动读取对应协议位置的信号,与预设值进行比较,得到测试用例是否通过的结论。同时根据测试人员的测试需求进行人机接口设计,测试结果信息将自动记录在测试报告或数据库中。在测试过程中,可动态观察到每个步骤的执行情况,方便测试人员追溯历史测试数据。

5 测试应用

机车TCU控制软件逻辑自动化测试平台,目前已经用于神华八轴机车、南非22E机车的软件测试中。通过该自动化测试平台的实际使用,帮助设计人员发现了TCU逻辑控制软件存在的问题和缺陷。在复用仿真平台软件的基础上,较容易应用于动车TCU的逻辑验证。

利用LabVIEW图形化设计工具和TestStand程序管理平台,可以快速开發出适应具体需求的测试程序并可以方便地进行修改,且开发周期短,极大地提高了测试工作效率,保证软件产品质量,有效地保证了公司产品的可靠性。

参考文献

[1]陈树学,刘萱. LabVIEW宝典[M].北京:电子工业出版社,2011.

[2]成正林,李学明,黄明明,等.机车传动系统控制逻辑纯软件仿真测试平台开发[J].机车电传动,2016(2):98-100.

[3]王书渊,文龙贤,张奕黄.基于虚拟仪器的城轨车辆牵引测试系统设计[J].电力机车与城轨车辆,2006(6):18-19.

[4]钟晓军.大功率货运电力机车牵引重在列车方案计算分析[J].铁道机车车辆,2013,33(12):61-62.

[5]熊斌.基于LabVIEW及TestStand的自动化功能测试系统研究[D].哈尔滨:哈尔滨工业大学,2010.

猜你喜欢
自动化测试
浅谈空调控制器自动化测试