APP下载

基于Stateflow的多联机空调自动测试系统设计

2022-11-26

日用电器 2022年10期
关键词:联机自动测试测试用例

宋 飞

(珠海格力电器股份有限公司 珠海 519000)

前言

随着综合性建筑和大型楼宇的高速发展,多联机空调系统出现机组数量多、机型多样化、机组分布广等特点,为多联机空调的统一管理维护带来不便。多联机组运行之前需要对各个设备传感器、负载、运行参数等进行检测,以保障机组的正常运行。多联机空调系统逻辑复杂、控制参数多样,传统测试方式效率低下。

实际多联机人工测试,质量依赖测试人员的责任心和能力水平,安全存在隐患有触电风险,工况室环境恶劣,效率低下。

我们需要针对多联机空调系统测试技术进行研究,开发一套多联机空调自动测试系统,该系统通过智能提取的方式生成控制系统的测试用例库,转化成可输入信号控制并监听被测对象,建立Stateflow模型实现逻辑仿真,通过模型计算测试用例结果,模型计算的结果与机组运行的结果进行对比,从而实现空调逻辑功能的自动测试。

1 技术理论分析

1.1 CAN协议

CAN通讯具有突出的可靠性、实时性和灵活性。CAN为多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从。它允许对以线型结构连接的每个节点进行平等的总线访问,这意味着在开发过程中,每个节点都可以按照相同的规格进行设计,数据可以在需要的时候进行传输,而且网络的配置可以有很高的自由度,因为不存在一个节点对另一个节点的偏爱。这种灵活性对多节点通讯网络非常重要,因为它们可以以许多不同的方式使用,并可以以许多不同的方式重新设计。

CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多可在134 us内得到传输[1]。该设计基于CAN协议总裁机制,使用高优先级数据同步,保证在大网络多节点应用时数据传输和用户需求的及时响应,同时确保数据传输的可靠性。

多联机空调网络使用的CAN通讯,要求在每帧数据中加入IP,数据的接收者可以使用这个IP来确定这是什么设备的数据,同时每帧数据中加入功能码,数据接收者可以判断该数据是用来反馈设备状态还是需要执行某个控制指令,从而实现整个机组网络数据的联动。

自动测试系统接入空调网络,需要使用与同一套CAN协议,可以通过数据达到精准控制网络中的每一个设备,同时可以解析网络中的全部状态,协议的统一化是自动化测试的核心。

1.2 空调多联机系统介绍

空调多联机系统是面向分布式控制的多节点冷媒系统,系统可分为单冷媒系统和多冷媒系统,一般多联机系统中包含外机、内机和线控器等多个节点[2]。自动测试系统重点解决内机外机的逻辑准确性问题,图1是最常见的多联机单系统图,该系统中多台室内机通过CAN1网络和外机连接。对于需求制冷量较大的单系统机组,在CAN1网络最多可同时拥有4台室外机。

图1 多联机自动测试单系统图

多联机也可以按多系统方式连接,该系统中先将室内机和室外机通过CAN1网络连接。多套CAN1网络中外机并行通过CAN2网络连接。

不论是单系统还是多系统,在机组网络的连接点引线,连入USB数据转换器。该转换器可将机组通讯的电平数据转换成二进制数发送给电脑USB口,反过来也可将电脑上位机发送的命令转换入机组网络中,实现了上位机和多联机系统的数据交互。

1.3 Stateflow介绍

Stateflow是一种图形化的设计开发工具,是有限状态机的图形实现工具,又可称为状态流。主要用于仿真中控制和检测逻辑关系的表示。用户可以在进行仿真时,使用这种图形化的工具实现各个状态之间的转换,解决复杂的监控逻辑问题,更具有事件驱动控制能力。

有限状态机又称为事件驱动系统,指系统在条件发生变化时(即有事件发生时)从一个状态迁移到另一个状态。通过将系统中的行为描述成不同状态的转换,可将系统设计成事件驱动系统。在特定的条件下发生的事件用来激活状态,状态迁移图就是基于此种方法的图形表示。可以用于解决事件驱动系统中复杂的逻辑问题。

空调系统逻辑中,各个功能和负载状态,符合状态机的定义,故可以使用Stateflow针对各个功能实现和负载状态转换进行建模,为逻辑功能自动判断提供了依据。图2是多联空调内风机调节逻辑建模图。

图2 多联机风机调节逻辑状态机模型

2 技术方案详细介绍

2.1 设计和编写用例

根据待测功能点的逻辑功能书,人工编写测试用例输入部分。空调机组的任意功能点,都是由输入参数,逻辑计算,时序,输出结果组成。我们编写测试用例的时候,只需要考虑覆盖待测功能点,将输入参数值按时序写出即可,对于逻辑计算出来的结果无需计算。

输入参数部分又分为通讯类和非通讯类两种,对多联机而言,凡是可以体现在CAN协议中的控制参数,都称为通讯类。自动测试系统需要将这部分参数按照CAN协议中的设备IP、协议行、协议列的格式进行编码,用例中的中文名称与协议位置编码进行映射。空调机组中的负载控制,功能开关,模式状态等均属于此类参数。而温度、湿度、水流开关、电压开关、拨码、跳线帽等外接开关或AD参数,它们需要接入传感器或者继电器来采集数据发送给机组,这部分参数定义为非通讯类参数,它们则按照通道号和参数类别来进行编码,与数据执行装置工装板上的接口相对应。单系统机组测试用例格式见表1。

