时间:2024-04-24
周菊 曹希龙 黄光慈 李慧慧
本文介绍了一种工业生产通用自动测试系统的架构组成和系统实现,该测试系统上位机基于.NET开发,面向测试流程,应用基于STM32的嵌入式系统作为信号处理控制器(下位机),进行信号采集和动作输出,自动完成测试流程和数据管理。本文以搅拌主机产品的下线自动化测试为例,介绍了本测试系统在工业生产中的应用情况。
在工业生产中,自动化测试系统在产品的生产线测试和质量验证有着广泛的应用。由于自动测试技术的引入,不仅能提高测试效率,保证测试的准确性和可信度,减少由于人为原因造成的测量错误和误差,降低生产和测试成本,而且还可以对测试数据和结果进行信息化管理。因此,无论在整机,元器件或者模块化的指标和功能测试,老化及可靠性等测试中,自动测试技术都有着广泛应用[1]。随着现代工业的不断发展,测量技术、总线技术、信号处理技术等新的测试技术应用于自动化测试系统中,大大提高产品的测试效率和产品可靠性。
本文的测试系统是一种工业生产中通用的自动化测试系统,测试系统上位机基于.net环境及SQL2005数据库开发,面向产品测试流程,实现自动化测试。本文以在搅拌主机生产线的产品调试应用为例,实现产品测试的自动检测。
测试系统由计算机、信号处理系统、信号采集系统组成。如图1所示。通过电流、温度、转速等传感器采集被测产品的各种信号,传感器信号通过信号处理系统进行运算放大等处理,由计算机通过系统软件进行分析、管理。
图1 自动测试系统架构
其中,计算机软件实现测试流程的运行及测试过程的管理,实现测试流程的可编辑,以适应不同产品的测试需求,信号处理系统为嵌入式可编程控制器,计算机向信号处理系统下发操作指令,由控制器控制产品的各项动作(如电机启停、电磁阀的开关等)。测试系统通过测试流程的各项执行结果,判断产品测试是否合格,并对测试过程参数与结果数据进行保存。
如图2所示,测试系统采用ModbuRTU通讯协议,Modbus 协议是MODICON公司开发并推行的通信协议,该通讯方式已经成为工业自动化控制系统的标准通信协议。通过该协议,不同厂商生产的控制系统可以进行工业网络互联,从而实现各个系统的集散控制[2]。
Modbus通信使用主一从技术,即仅一个设备(主设备)能初始化传输(查询),其它设备(从设备)根据主设备查询提供的数据做出相应反应。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一条消息作为回应,如图3所示。如果是以广播方式查询的,则不作任何回应[3]。
图3 Modbus主-从查询方式
图2 测试系统通讯结构
本测试系统中,计算机(上位机)作为主站,信号处理系统作为从站,通过应答方式单独通讯。每次查询-应答与下一次查询-应答间隔50ms。
本文测试系统上位机软件基于.NET平台开发。.NET平台由微软公司推出,具有跨语言、跨平台、跨系统能力。方便利用XML技术开发显示及打印数据报表,还能使用GDI+设计各种图形编辑器,适用于开发复杂的企业级应用程序。数据库使用Microsoft SQL Server 2005,SQL2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理,数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,
测试系统软件面向测试流程开发,测试流程通过编辑工具以XML形式保存于系统文件中。针对工业生产测试中的通用测试信号种类,系统软件设计了通用的测试单元,其中通用测试单元如表1所示,实现统一的接口类型。测试单元的输入输出如图4所示。根据测试流程,通过编辑工具添加测试单元,形成测试文件。
表1 上位机开发模块-测试单元
软件运行过程如图5所示,加载测试文件后,按照测试单元的顺序执行各测试项,自动运行测试流程。并将测试结果保存于数据库。
图5 上位机系统运行流程
信号处理模块采用基于STM32的嵌入式系统作为控制器,硬件电路包括开关量输入输出、模拟量输入、RS485通讯接口、RS232通讯接口。其中开关量输入输出用于检测和控制开关量动作,包括启动按钮、电机运行信号、转速脉冲等。模拟量输入用于检测温度、压力、电流等模拟量信号。嵌入式控制器的程序采用Kei环境,用C语言编程。软件主要由以下几个模块组成,如图6所示。
图6 信号处理模块运行流程
其中,上电初始化部分用于配置STM32板载的器件,如时钟、串口,ADC,GPIO口等,上电初始化只在每次上电的时候执行一次。输入扫描用于扫描被配置为上拉输入的GPIO口状态,如果状态改变,则认为有输入信号。
逻辑处理部分则根据输入信号和通过通讯接收到的上位机指令进行逻辑处理,比如是否启动电机,是否开启电磁阀等。
模拟量采集处理主要通过配置好的板载ADC采集传感器的值,有电流传感器、温度传感器、压力传感器等,经过采集、滤波、量化把传感器输出的4-20mA电流值转化为实际的工程量。
通讯处理主要是通过RS485口基于MODBUS RTU协议 实现与上位机的通讯。接收上位机发送的命令,如电机启动停止、电磁阀打开关闭等。向上位机发送设备的状态,如电机实时电流值、电机温度、油温、油压,以及电机的启动停止状态等。
输出刷新是根据程序中逻辑处理的结果,把需要的输出映射到GPIO口配置为推挽输出的端口上,根据端口电平状态的变化控制外部设备动作。
以上程序块除了上电初始化只在上电的时候执行一次,其他程序则循环一直执行。
本文以搅拌主机的下线测试应用为例,搅拌主机是混凝土搅拌站的核心零部件,产品检测工序多,人工检测需花费约1个小时,需要检测主机门的动作连续性,急停功能,润滑功能、主电机电流变化、温差变化等情况,人工检测不能保证其正确性。因为通过自动测试系统可对各参数实现精确可靠的测量,且可重复性得以保证。
根据测试流程编辑测试文件,以搅拌主机润滑系统、急停功能检测为例,测试流程如表2所示。添加对应的测试单元并设置单元属性。
表2 搅拌主机润滑系统、急停功能流程
运行测试系统,测试完成后自动打印测试结果如图7和图8所示。系统对测试过程参数自动保存。整个测试过程月30Min,并可对同一台主机进行多次测试。
图7 搅拌主机测试结果记录
图8 搅拌主机测试参数记录
自动化测试越来越广泛的应用于工业生产中,作为产品可靠性检测的重要手段。不仅提高检测效率,更是保障了测试的精确度和管理的正规化。本文所述的自动化测试系统,通过各种测量设备采集信号,上位机系统控制检测流程,信号处理控制器输出执行动作,对测试产品性能进行检测。已在实际生产得以推广和应用,本系统的架构和检测方式将对实际的应用有很大的指导意义。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!