张慧贤,张学贺,马利民,郭哲锋, 梁 莉,郭兆锋,王文豪,范一赢
(1.洛阳理工学院 智能制造学院,河南 洛阳 471023;2.哈尔滨工业大学 机器人技术与系统国家重点实验室,哈尔滨 150001;3.上海倍伺特自动控制设备有限公司,上海 201818)
消防机器人在一定程度上能代替消防员进入有毒、浓烟、高温、缺氧、坍塌、狭小空间等事故现场,承担侦查检验、排烟降温、搜索救人、灭火等任务,对提高部队灭火救援能力和效率,保障消防员安全及社会进步具有重大意义。根据石化爆燃等危险环境防爆型作业机器人底盘耐高温防护的要求,对机器人底盘耐高温防护技术进行研究,确保消防机器人能够在300 ℃以上的高温环境中正常工作,这对于提高消防机器人的火场适应性、提高现场救援效率非常重要。
虚拟仪器作为模块化软件开发系统,能代替一定的硬件或与硬件相结合完成信息的采集与显示。Labview作为广泛使用的虚拟仪器软件,能借助虚拟模板用户界面和方框图建立虚拟仪器的图形程序设计系统,能更好的完成程序的开发及数据显示,在工业领域应用广泛[1-8]。基于以上需求,本文采用Labview2018设计了消防机器人底盘热防护多通道温度采集软硬件系统,该系统除开发的电气硬件、测试软件外,还包括加热炉、机器人底盘试验箱、机器人底盘耐高温涂层、耐高温隔热棉等试验材料。控制系统主要由上位机和下位机构成,热电阻PT100布置在底盘试验箱不同点,将采集到的多点温度传输到温控仪,温控仪再通过485接口将数据通过串口Modbus RTU协议传输到上位机,并在PC端开发的软件界面上实现了8路温度的实时采集、显示与保存[9-16]。最后针对出现的信号噪声干扰,采用小波阈值滤波算法对数据进行了滤波处理[17-20],并与各通道温度原始数据进行了对比,表明该系统工作可靠、测量精度高、可视化效果好,对于工业自动化领域多点温度的测量具有实际意义。
多个PT100热电阻温度传感器分布在消防机器人底盘试验箱的不同部位,通过两个4路辉控HKDN2-4温控仪,将温模拟信号转化为数字信号并通过485串口输出,并通过JPX6021中继器将两路485信号合并为1路485串口信号,通过485屏蔽双绞线连接至上位PC机的USB接口,系统硬件连接结构如图1所示。
图1 多路温度采集系统硬件结构图
温度传感器采用三线制的PT100铂热电阻,测温范围为-70~450 ℃,引线采用耐高温屏蔽线。三线制PT100可消除连接导线电阻引起的测量误差,提高了测量精度,测温精度为±0.3 ℃。PT100与HKDN2-4温控仪连接,HKDN2-4温控仪为DC24V供电,支持PT100输入,通信接口为RS485,通信协议为标准的Modbus RTU串口协议,可将采集到的温度信号转换为数字信号并通过485串口输出,温控仪具体的Modbus RTU 规约命令格式如表1所示。
表1 Modbus RTU 规约命令格式
温控仪默认数据位为8, 1位停止位(无奇偶校验), 波特率9 600(9 600、19 200、38 400、57 600、115 200可调)。在实际运行中,温控仪与PC串口的波特率均设置为9 600,为保证数据传输的准确性,数据校验方式采用循环冗余校验CRC16。
由于Modbus协议使用的是主从通讯技术,即由主设备主动查询和操作从设备,因此,每次通信都是主站先发送指令,从站响应指令,并按要求应答,或者报告异常。当主站不发送请求时,从站不会自己发出数据,从站和从站之间也不能直接通信。比如在本系统中,上位机Labview程序主动查询温控仪传送到COM串口中的数据,当读取到温控仪采用Modbus RTU协议发送的数据为:01 04 00 00 00 04 F1 C9时,根据表1通信协议规约格式,01表示第2块仪表,如果是00,则表示第1块仪表;04表示表2中的功能码04(读取测量值数据);中间的00 00表示表3中的寄存器地址,存储着当前的温度实际测量值;00 04表示参数个数,即表示1块仪表总共4个通道;F1 C9表示采用CRC16校验的数值。
表2 部分HKDN2-4温控仪功能码
表3 部分内部寄存器地址
由于开发的是8通道温度采集系统,采用了2个4路的HKDN2-4温控仪,为保证两个温控仪的数据通过485串口传输到上位PC机,选用了串口中继器PX6021。该中继器相当于一个RS485集线器,除了将多路485信号集中后整体输出,还可以将单路485信号分成多路分别输出。此外,该中继器还具有放大信号、光电隔离、防雷浪涌保护,及其自动感知数据流向并切换控制电路的功能。在系统组网方面,该中继器每一路可以串联多达256个设备,具有较强的驱动能力。在本系统中,中继器JPX6021通过DC9~40 V宽电压供电,2个4路的HKDN2-4温控仪通过485接口和集线器相连,组合成1路485信号通过屏蔽双绞线连接至上位PC机的USB接口,并通过485-USB通信模块,完成了现场温度采集硬件与上位机的连接。
485-USB通信模块采用RJ303X2,该模块为通用的双向RS485/422-USB转换器,不仅能够将现场仪表平衡差分的RS485信号转换为单端的USB信号传送到上位PC机,也可通过主机将数据通过USB接口转换为RS485串口信号发送给外设。I/0电路自动控制数据流方向,转换器内部带有零延时自动收发转换,不需任何握手信号即可实现全双工、半双工模式转换,确保适合一切现有的通信软件和接口硬件,可以为点到点、点到多点的通信提供可靠的连接。在本系统中,从中继器JPX6021引出的485信号只需2根线便可实现串行异步通信,具体接线方式为:中继器JPX6021中RS485串口的A、B分别连接485-USB通信模块RJ303X2输入接口的485+和485-,系统硬件接线如图2所示。
图2 系统硬件接线图
本课题采用Labview软件开发平台开发了消防机器人底盘热防护8通道温度采集系统,实现了基于串口Modbus RTU协议的温度数据采集与传输,软件功能主要包括用户注册、串口配置、温度曲线实时显示、超温声光报警、数据显示与保存、历史数据回放、数据表显示与数据滤波等功能,程序流程如图3所示。
图3 多通道温度检测系统程序流程图
图4 串口配置与VISA 读取
VISA是Labview仪器编程的标准API函数,作为新一代仪器I/O通用标准, LabVIEW将VISA节点单独组成一个子模块,共包含8个节点,分别实现初始化串口、串口写、串口读、中断以及关闭串口等功能。首先通过COM 端口号对VISA资源进行配置, 如波特率(9 600) 、数据比特(8)、校验位(None)等参数。配置完串口后,通过VISA 读取各串口缓冲区的数据,由于开发的8通道温度采集系统由两个4通道的HKDN2-4温控仪进行温度信息的现场显示,并且通过一组485通信线(二线制)与上位PC机连接。为保证温度信息的可靠传输,上位机程序在读取温控仪数值的时候,两个温控仪的数据通过VISA进行读取后,通过加入延时函数(延时0.5 s)采用分时传输的方式, 避免了温度数据在485串口线上的冲突,确保了数据的有效传输。
8个PT100热电阻温度传感器分别连接两个具有RS485串口输出的4路辉控HKDN2-4温控仪,通过JPX6021中继器将两路RS485信号合并后经485屏蔽双绞线输出,再经过485-USB通信模块RJ303X2与上位PC机的USB接口连接。由于本温控仪采用的是Modbus RTU协议,依据Modbus协议通过主从模式读取数据的特点,结合表1的通信协议规约命令格式、表2的温控仪功能码以及表3的温控仪寄存器地址编写Labview程序,PC机上开发的Labview程序通过VISA函数主动读取温度数据到输入缓冲区,并对数据进行16位CRC校验,确保温度数据传输的正确性。另外,由于Modbus RTU协议的报文格式为十六进制,因此在数据传输结束后要通过数值转换控件将十六进制字符串变换为十进制进行显示。以其中1个通道为例,温度数据传输与转换的部分计算程序如图5所示。
图5 温度数据的传输与转换程序
8个通道的温度数据传输到用Labview开发的程序交互界面,通过数据表格进行实时显示,并绘制成温度实时曲线。根据实际工作需要及实时化显示需求,系统开发了8通道综合曲线显示界面及分通道曲线显示界面,用户可以根据需求选择查看综合对比曲线或各通道温度变化曲线。为方便后期对测量的温度数据进行统计和分析,系统设计了将温度数据保存为*.txt的文本文档进行备份,同时采用数据表格功能也可以将数据导出为*.xls的excel文档,方便后期数据处理。温度数据保存及数据表显示的部分程序如图6所示。
图6 温度实时曲线与数据保存程序
为保障系统的安全及使用权限,还开发了系统登录界面及用户注册功能,用户通过注册将信息写入*.txt文件,只有通过注册的用户才可以通过用户名及密码登录。用户注册程序及界面如图7所示。
图7 登录及用户注册功能
由于在温度检测过程中信号出现了瞬时的毛刺等突变现象,为消除信号噪声干扰并最大化保证信号成分不丢失,本文采用小波阈值滤波算法实现了信号降噪。由于Fourier变换只能获取一段信号总体上包含哪些频率的成分,但是对各成分出现的时刻并无所知。小波(Wavelet)分析是通过伸缩平移运算对信号逐步进行多尺度细化,将无限长的三角函数基换成了有限长的会衰减的小波基,这样不仅能够获取频率,还可以定位到时间,最终将获取到低频与高频处的时间细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier变换对瞬态信号处理不完善的问题。
假设存在函数φ(t)∈L2(R),如果满足下面的允许条件[21]:
(1)
则函数φ(t)称为基本小波或母小波,母小波通过伸缩、平移可以构成L2(R)的一个标准正交基:
(2)
其中:a称为尺度参数,b称为平移参数。L2(R)中的任意函数f(t) 的连续小波变换可以定义为:
(3)
同傅立叶变换一样,连续小波变换也可定义为函数与小波基的内积,即:
WTf(a,b)=[f(t),φa,b(t)]
(4)
然后采用离散小波变换,将尺度按幂级数进行离散化,取幂级数的底数为2。当尺度a较大时被分析的信号区间长而分析频率低,可作近似观察;当尺度a较小时信号区间短而分析频率高,可作细节观察。令:a=2-j,b=2-jk,j,k∈Z,可得离散小波变换为:
DWTf(j,k)[f(t),φj,k(t)]
(5)
其中:小波函数φj,k(t)为:
φj,k(t)=2j/2φ(2jt-k),j,k∈Z
(6)
式(6)所示的表达式为尺度取2的整幂的多分辨率分析的多贝西小波(daubechies wavelet,db小波),由于其在时域和频域对不规则信号较为敏感,并有良好的局域性,且可作为Mallat 算法成熟常用的母小波,因此本文选用db小波对信号进行分解和重构。为实现小波降噪,文中具体采用Labview与Matlab混合编程的方法,通过Labview调用Matlab自带的4种不同阈值准则下的小波去噪算法进行降噪处理,其中包括混合准则heursure、无偏风险估计准则rigrsure、固定阈值准则sqtwolog和极大极小准则minimaxi。Labview 提供了Matlab Script 节点,通过该节点可以直接调用Matlab 应用程序。在程序中,通过分析对比采用db4 小波5 层分解,阈值函数选取软阈值函数,阈值选取heursure 规则作为小波分析的阈值规则,程序如图8所示。
图8 小波阈值滤波降噪程序
课题需要对消防机器人底盘进行耐高温设计,其中包括机器人部件耐高温结构设计以及机器人底盘型腔耐高温防护技术研究,以实现机器人底盘能够在不低于300 ℃高温环境下工作。设计加工了耐高温试验测试台架,该台架主要由耐高温加热炉和温控箱组成,高温加热炉的加热范围为10~600 ℃,满足机器人耐高温试验所需的工作温度要求,内部空间尺寸规格为:2 000 mm×1 000 mm×1 000 mm,满足容纳履带式消防机器人底盘的空间要求,具体参数如表4所示,开发的多通道温度采集系统如图9~12所示,分别为温度采集系统软件界面、综合曲线显示界面、分通道显示界面及数据表。
表4 高温试验炉参数
图9 多通道采集软件界面
图10 综合曲线显示界面
在图13所示的消防机器人底盘试验型腔1和型腔2中分别加入一定量的冰块,并在型腔外部包覆5 mm厚的纳米微孔隔热棉。将5个PT100热电阻温度传感器按表2所示的工况进行安装,温度数据每隔1 s采集1次。根据机器人通用底盘工作环境要求,在300 ℃以上炉温环境下,对底盘型腔4种工况进行了耐热试验温度测试,测试时间 为30分钟,采集到的部分数据如表5所示。图11为底盘型腔在不同工况下测得的温度趋势,表明在型腔中加入冰块,能有效降低热传导,效果良好,而在型腔外包裹纳米微孔隔热棉,能有效降低升温速度。该试验检验了系统工作的正常性,也为后续底盘热防护设计提供了技术参考。
图11 分通道显示界面
图12 数据表显示界面
图13 机器人底盘试验型腔
表5 温度采集试验(部分示例数据)
图15为温度检测原始数据分通道显示界面,图16为在图15中提取的部分数据段生成的温度综合曲线。从各通道温度实时曲线可以看出,各通道温度信号出现了瞬时的毛刺等突变现象,这是由于在信号传输过程中因为各种原因引入的噪声干扰。通过图8所示的小波阈值滤波降噪程序,对各通道温度数据进行了滤波处理,显示界面如图17所示,与图15原始温度数据相比,温度曲线尖峰得到了有效消除。
图14 不同工况下温度曲线对比
图15 原始温度数据综合曲线界面
图16 原始温度数据综合曲线
图17 小波降噪之后的各通道温度曲线界面
分析图9~12,图15~17 可知,开发的消防机器人底盘热防护多通道温度采集软硬件系统,各项功能均符合工程要求,并分不同工况进行了温度采集现场试验及信号的小波降噪,测试结果达到了预期。
1)采用Labview2018开发了消防机器人底盘热防护8通道温度采集软硬件系统,实现了基于串口Modbus RTU协议的温度数据采集与传输,软件功能主要包括用户注册、串口配置、温度曲线实时显示、超温声光报警、数据显示与保存、历史数据回放、数据表显示与数据滤波等功能;
2)通过该系统,针对消防机器人通用底盘工作环境要求不低于300 ℃的工作环境,设计了4种工况对底盘型腔进行了耐热试验,验证了系统的可靠性;
3)针对温度曲线中出现的噪声干扰,通过Labview与Matlab混合编程的方法,采用小波阈值滤波算法对采集到的数据进行了滤波处理,并与各通道温度原始数据进行了对比,达到了较好的滤波效果。该系统可视化效果好,具有较强的工程实用性,对工业现场多点温度的实时测量具有一定的借鉴性。