表1 多联机测试用例模板

多系统机组中,对不同的外机系统,需要进一步的对参数名进行编号处理。采用设备名+序号+参数名的方式来编制,编码的时候需要加入系统号。原理与单系统相同。

2.2 平台搭建及用例执行

外机作为多联机系统的核心控制器,控制整个系统的功能块调度、协调内外机运行,在多联机运行过程中起主导作用。因此,自动测试方案应该以此为基础。开发数据转换器,将机组原始的CAN通讯数据转换成16进制数据流,通过电脑USB口收集数据。对于单系统网络机组,数据转换器接入CAN1网络,即内外机之间。对于多系统网络机组,数据转换器接入CAN2网络,即各个系统的外机之间的连接处。这样,可以做到通过一台电脑同时收集全部网络中的内机和外机的参数,同时可以控制所有的内机和外机。

开发输入数据执行工装,它的主要功能就是将测试用例中的非CAN通讯内容输入到机组,进行一个自动化的测试过程。需要参考机组的系统拓扑结构,针对具体的参数特性来开发。如温度传感器类,工装需要将不同的温度值搭配具体的分压电阻值进行计算,得出需要给空调主板接口提供的电压并提供给机组。开关类参数则需要使用继电器,通过吸合和断开达到机组开关接口闭合和断开的同等效果。我们开发的工装板可以提供多个AD接口和继电器接口,并设计一套协议用作数据传输,此协议中将所有的接口进行分类编号,连入机组只需要对参数进行接口编号配置,就可以将用例中的温度值和开关量输入机组,从而代替真实的机组感温包和开关负载。最终可以实现将测试用例输入部分传输至机组的效果。

2.3 逻辑仿真计算

根据待测机组的逻辑功能书,搭建仿真模型,模型也要包含输入、计算两个模块。其中输入模块与上述所得的测试用例输入部分相同,相同意义的参数名称要相同,确保同一模型在不同工况情况下的通用性。用例中的持续时间在仿真系统中采用定步长的倍数方式体现,如上述用例中,如仿真步长设定为1 s,则分别运行三条用例10步、20步、10步。这样用例输入部分仿真的效果跟机组同步,确保输入的一致性。

计算模块可以采用Stateflow来进行开发,开发依据就是该功能点的逻辑功能书。

仿真计算得到的结果作为测试用例的理论输出部分。

2.4 用例执行及结果对比

待测机组按照测试用例来进行运行,得到的实际结果保存下来,与仿真得到的理论输出进行对比,如果结果一致则认定测试OK,结果不一致需查找问题。

如果出现同一份功能逻辑,但是应用于不同的机组或者工况条件下,此时测试用例是不同的。只需要重新制定输入参数表,继续使用已经做好的仿真模型即可运算出结果。输入数据执行工装也可以继续使用。但是新的输入参数表中的相同意义的参数名称要相同,只要符合这个原则,即使参数表的顺序不同,做好映射算法,也可以做到模型的重用,从而大幅提高测试效率。

如果出现功能书的改动,则需要按新的功能书去修改仿真模型,并重新仿真得到一个新的结果,而用例的输入部分则不需要改动,机组更新程序之后也随之运行,仿真结果跟实际结果进行对比,同样可以达到自动测试的效果。

注意:如果测试用例的时间过长,导致仿真时间过长的,则可以采用加大步长的手段解决。可以取测试用例中的持续时间数组中的最大公约数N为步长,模型仿真时步长按照N运行,即可确保无误差的情况下提升仿真速度,进一步提升效率。但机组的运行时间必须以真实时间为基准,确保测试结果的准确性。

图3 多联机逻辑仿真模型图

3 结语

本方案提出的多联机自动测试方案,不受硬件限制,依托于多联机网络通讯架构及通讯方式特性,采用虚拟参数传递,扩展性、可实施性好;在电脑上进行操作,安全可靠、节约人力物力。很好的解决了现有多联机测试工况操作不便、效率低、存在人身安全隐患的问题。自动测试系统通过仿真计算的方式生成控制系统的测试用例库,转化成可输入信号控制并监听被测对象,并进行结果判断及输出报告。标准化测试过程由电脑全自动完成,杜绝质量对人工的依赖,全面提升产品开发质量和效率。

猜你喜欢

联机自动测试测试用例
基于相似性的CITCP强化学习奖励策略①
多联机焓差实验室制冷量测试不确定度分析
测试用例自动生成技术综述
海尔发布全球首个物联多联机云服务平台
再立标杆,天加GHP燃气多联机 助力神木市LNG站建设
基于VXI总线的实验箱自动测试装置设计
局部UV上光工艺探究
关于某型雷达自动测试系统的几点认识和建议
DCOM在混合总线自动测试系统的应用
面向射频系统级封装的自动测试系统