UTP协同自动化测试系统对MCU的自动化测试实践:以物料分拣系统为例

一、UTP系统简介

宏控UTP协同自动化测试系统(简称UTP测试系统)是一款通用的自动化测试系统,支持对嵌入式系统的各种I/O接口进行测试(其中括UART、RS485、CAN、TCP、UDP、AD、DA、DIO 、PWM等)各方面进行自动化测试,能够进行各种复杂时序的自动化测试。

接下来,我将通过一个具体的MCU实例(以自动产线上的物料分拣系统为例)来详细说明我们所开发的嵌入式自动化测试系统是如何工作的。

二、被测场景介绍

在工业自动化生产线上,物料分拣系统至关重要。MCU 作为该系统的核心,负责接收各类传感器数据,依据预设逻辑控制执行机构,实现精准物料分拣。

MCU通过 CAN 总线接收来自上位机的分拣指令,MCU 控制 PWM 接口调节电机转速,完成物料运输,同时利用 GPIO 接口控制分拣气缸动作,并且借助 SPI 接口与存储模块交互,记录分拣数据。以分拣特定尺寸物料为例,需精准控制电机转速以保证物料平稳输送至指定位置,气缸准确动作完成分拣。

三、被测产品测试分析

对上述场景中MCU进行测试,需要做以下操作

1.仿真上位机通过CAN接口发送分拣指令

例如,发送分拣指令“0xBB 0x02 0x10 0x55”,其中“0xBB” 为指令头,“0x02” 表示分拣任务指令,“0x10”代表特定物料尺寸代码,“0x55”为校验码。

2.检查MCU输出的PWM信号占空比

例如,对于该特定尺寸物料,需将电机转速控制在 1500 转 / 分钟,MCU 计算出对应的 PWM 占空50%比并输出

3.检查MCU输出的GPIO信号

当物料运输至分拣位置时,MCU 通过 GPIO 接口输出高电平信号,控制电磁阀动作,进而驱动分拣气缸伸出,将特定尺寸物料分拣至指定区域。

3.检查MCU输出的SPI指令

在完成一次物料分拣后,MCU 将本次分拣的相关数据,如分拣时间、物料尺寸代码、电机转速等,通过 SPI 接口写入 Flash 存储模块。可以通过SPI指令检查MCU的输出是否正确。

四、UTP系统实现对上述被测产品测试

覆盖被测系统的各种接口

UTP测试平台为用户提供自动化测试的平台软件,UTP平台可以部署在服务器或测试主机上,连接UTP执行器进行自动化测试执行。

  • CAN通信测试机器人–可以发送分拣指令
  • PWM信号测试机器人–可以检查MCU输出的PWM信号占空比
  • DIO信号测试机器人–可以检查MCU输出的GPIO信号为高电平
  • SPI通信测试机器人–可以检查MCU 输出的SPI指令
  • 设计自动化测试脚本

    UTP协同测试系统提供图形化的自动化用例编辑功能,支持设计出满足各种业务场景和时序要求的测试用例,通过测试用例调度各种不同的测试机器人执行测试,实现“多输入多输出”的协同自动化测试能力。

    下图是一个示例的自动化测试用例,实现了对自动产线上的物料分拣系统的MCU的自动化测试:

    当采用 UTP 自动化测试系统后,可以:

  • 对MCU的各个输入输出都可以进行全方位的覆盖
  • 对各种不同的分拣指令进行数据覆盖测试
  • 对MCU进行持续行压力测试
  • 对MCU进行一些异常注入测
  • 五、总结

    刚刚的测试选取了一种MCU为例,介绍了UTP系统是如何实现嵌入式自动化测试。MCU 作为嵌入式设备的 “大脑”,负责协调和控制设备的各个部分工作,提供多种接口,用于连接不同的外部设备和传感器。

    上文的介绍中只涉及了MCU的部分接口,实际上,UTP系统可以对MCU的更多接口进行全方位覆盖性测试。

    作者:smile002

    物联沃分享整理
    物联沃-IOTWORD物联网 » UTP协同自动化测试系统对MCU的自动化测试实践:以物料分拣系统为例

    发表回复