基于A*算法的油气安全智能巡检机器人设计

2021-04-02 02:13何新霞刘斯特
计算机测量与控制 2021年3期
关键词:上位车间节点

潘 辉,何新霞,刘斯特

(中国石油大学(华东) 新能源学院,山东 青岛 266580)

0 引言

随着经济的发展与科技的进步,石化产品的交易量不断提升,石化车间的安全问题需要更加重视。石化车间的生产设备多为高温高压设备、同时堆积了大量危险品,若发生安全事故,会造成重大经济损失,还可能对环境安全和人们的生命安全造成很大危害[1]。同时,石化行业的泄漏监测问题和预警问题近几年来十分突出,恶性事故频繁发生,而对泄漏未能达到及时预警是事故发生的重要原因之一[2]。

为保证工厂内部的安全,定时对工厂内部的温度、烟雾浓度等环境状况进行检查成了日常必不可少的工作,稍不留神还会造成错检漏检的情况,严重时甚至会引起火灾等安全事故的发生[3]。石油化工车间的危险气体泄漏主要分为可燃气体和有毒气体,目前企业普遍依靠固定位置气体传感器进行监测,然而其效果并不理想。智能巡检技术虽蓬勃发展,但在油气系统安全检测方面应用并不广泛,根据生产需要在石化车间设立固定区域巡检,通过签到等方式进行检查,对巡检过程中发现的问题和异常情况用通讯设备报告上级工作人员,并对其进行记录的人工巡检方式依旧普遍存在。A*算法作为最基本的路径规划算法之一,其最大优势就是可根据需求设计启发函数,从而得到满足需求的规划路线,进而控制巡检机器人按照所得路径进行巡检。目前市场上的巡检机器人功能单一,无法适应石化车间复杂的生产环境,更无法与原有的监测系统相配合[4]。有必要设计一款智能巡检机器人,代替工作人员进行巡检,通过A*算法规划路径,与原有的固定传感器监测系统配合,扩大实时监测的空间,提高动态监测效率,降低事故发生率。

本文设计了以巡检机器人为核心的石油化工车间智能巡检系统,利用栅格法对车间环境建模,通过A*算法规划巡检路径,以DSP为核心控制器实现机器人自动循迹,基于WiFi模块建立无线通信网络,使用C++Builder设计人机交互界面,实现车间巡检的智能化。

1 系统整体设计方案

石化车间的复杂环境决定了传统的固定位置传感器监测系统具有较大的局限性,由于条件限制,监测系统存在盲区。当盲区发生危险气体泄漏时,因未能及时发现问题,可能会产生严重后果。同时,传统监测系统大都采用数据的有线传输,存在成本高,布线复杂,抗干扰能力差等问题[5]。

为适应厂房复杂环境,设计的巡检机器人具有较强的运动能力,可以根据上位机规划的路径自动循迹;在环境监测方面,可实现危险气体浓度、温度等多种指标的实时检测,并将数据发送给上位机动态显示;在通讯方面,利用WiFi模块可以实现中远距离实时通信,使工作人员处于安全的工作环境中[6-7];在人机交互方面,上位机按A*算法规划出巡检路径并将其发送给巡检机器人,同时监控界面能够实时显示车间环境状况,对异常情况自动报警并提醒工作人员及时处理,提高了工作的安全性。

系统共分为两部分:智能巡检机器人部分和上位机部分。其中巡检机器人部分由3个模块构成:运动控制模块、环境感知模块以及无线通信模块;上位机部分由两个模块构成:监测控制模块及无线通信模块。运动控制模块以TMS320F28335型号的DSP为核心,控制驱动电机和转向舵机,得到A*算法的规划路径后实现自动循迹。环境感知模块由环境传感器测取模拟量数据,通过DSP的ADC单元转换为数字量再由通信模块将数据发送给上位机。两部分的无线通信模块都是由ATK-ESP8266型号的WiFi模块构成,二者建立通信网络以实现上位机与机器人的实时通讯。上位机监测控制模块由C++Builder开发设计,负责规划巡检路径,发送控制指令给机器人,接收环境数据并动态显示,以实现人机交互功能。智能巡检系统构成如图1所示。

图1 智能巡检系统构成示意图

2 系统部分硬件设计

2.1 巡检机器人运动控制

巡检机器人采用后轮驱动,驱动电机为直流电机,选择L298N为电机驱动器,此外利用AB相正交旋转编码器检测转速信号,配合PID算法实时调节电机转速[8]。正常工作状态下,WiFi模块处于STA工作模式下,上位机(服务器)通过无线网络将控制指令发送给DSP(客户端),DSP根据指令通过EPWM模块输出对应占空比的脉冲信号给L298N,进而控制电机转速。同时,旋转编码器与驱动电机相连,可以实时检测转速并以脉冲信号形式发送给DSP的ECAP模块,通过增量式PID算法实时调整DSP输出PWM信号的占空比,达到较为精确的速度控制效果[9]。

