李晓贤 侯健 王奔 杜梦岩 贾阳
摘要:针对诸如石油化工、油罐区、大型仓库、公路隧道、高层建筑等特殊场所灭火困难的问题,设计了一款消防灭火机器人,其控制系统包括Android手机客户端和基于PIC的控制器,两者通过带路由器的WiFi模块通信,控制器选用PIC18F46K22单片机作为主控芯片,采用安装在机器人的视频摄像头、姿态检测的陀螺仪和红外避障传感器,实现对左右行走轮驱动电机和灭火剂喷洒方向控制电机等执行机构的控制,行走自动纠偏采用PID控制算法,从而实现对消防灭火机器人的远程控制,达到精准及时灭火的目的,对提高消防机器人的机电一体化、自动化及智能化具有重要意义。
关键词:消防灭火机器人;电机控制;自动纠偏;PID控制;智能化
*基金项目:
1.西安市科技计划项目,2019年度高校人才服务企业项目计划,GXYD17.12;
2.火灾科学国家重点实验室开放课题(HZ2019-KF12)
0引言
众所周知,火灾不仅危及财产安全,还会给人们的生命安全带来巨大的损失,因此如何预防火灾及快速有效灭火显得极为重要。对于一些特殊场合[1],如石油化工、油罐区、大型仓库、建筑物等在火灾发生时会产生大量热量、烟雾和有毒有害气体,且顶部建筑结构易坍塌,造成消防装备及人员无法靠近;呈圆筒状结构的公路隧道、高层建筑、地铁场所,易产生“烟囱”效应,加剧火灾蔓延;大跨度钢结构建筑的冷库,因其隔热防潮性能好,见光率大,出入口少且空间密闭,这些都是灭火救援的难题[2]。
针对以上危险区域,若火灾发生时没有有效的消防应急预案、合适的灭火救援设施及装备,消防员强行进入火灾现场采取灭火行动,不仅达不到预期效果,而且还会给救援人员的生命安全带来严重威胁[3]。近年来,随着新工艺、新材料和新技术的发展,消防灭火机器人应运而生。消防机器人能到达充满浓烟、有毒、缺氧等复杂环境的火灾现场,根据设定好的程序采取合理的灭火措施,最大限度地减少消防人员的伤亡,提高灭火救援的效率,降低火灾事故的经济损失[4]。
1总体结构
消防灭火机器人为自走轮式结构[5],供电采用12V蓄电池;为了便于转向,前轮采用万向轮,后轮采用直流电机驱动[6];表面涂覆防高温涂层可深入最危险的位置,如高温、爆炸、中毒、辐射危险的“火海”中侦查火情;其前方装有视频摄像头,用来识别寻找周围环境中的火焰、烟雾;机壳内部配备灭火装置,如冷气溶胶灭火装置,发生火灾时,可通过喷洒口灭火;若喷洒口未正对火焰,通过喷洒方向控制电机的旋转使喷洒口正对火焰,从而近距离准确地对准着火点执行灭火任务,防止火势蔓延,使灭火剂的利用率有了大幅度提高;红外避障传感器可以避免机器人在前进过程中撞到障礙物。此外,配备的视频系统能将火场的高清图像传送到操作平台。[1]
消防灭火机器人的控制系统包括Android手机客户端程序和基于PIC单片机的控制器[7],两者之间的通信通过高度集成、低成本的WiFi模块AtherosAR9331实现。AR9331采用MIPS24Kc内核,装有OpenWrt操作系统及相关应用软件的路由器,集成了1个5端口百兆以太网交换机、1个DDR/DDR2控制器,单片即可实现完整的无线路由。该WiFi模块主要功能是实现Android手机客户端与控制器之间的通信:将摄像头的视频信号发送至手机客户端,并将手机客户端发送的控制命令传输至消防灭火机器人控制器。WiFi模块系统框图如图2所示。
消防灭火机器人开机后自启动,初始默认的是自动模式,可以自动搜寻火源,主动避障,精确灭火。当检测到进入无线模式的命令时,进入无线模式,此时可以通过Android客户端主控界面上的触摸按键发送相应控制命令至WiFi模块[8],通过按键直接控制消防灭火机器人的前进、后退、左转、右转等,并解码WiFi模块传输来的视频摄像头的图像信号,将其显示在手机屏幕上。
2硬件设计
在硬件设计方面,消防灭火机器人控制器选用Microchip的PIC18F46K22单片机为主控芯片[9]。该单片机属于高性能RISC(reduced instruction set computer),精简了指令数目和寻址方式,提高了编译器的效率,且具有在线串行编程功能,方便开发者调试程序。该芯片有35个I/O引脚[10],最大工作电压5.5V,引脚既可以3.3V供电,也可以兼容5V。它采用nano Watt XLP的超低功耗管理,空闲、休眠和备用时钟模式等多种功耗管理模式可以有效降低消防灭火机器人的功耗,提高蓄电池的使用时间。其具有1024字节数据的EEPROM、64k字节的ROM,最高工作速度16MIPS,数据总线为16位宽指令与8位;另有2个标准脉宽调制(PWM)模块、3个增强型CCP(ECCP)模块,可输出2路PWM。
控制器的整个电路采用模块化设计,由电源转换、程序烧写、WiFi模块通信、指示灯和晶振、陀螺仪姿态检测、电池电压检测、行走电机驱动控制、红外避障控制、灭火剂喷洒电磁阀控制、喷洒方向电机控制等10部分电路组成。
电源转换电路采用具有很好线性的降压型开关电源管理集成电路LM2596,固定输出直流5V,且可输出3A驱动电流,为WiFi通信模块和红外避障传感器等供电;因单片机、指示灯和陀螺仪需要3.3V供电,故选用正向低压降稳压器AMS1117,其内部集成过热保护和限流电路,可有效保护整个电路。
程序烧写电路可以通过PGD、PGC等引脚将程序烧录进单片机;D2、D3指示灯可以通过编写相应程序指示相应状态,外部晶振为单片机提供时钟周期;WiFi模块通信电路可以使控制器通过串口接收传输来自手机客户端的控制指令,从而控制各执行电机,亦可将摄像头视频信号传输给手机客户端。
陀螺仪姿态检测电路通过MPU6050陀螺仪对机器人状态进行实时检测[11],单片机结合读取的数据对双侧行走电机进行独立PWM控制,在机器人前进跑偏时进行自动纠偏;电池电压检测电路采用串联电阻分压方式对蓄电池端电压进行检测,当蓄电池欠压时发出报警声,实现蓄电池的欠压保护;两侧的行走电机可通过脉宽调制(PWM)技术控制电机电枢电压,实现调速[12];行走电机驱动控制电路通过双H桥PWM集成电机驱动器DRV8412控制行走电机,2路PWM输出独立驱动左右轮的电机,从而完成前进、后退和转弯运动,且集成在驱动器内部的保护电路还可监测行走电机是否过流;红外避障控制电路采用集收发于一体的光电传感器E18-D80NK-N检测障碍物距离[13],通过电位器旋钮可以感应3~80cm距离内的障碍物,从而实现机器人自动避障。
灭火剂喷洒电磁阀控制电路采用开关电流方式驱动电磁阀,选用N沟道MOS管Q1和与电磁阀并联的电流再循环二极管D5,当单片机RB1引脚为高电平时,Q1导通,此时电磁阀打开,灭火剂喷洒;利用MAX14871全桥驱动芯片控制灭火剂喷洒口方向控制电机,发生火灾时,若单片机检测到喷洒口未正对火源,则控制喷洒口方向电机旋转,使其正对火焰喷洒,从而精准及时灭火,提高灭火剂的使用效率。
消防灭火机器人控制器电路如图3所示。
3PID算法参数设置调整试验
在控制系统中,由于PID控制算法结合比例、积分和微分3个环节于一体,成为连续系统中最为成熟、应用最为广泛的一种控制算法,且PID控制方法结构简单,各参数易于设置。因此,消防灭火机器人的行走电机纠偏算法采用PID控制。在实际对消防灭火机器人行走电机控制的过程中,通过选用不同的P、I、D控制组合,由主控芯片输出给DRV8412的PWM_A和PWM_C引脚不同占空比的PWM驱动信号,实现消防灭火机器人行驶方向的自动纠偏。当PWM驱动信号的占空比减小时,则行走电机两端的平均电压降低,电机转速降低,该侧行走轮速度减慢。PID控制算法框图如图4所示。
PID控制算法的表达式为:
P(t)=Kp[+e(t)1∫te(t+)dtTde(t)]
式中,P(t)为输出信号,e(t)为偏差信号,即实际测量值与目标值间的差值,KP为比例系数,TI为积分时间,TD为微分时间。
将上式简化成离散化PID控制算法的表达式为:
P(t)=Kp{E(t)+E(j)+[E(k)E(k−1)]}−
在消防灭火机器人的PID控制算法中,航向角偏差E(t)是时间的函数,消防灭火机器人的陀螺仪每300ms检测1次偏航角,即∆t=T采样周期,E(k)为第k次采样时的偏差值;E(k−1)为第k−1次采样时的偏差值;k为采样序号;P(k)是第k次采样时的输出值。
在消防灭火机器人行驶过程中,定义向右偏为正角度,若陀螺仪检测到偏航角为负(机器人左偏将会左转),则PID控制算法会通过降低右侧行走轮转速的方法,即单片机输出的PWM_C和PWM_D两脚的占空比降低,降低驱动电机的转速来纠正行驶方向,因此只需要知道该采样周期内需要调整的增量信号即可,若要计算第k次的输出量∆P(k),需要知道E(k),E(k−1),E(k−2),所以可以采用以下增量型PID控制算法:
∆P(k)=P(k)P−(k1)−K=[E(k)E(k−1)]−KIE(k)+KD[E(k)−2E(k−1)+E(k−2)]
式中,KI=KPT为积分系数;KD=KPTD为微分I系数。
对于不同系统中的PID控制算法,只需人工调整KP、KI和KD。为了找到这3个参数的最佳值,需要通过试验进行统计分析。试验采用长为10m的笔直柏油路(中间不设置障碍),等分为10个检测区间,测量出每个区间中车轮痕迹与目标轨跡线之间存在的最大偏移距离,实验数据采集示意图如图5所示。
根据PID控制参数调整原则:
先调整比例系数,当曲线振荡非常频繁时,加大KP,超调大则减小KP;积分项可以消除系统中周期性的波动,及时纠偏,系统纠正周期长减小KI。由于该系统中左右行走轮采用的直流电机惯性和滞后性较小,速度改变迅速,因此微分系数KD的改变对直线行驶纠偏性能的影响不是很大。经过试验场地多次运行调试,得到当给定参数KP=8、KI=5、KD=1时,消防灭火机器人直线行驶性能最佳。
采用最优参数KP=8、KI=5、KD=1时,消防灭火机器人行走3次,即每个行走区间测取3次试验数据,并求出每个测试区间的最大偏移距离的平均值,以减小随机误差带来的干扰,将统计出的最大偏移距离作为试验的结果。试验数据如表1所示。
由表1中的试验数据可知,在全程10m的试验中,每1m的测试区间中最大偏移距离的平均值在8.3~12.5cm之间,偏移率使用最大偏移距离的平均值除以测试区间长度1m,在8.33%~12.53%之间,30组数据中最大偏移距离为14.4cm,最小为6.2cm,可以满足消防机器人直线行走的需求,因此PID控制设置参数合理。
4结论和讨论
消防灭火机器人基于PIC18F46K22单片机的控制器可以接收Android手机客户端的命令,通过PID算法进行自动纠偏,通过带路由器的WiFi模块将摄像头拍摄到的灭火现场视频传输在手机屏幕和消防控制台显示,机器人行走过程中可以主动避障,且可实现喷洒口对准着火点后自动灭火剂喷洒,在实现精准及时灭火的同时提高灭火剂的使用效率。
消防机器人可以代替人类进行高危灭火作业,随着机器人智能控制技术、计算机技术的极大进步,相信实现自主决策、自主行动、自我防护的高级智能化消防机器人的诞生指日可待,其未来将朝着以下几个方向发展:自主智能化;功能多元化,集合侦察、破拆、堵漏、搬运、灭火、冷却等功能;高效节能化和空间立体化。
参考文献:
[1]张建中,郝允梁,刘海洋,等.基于STM32单片机的智能消防机器人的设计与应用[J].电子技术应用,2017,43(11):120-123.
[2]张晋.消防机器人结构设计及其控制系统研究[D].天津:河北工业大学,2015.
[3]张伟,阮鹏程,徐岳,等.变电站消防机器人系统设计[J].消防科学与技术,2020,39(9):1301-1303.
[4]林凡强,张阳,杨文旭,等.基于红外火焰传感器和最小二乘法的灭火机器人[J].传感器与微系统,2015,34(1):110-112,123.
[5]徐连伟,魏崇毓.消防机器人行走控制系统的设计与实现[J].计算机测量与控制,2017,25(1):66-69.
[6]陈晓鹏,李成荣,李功燕,等.基于动力学模型的轮式移动机器人电机控制[J].机器人,2008,30(4):326-332.
[7]林向南.基于Android智能手机的轮椅控制系统设计[D].武汉:华中科技大学,2014.
[8]张文亮.基于Wi-Fi的轮机模拟器测试系统设计和实现[D].大连:大连海事大学,2016.
[9]PIC18F46K22 datasheet[Z].Microchip Technology Inc.,2007.
[10]刘和平,刘林,余红欣,等.PIC18Fxxx单片机原理及接口程序设计[M].北京:北京航空航天大学出版社,2004.
[11]高仲锴,刘盛鹏.消防机器人三维姿态监测系统的设计与实现[J].消防科学与技术,2014(7):795-797,827.
[12]李晓贤.磁力轮式塑料温室棚顶清洗机的设计与研究[D].重庆:西南大学,2019.
[13]蒋林,金祖飞,程文凯,等.一种分层模糊控制的灭火机器人火源寻踪[J].机械设计与制造,2017(9):49-53.
作者简介:李晓贤(1992—),女,汉族,助理工程师,主要从事火灾探测、报警控制和智慧消防技术的研究,E-mail:2358053655@qq.com。