基于PLC 的的车控软件通用测试平台
2019-12-19黄媛媛姜小燕张士军
黄媛媛,姜小燕,张士军
(北京航天发射技术研究所,北京,100076)
0 引 言
特种车车控软件通常为系统配套的专用软件,其功能、性能、接口、可靠性和安全性等要求与系统总体方案、液压控制流程、电气接口以及目标机平台等分系统密切相关,其软件测试环境必须能够模拟全部外部接口信号,才能够确保软件测试的覆盖性要求[1]。
以往的车控软件测试,主要依赖于真实的设备及分系统和系统环境,优点是系统接口特性与真实使用情况一致;缺点是缺乏异常信号模拟的接口和方法,不利于系统的可靠性、安全性测试。另外,测试平台需要设备和系统实物来搭建,需要完成实物样机才能开始软件的测试,不利于系统的并行开发,延长了研制周期,而专门配置相似的测试实物又成本太高。
近年来,随着电子技术、计算机技术和软件技术的发展,车控软件测试开始应用仿真模拟环境,即针对车控软件的测试需求,配置外部信号模拟环境,通过组态软件等工具提供信号输入、修改和显示的测试界面,在实物测试和系统联调之前,测试到大部分的功能、性能和接口项目,也可以实现大部分的异常状况模拟,为可靠性、安全性测试提供了方便[2]。但通常的做法是一个型号配置一套专用的信号模拟环境,针对性强,但每个型号都要专门配套,设备成本高,测试用例重用性差。
本文综合分析车控软件的特点和测试需求,以PLC 控制器为核心设计一种通用的测试环境,可用于多种型号的车控软件测试。
1 车控软件测试环境需求分析
车控软件的测试环境应以软件宿主机为核心,配套外部接口模拟环境,提供信号输入界面、信号显示界面、流程执行状态显示界面、异常状态显示界面以及可靠性、安全性相关的专项测试界面,为软件功能、性能、接口以及可靠性、安全性等测试提供灵活方便的输入途径和显示界面。
通过对多个型号的特种车车控软件测试需求的分析,可知车控软件测试环境的主要需求是接口信号需求,包括检测信号、控制信号、流程状态和异常信号模拟。
1.1 车控软件功能需求
车控软件主要用于控制特种车进行四、六支腿调平,支撑架起竖、回转台回转功能以及控制所有机构归位成行驶状态,需要实时显示控制过程中的压力、机构行程、角度等信息,具备一定的故障诊断能力。
1.2 车控软件接口分析
车控软件的检测对象主要有:液压系统压力和流量、支腿伸/收到位开关或支腿高度位移量或支腿触地压力、车架水平度、起竖、回转及下放到位开关、起 竖角度和回转角度、垂直度、关键位置(如起竖臂78°)接近开关和其它液压检测对象。这些监测对象对应的电器元件或传感器的特性决定了电气系统的输入输出口设计,同时也提出了软件监测的采集要求,包括监测信号的数据规格、变换要求、采集频率、防抖以及防干扰处理等要求。不同的对象,其信号特性不同,接口设计也不同,相应的采集、处理方法也有所区别。按照接口类型进行分类,车控软件的检测信号如表1 所示。
表1 车控软件检测信号汇总(输入接口) Tab.1 Collection Signals of Vehicle Control Software (Input Interface)
车控系统的控制对象主要有:液压系统压力调定控制的开关阀、数字阀或电机,各路流量调定控制的开关阀或数字阀,支腿伸/收控制阀和起竖臂(架)起竖、回转及下放开关阀。对应的信号类型主要是开关量、数字量或模拟量,按照接口类型进行分类,车控软件的控制对象接口信号如表2 所示。
表2 车控软件控制信号汇总(输出接口) Tab.2 Control Signals of vehicle Control Software (Output Interface)
1.3 车控软件测试流程
车控系统液压控制方案确定了软件输出控制的详细步骤及时序要求,也叫控制流程。
描述控制流程使用工步、分工步的概念。通常的含义是:控制流程划分为展开和撤收两个流程。展开流程划分为伸支腿、调平、起竖以及支撑锁定等工步;撤收流程划分为解锁、下放、收支腿等工步。每个工步又进一步划分为一系列控制动作(或叫分工步、子工步),每个控制动作都规定了具体的执行条件、控制动作、输出参数以及延时要求。控制软件必须严格按照流程要求的步骤和延时要求设计控制模块的处理流程。
车控软件测试中需要检测控制流程的执行过程,通常的要求是显示正在执行的流程状态、工步、分工步以及全部检测信号的实时显示。
1.4 故障模拟
工步控制过程中,需要落实系统的可靠性、安全性要求。体现在控制流程中即实时监测特种车状态信号,在预定的时间内如果检测不到预期的信号,则进行针对性的处理。具体的处理方法根据所处的流程和工步以及具体的信号进行综合分析,对于不同的危害情况分别给予容错处理、警告提示或报错急停等处理。
异常状况的处理,一方面要采取容错设计,确保任务完成。容错设计要具体分析,主要是确认个别信号异常等错误情况对系统任务完成影响不大时,只给出错误提示,或者等待操作手确认,得到确认后继续执行后续控制任务;另一方面要采取避错设计,确保可靠安全,对于危害较大的情况必须按照系统要求紧急报错停机。如某些型号中,方向机零位传感器异常信号的模拟、调平精度超差信号模拟、瞄准精度超差模拟和通讯异常模拟等。
车控系统通常还会设计一个急停按钮(键),用于操作手发现异常后的人为停机。因此,车控系统软件引入两个概念,即软急停和硬急停。软急停是指上述工步控制中等待预期的信号超时后紧急报错停机的情况;硬急停是指操作人员按下急停按钮(键)后产生的紧急停机情况。这两种情况下,软件执行的停机控制输出基本一致,不同的是停机后的处理,有的型号或有的工步要求急停后不容许继续执行,有的则要求通过面板“转移”按键继续执行,这些需要车控软件测试环境配合来完成功能测试。
2 通用测试平台设计
2.1 设计原则
车控软件测试环境设计遵循通用、低成本和高可靠的原则:
a)通用性:可模拟多种型号特种车的全部信号和流程以及大多数的异常输入;
b)低成本:作为实验室配套的测试环境,选用低成本的器件和设备;
c)高可靠性:作为测试平台,自身信号的正确和可靠相当重要。
基于上述原则,车控软件通用测试环境的总体设计方案是:基于PLC 控制器,利用其模块化结构特性构成信号种类和数量可灵活配置的信号模拟环境;控制器与车控系统之间设计专用外部接口,满足不同型号的信号定义;模拟界面基于组态软件开发,形象直观易修改,满足异常输入的模拟;界面可集成动画显示,便于流程监视。
2.2 硬件设计
本文选用西门子S7-300 PLC 控制器来模拟特种车的开关量信号、模拟量信号并采集车控控制器的电液执行机构的输出信号,所有的这些信号上传给上位机(PC 机)[3],通过人机界面显示。
测试平台硬件组成如图1 所示。
图1 测试平台硬件组成 Fig.1 Hareware Composition
PC 机的硬件配置:主频不小于1 GHz,内存1 G以上,USB 口,串口。
P LC 的配置如表3 所示。模板种类和数量可灵活选用,表3 中显示最大配置,可满足车控系统软件的测试需求。
表3 通用测试环境 Tab.3 General Testing Environment
车控控制器和测试平台电缆连接示意,如图2 所示。
图2 测试平台电缆连接示意 Fig.2 Connection of Cables
2.3 软件设计
测试平台的软件包括PC 机的监控组态软件和下位机(PLC 控制器)的控制软件。监控组态软件是标准化、规模化、商业化的通用开发软件,只需进行标准功能模块的软件组态和简单的编程,就可以设计出标准化、专业化、通用性强、可靠性高的上位机人机界面监控程序,且工作量小,开发周期较短[4]。PLC控制软件的开发包是西门子公司开发的控制软件产品,具有标准化、模块组合化、组态生成化等特点,通用性强,实时性和可靠性高。
PLC 控制软件主要是信号采集与转换以及控制流程仿真,其开发环境为 windows2000/XP,西门子STEP7 V5.4开发工具。控制流程仿真的测试用例设计因型号而略有差异。本环境提供了一套较为通用的流程仿真模板,可供各型号略作修改后使用。流程仿真软件的设计,各工步流程比较类似,下面以展车支腿伸出(特装车横向调平)工步流程为例,其控制软件流程如图3 所示。
上位机监控软件的功能主要是显示、控制PLC 的输入输出数据。
开发、运行环境:Windows2000/XP,SQL2000,西门子WinCC6.0 组态软件。西门子公司的视窗控制中心(Windows Control Center,WinCC),集成了组态、脚本(Script)语言和OPC 等先进技术,为操作者提供了图文并茂、形象直观的操作环境,不仅缩短了软件设计周期,而且提高了工作效率。
图3 控制软件流程 Fig.3 Workflow of Control Software
3 应用效果
3.1 某型号测试情况
WinCC 的开放性可以将其作为系统扩展的基础,通过开放式接口,开发其它自身需要的测试系统,图4为某型号车控系统软件测试界面。
在操作界面,不仅可以用于状态信号显示,还可以通过改变接近开关状态和各个传感器的输出值来模拟多种异常信号,为可靠性测试服务。
在某型号车控软件测试中使用了本通用测试环境。环境配置的主要工作是配置模版和地址、设计流程仿真软件、设计上位机界面。
a)设定PLC 的输入、输出地址如下:
1)32 点DI 的地址:I0.0~I3.7;
2)32 点DO 的地址:Q0.0~Q3.7;
3)16 通道AI 的地址:PIW500~PIW530;
4)16 通道的AO 地址:QW500~QW530。
DI 模板上I0.0 接车控控制器大泵输出,I0.0 为高电平时,软件将改变大泵指示灯的颜色。I0.1 接车控控制器小泵输出,I0.1 为高电平时,软件将小泵指示灯变为绿色,DI 模板的其它点同样处理。
图4 中包含PLC 的DO 输出模拟特种车的各种开关量信号如压力继电器、接近开关、行程开关等,Q0.1接车控控制器的2 号弹箱伸到位接近开关输入,用鼠标点击该按钮,按钮灯由红色变为绿色,PLC 控制器发送2 号弹箱伸到位信号给车控控制器,其它同样。
图4 车控系统软件测试界面示意 Fig.4 Test Interface of Vehicle Control Software
PLC 的AI 模板接收车控控制器的0~10 V 或4~20 mA 的控制信号,经过AC/DC 转换,再转换成对应的流量或压力值在压力表或流量表上直观地显示。
PLC 的AO 模板模拟特种车的倾角传感器、压力传感器、温度、湿度等电压或电流信号,拉动图4 界面上相应的游标,可以改变传感器的输出值。
b)设计流程仿真软件。本型号应用中,直接使用与通用环境配套的工具盒流程仿真软件模版进行设计,可以支持特装车的装载、卸载、展车(调平)、起竖、旋转、撤收等所有流程。详细流程设计不再赘述。
c)设计界面。界面设计特别设计了参数修改接口,可以支持输入信号的多种异常情况。常见的异常情况有:1)在规定时间内不能调平;2)左右支腿压力超限;3)滤油器报警;4)某流程中,规定时间内,接收不到接近开关信号;5)某传感器的数值发生跳变;6)接近开关信号发生抖动;7)瞄准过程中,高低角或方位角发生超差。
该测试环境在该型号批产过程中的地面设备联试测试中开始使用,在地面设备联试测试中,车控控制器(车控软件)、测试环境(特种车仿真)、火控系统、发控系统、火箭弹等效器、定位定向、通讯系统等全部参战设备进行作战流程测试。该测试环境的自动测试功能运行良好,在测试中发挥了重要作用。
3.2 其它型号的应用
如果将该套测试环境用作其它型号特装车的测试,需要做的工作有:a)硬件:调整PLC 控制器上的接线端子接线的接线。b)软件:只需测试界面的信号名称,由于PLC 控制程序的模块化设计,软件的工作量较小。
图5 为某在研型号的应用示例。
图5 某在研型号应用示例 Fig.5 Sample of One Product
4 结 论
基于PLC 的测试环境能够满足多种特种车车控软件的测试要求,通过少量的软件设计工作能满足不同型号的测试要求,降低了成本,提高了可靠性以及测试方法的可继承性,组态软件的应用使得测试结果更加直观、可靠,自动测试功能减轻了测试人员的工作强度,避免了误操作,为车控软件的测试提供了一个新的解决方案。
本文综合分析特种车车控软件的特点和测试需求,设计了以PLC 控制器为核心设计一种通用的测试环境,通过在线配置设计信号定义接口,可用于多种型号的特种车车控软件测试,作为型号软件开发的一种高可靠和低成本探索,取得了较好的效果。