巡检机器人由前轮负责转向,转向舵机型号为MG99R,该舵机接收周期为20ms的PWM脉冲,通过控制高电平时间决定转弯的角度,最高为±60°(1 ms/2 ms)。此外,为减小转弯时带来的误差,采用MPU6050模块检测机器人的转弯角度和加速度并反馈给DSP。当需要转向时,DSP通过EPWM模块输出周期为20 ms,高电平时间特定的脉冲信号给舵机,舵机此时按照要求方向转向,同时MPU6050模块能够反馈此时巡检机器人的转弯角度和加速度,通过计算可得当前时刻机器人运动姿态,根据机器人姿态信息不断调整EPWM输出的脉冲信号,可实现转向的精确控制。机器人运动控制硬件连线如图2所示。

图2 机器人运动控制硬件连线示意图

2.2 环境数据监测

巡检机器人的环境检测量为石化车间典型的危险气体甲烷、一氧化碳和温度,所有传感器采用模拟量输出接口,利用DSP中的ADC转换单元,实现环境数据的检测。TMS320F28335型号DSP具有16个ADC单元,理论上最多可以实现16路环境状态量监测。采用MQ-4模块检测甲烷浓度,MQ-7模块检测一氧化碳浓度,YL-38模块检测环境温度。选用的环境传感器的模拟量电压输出范围均为0~5 V,而DSP的A/D接口输入电压范围为0~3 V,为防止输入电压过高烧坏DSP,设计分压电路将模拟量电压降为0~2.5 V后,再接入DSP的A/D模块。信号调理电路原理(以甲烷传感器为例)如图3所示。

图3 模拟量信号调理电路原理图

以甲烷气体为例,DSP对应端口的电压范围为0~2.5 V,ADC模块转换后的数字值A0为:

(1)

其中:A为输入模拟值,ADCLO接地为0。

可得A0范围为0~3 412.5,MQ-4模块输出电压在4 V时甲烷气体就已达到危险浓度,故报警值取A为2 V时A0的值,为2 790。另外,当浓度值为警报值的80%即2 232时,发送预警信号,提醒工作人员关注。

2.3 无线通信网络

实时性是衡量巡检机器人工作效果的一个重要指标,为保证发生危险时工作人员能够及时得到提醒,采用WiFi模块构建无线通信网络,实现上位机与巡检机器人的实时数据传输。WiFi模块型号为ATK-ESP8266,其采用串口(UART)与DSP或上位机通信,内置TCP/IP 协议,可实现串口与WiFi之间的数据转换传输。

通过AT指令对WiFi模块进行设置,使其工作于STA模式下:上位机连接的WiFi模块为Server(服务器),巡检机器人机连接的WiFi模块为Client(客户端)。正常工作时,服务器建立特定名称与密码的WiFi网络,客户端主动搜索WiFi网络名称并连接,二者建立无线连接后便可进行数据通信。巡检机器人将环境、速度以及位置数据进行整合,然后将其发送给上位机,同时,上位机也可以通过无线网络向巡检机器人发送控制指令与规划路径。无线通信网络构成如图4所示。

图4 无线通信网络构成

3 系统软件设计

3.1 机器人路径规划

尽管导航方式有所不同,机器人始终要完成路径规划的任务[10-11]。本文采用A*算法对机器人进行路径规划,其代价估计函数f(n)可以表示为如下:

f(n)=g(n)+h(n)

(2)

其中:g(n)为代价函数,表示从起始节点到当前节点n的实际花费的代价,h(n)为启发函数,表示从当前节点n到最终目标节点的最优路径的代价估计[11]。

在A*算法中,启发函数h(n)决定了其搜索效率,由于应用要求不同,h(n)需根据实际情况设计。在石化车间的巡检路径规划中,改变启发函数h(n),可以得到满足不同巡检需求的规划路径。

本文在h(n)的设计中加入奖励/惩罚机制:满足巡检要求的前提下,在机器人转弯时进行惩罚,维持原行进方向则进行奖励,保证机器人的运行方式为直行(0°),掉头(180°),左转(-90°),右转(+90°),从而减少机器人运动时由于频繁转弯带来的误差。在计算h(n)时加入奖励/惩罚系数k,此时f(n)为:

f(n)=g(n)+kh(n)

(3)

具体效果为:在机器人进行下一个节点判断时通过系数k改变待选节点的f值,当维持原方向时k小于1,改变方向时k大于1,选择f值最小的待选节点为下一个当前节点。

在进行路径规划时,定义OPEN和CLOSED两个集合:OPEN集表示等待检查的节点集合,CLOSED集表示已经搜索过的节点集合。不断的比较OPEN集中当前节点的扩展节点的f、g、h值,并根据比较结果更新两个集合,当前节点为目标节点时,路径规划结束,此时按顺序提取CLOSED集中的节点,即为巡检路径。路径规划流程如图5所示。

图5 A*算法路径规划流程图

路径规划在上位机中完成,采用C语言编程。首先对多个巡检地点按照坐标值进行排序,在确定起点位置后,将起点设为当前节点,第一个巡检地点为目标节点,对其进行路径规划,到达目标节点后将其设为当前节点,下一个巡检地点为目标节点,以此往复,直至到达最后一个目标节点即起始位置后,路径规划结束,此时按照顺序提取CLOSED集中的节点,即为巡检机器人规划路径。

3.2 机器人运动控制

巡检机器人在自动循迹时,为保证实际行进路线的正确性,需要对其进行较为精确的控制,故选用旋转编码器和MPU6050模块(三轴陀螺仪,三轴加速度计)辅助DSP进行运动控制。旋转编码器能够检测当前时刻电机转速,配合增量式PID算法实现车速闭环调节;MPU6050能够检测机器人当前偏移角度和三轴加速度,配合DSP及时调整机器人运动姿态。

机器人前后轮的运动均为闭环控制,两个闭环控制并行运行,保证其相互配合但不会产生干扰,提高控制效率与调节精度。直行时驱动电机输出较高转速,转弯时驱动电机输出较低转速,转弯完成后恢复较高速度。在高低速切换时,采取增量式PID算法进行闭环调节,同时在整个运动过程中,MPU6050实时反馈机器人偏移角度与偏移加速度,保证机器人行进路线的正确性。

机器人运动控制程序均在DSP中实现,通过上位机软件CCS6.0使用C语言编程。在正常运行状态下,上位机会发送运动或停止信号给DSP,当信号为运动时,DSP会接收巡检路径并判断下一步运动方式:在直行时,巡检机器人保持当前运行方向以及运行速度不变;在转弯时,巡检机器人降低转速,并按照规定方向进行转向。整个运动过程中PID程序与MPU6050模块保持运行状态,时刻调整机器人运动速度及姿态,保证正确性。机器人运动控制流程如图6所示。

图6 机器人运动控制流程图

3.3 监控界面设计

通过C++Builder开发设计上位机界面,其主界面包括用户登录,系统运行状态监测,巡检路径规划等。上位机利用栅格法对车间环境进行建模,根据工作人员要求设置巡检地点,然后通过A*算法规划巡检路径并利用WiFi模块将其发送给巡检机器人,同时将所接收到的车间环境数据和巡检机器人位置数据进行可视化处理,并实时显示。所有历史数据自动分类并存入数据库,供工作人员查阅调用。在检测到环境数据到达预警值时能够提前预警,在环境数据超标时能够发出报警信号,并且允许用户通过上位机控制巡检机器人。上位机主界面如图7所示。

图7 上位机主界面

上位机利用MSComm控件实现串口通讯功能,MSComm是Microsoft公司开发的一款ActiveX控件,为用户设计软件提供了获取上位机串口通信权限的功能[12]。

4 实验结果分析

4.1 路径规划仿真结果

通过在Matlab2016A软件上的仿真,验证了加入奖励/惩罚机制的A*算法的可行性与准确性。对某20*20(m)的生产车间建模,单位栅格为1*1(m),其路径规划结果如图8所示。

图8 某生产车间路径规划图

4.2 驱动电机调速结果

利用CCS6.0的Graph功能,监控电机实际转速,结果显示增量PID算法可在1 s内完成当前转速到给定转速的调节,稳定运行时车速偏差小于2 r/min,满足系统要求的稳定性以及快速性。调速效果如图9所示。

图9 电机PID调速效果图

4.3 智能巡检系统整体测试结果

经过整体测试,巡检系统运行正常,用户登录系统后,可以按照需求规划路径,并控制巡检机器人的启动与停止,同时系统运行状态监控界面可以动态的显示当前时刻环境数据以及机器人位置,在温度或危险气体浓度超过警戒值时,给予工作人员提示与报警。通过对巡检机器人实时位置的持续监控,得到其运行路径,经对比,与规划路径完全一致。环境量指示灯共3种状态,即安全(不超过正常范围的80%),警告(正常范围的80%~100%),危险(超出正常范围)。系统运行状态监控界面如图10所示。

图10 系统运行状态监控界面

5 结束语

本文设计的巡检机器人可代替工作人员对车间进行巡检,降低了成本的同时提高了巡检的安全性。利用A*算法进行路径规划,可根据不同车间环境制定对应巡检路线,适用性强,灵活性好。巡检机器人自动化程度高,由计算机、DSP等控制,能够自主完成设定的巡检任务;利用WiFi模块构成无线通信网络,实时性好,可实现中远距离数据的快速传输,同时保证了工作人员的人身安全。将巡检机器人与原有固定位置传感器相配合,解决了原有监测系统存在的监测盲区问题,能够对危险提前预警,提高生产安全,降低事故的发生率。

猜你喜欢
上位车间节点
基于RSSI测距的最大似然估计的节点定位算法
分区域的树型多链的无线传感器网络路由算法
100MW光伏车间自动化改造方案设计
基于图连通支配集的子图匹配优化算法
一场史无前例的乐队真人秀
基于点权的混合K-shell关键节点识别方法
“扶贫车间”拔穷根
A7_p69
基础油“上位”
基于VC的PLC数据采集管理系统