基于MSP430的管道检测与数据采集机器人的设计

2022-10-31 04:01肖玉笛
电子制作 2022年18期
关键词:上位温湿度人工

肖玉笛

(西北民族大学,甘肃兰州,730106)

1 系统框架

本设计主要用于机器人智能探测与采集大型塑胶管道内的数据,用户可以通过WiFi操控机器人或者可以机器人智能离线运行。在机器人运行图中若发现管道存在破损或堵塞会将此时的管道图像拍摄想来通过WiFi模块传递给上位机等待人工处理。机器人也可进行智能离线运行,运行图中使用图像采集模块对环境进行拍摄,并将图像信息传递给MSP430进行处理从而判断机器人接下来的运行情况,当检测出图像中有破损或很多杂质黏合的时候,即管道出现破损或者堵塞,此时机器人会将图像信息拍摄下来储存在TF卡中,并且在MSP430通过GPS模块建立的管道平面图中将该点标记为损坏或者堵塞,机器人返回后,用户可以根据采集回来的数据进行进一步的分析,从而了解到管道里的情况,编导管道维修人员对管道进行维修与清理工作。

管道检测机器人由上位机和下位机两部分组成。系统的框图如图1所示,其中上位机与下位机通过WiFi模块相连接,通过自己编写的软件,实时显示机器人的控制界面,主要包括环境图像信息、环境温湿度信息、照明系统工作信息、机器人行走速度、转弯显示等功能。而下位机是由以下重要几部分组成:(1)电源模块:由于各个模块的标准工作电压的不同,所以需要一个电源模块来将输入的15V的直流电转化为各个模块的工作电压。(2)驱动模块:使用L298N电机驱动模块,这是一款经典且兼顾性价比的驱动模块。(3)图像采集模块:使用OPEN MV4可编程摄像头。可以通过MicroPython语言,对摄像头编程从而实现需要的逻辑。摄像头还内置了部分图像处理的算法,使用起来较为容易。(4)GPS模 块:通 过HT1612Z3M3LD模块将管道机器人的实时位置经MSP430处理后通过WiFi模块传递给上位机。(5)LCD显示模块:将环境图像信息、管道机器人的运行状态信息、环境温湿度、有害气体含量等信息显示在LCD显示屏上便于人工对管道机器人的控制。(6)环境检测模块:通过温湿度传感器与有害气体检测传感器检测出的数据传入MSP430等待处理。(7)WiFi模块:将环境检测模块检测的数据与图像采集模块采集的环境数据等通过ATK-ESP8266模块传递给上位机。

图1 系统框架图

2 系统硬件设计

2.1 控制模块

控制模块采用的主控芯片为美国TI公司推出的超低功耗微处理器MSP430。它的主要资源有:60KB+256B的FLASH闪存、2KB的RAM、带有PWM输出功能及3个捕获/比较寄存器的16位定时器、2个串行通信接口、2个8位的并行口并且带有外中断功能、4个8位并行端口、一个12位AD转换器等模块。MSP430及部分周边电路示意图如图2所示。最小系统是由保证处理器可靠工作所必需的基本电路组成的,主要包括电源电路、时钟电路、复位电路等。本系统需要使用+5V和+3.3V的直流稳压电源,其中MSP430及部分外围器件需要+3.3V电源,另外部分需要+5V电源。在本系统中,以+5V直流电压为输入电压,+3.3V由+5V直接线性降压。采用电源模块输出的+3.3V与+5V为系统供电。

图2 MSP430及部分周边电路示意图

MSP430的所有外围模块的控制都可通过特殊寄存器来实现,故其程序的编写较为简单。编程开发时通过专用的编程器CCS或者通用编辑器Keil4即可,编程语言可以选择汇编语言或者C语言。本设计中采用的是C语言来编程。

MSP430主要功能为:对图像采集模块的图像信息进行处理让其显示在LCD显示模块中、为驱动模块提供电机运作的PWM信号、对GPS模块的信息进行处理与回应、对环境采集模块的传感器传输来的信息进行处理并让其显示在LCD模块中方便人工进行控制。将LCD显示的图像数据、温湿度传感器检测的数据、电机的转速等数据通过WiFi模块传给上位机让人工了解管道的情况。

2.2 电源模块

电源可为管道机器人提供动力,并且为控制系统及传感器供电,本系统采用的是由15V直流电池经过稳压后进行升压降压从而达到各个模块的标准工作电压的需要。本模块采用Buck-Boost变换器即升降压斩波电路来实现。该电路由一个IGBT、一个大电感、一个二极管、一个滤波电容构成。电路极为简单,只需要调节给IGBT的PWM信号波即可实现升压与降压的功能。值得注意的是,由于电路的构造,使负载电压的极性为上负下正与电源电压极性正好相反,因此该电路也叫做反极性斩波电路,使用时为了保证输出电压极性与其他模块一致,接入时将电源线与地线反接即可。

2.3 驱动模块

驱动模块采用的是L298N直流电机驱动模块。此电机驱动模块性价比极高,最大功率为20W,足够驱动两个电机使用,并且还有多种供电模式,可选择版内供电或者外接电池供电,可用供电范围为5~35V,完全满足本管道机器人的使用,通过的逻辑电流仅0~36mA,而MSP430的I/O输出电流约为0~32mA完全满足需要。L298N使用极为简单只需给模块供电后,将MSP430与L298N共地,使用杜邦线传输PWM信号即可驱动电机运作。缺点是体积较大,功耗优化不好。L298N采用的是H桥双路驱动,可以同时驱动两个电机运作,本管道机器人只需要两个L298N即可实现。

2.4 图像采集模块

图像采集模块使用的是OPEN MV4可编程摄像头,OPEN MV4内置了STM32H743VI处理器,它具有400 MHz的频率,有1MB的RAM,有2MB的FLASH闪存。因此可以在模块内就内置摄像头的驱动程序和一部分的功能程序,这就极大地简化了主控芯片的负荷,只需要给STM32H743VI一段可执行的程序即可。而OPEN MV4内置有SD卡,SD卡又可以看作一个文件系统,当给模块上电时,SD卡的文件系统就会自动取代STM32H743V中内置的Flash文件系统,每次上电,就会运行SD卡中的main.py文件,即给OPEN MV4内置的功能主函数。此摄像头模块使用的是Python编程,Python作为一门扩展性极强的语言应用于嵌入式是毫无问题的,而对于OPEN MV4的编程由于官方提供了大部分的摄像头基础功能的函数,如图像数据的采集处理、图像的识别处理,图像文件的传输等,这就让其使用起来简化的很多。

2.5 GPS模块

GPS模块采用的是HT1612Z3M3LD模块,具有北斗与GPS双模定位功能,它的体积极小,定位精度高,由于此模块采用了AT6558R低功耗芯片,所以其功耗低,灵敏度高,由于模块使用了0.5PRM的高精度TCXO来完成正交误差等误差补偿,使其定位的精度变得很高,就算在信号很差的管道中也能保持良好的定位功能。内置有LNA低噪声信号放大器,使得其抗干扰性与定位的精准度进一步提高。GPS模块通过实时定位将位置信息传递给MSP430处理后可以显示在LCD模块中或者用于构建管道的平面图等,也可以将位置信息通过WiFi模块发送给上位机,方便人工操控管道机器人的。

2.6 LCD显示模块

本模块采用的是由ALIENTEK公司推出7寸RGB接口电容触摸屏模块ATK-7016。该模块分辨率为1024×600,且最高支持24位真彩显示。由于该模块没有内置显存,因此在使用时需提供给它外部RAM来作为模块的显存使用。该模块具有触摸功能,最多可支持5点同时触摸,因此具有较好的操控效果。该模块尺寸为100mm×180mm,正好可以放置在管道机器人的上部当作人工操作显示屏来使用,主要用来显示环境图像、环境数据、管道机器人运行数据等。

2.7 环境监测模块

环境检测模块主要有温度、湿度、有害气体检测等。本模块中温湿度的测量使用的是数字温湿度传感器DHT11,它是由一个电阻式感湿元件、一个NTC测温元件和一个用于计算与校验温湿度数值的八位的单片机组成,因此它具有很高的抗干扰性,既有较高的精度。测量的湿度范围为:20%~90%RH温度范围为:0℃~50℃,完全满足本管道机器人的使用。它的体积极小,功耗极低。每个传感器都内置有标准校准系数,在测量结果送入八位单片机后进行校准数据计算,再通过串口传入MSP430中处理即可。本模块中有害气体的检测使用的是MQ135空气质量检测传感器,它使用二氧化锡作为气敏材料,由于二氧化锡在清洁空气中电导率低,而空气被污染时,二氧化锡的电导率会上升,所以可以将电导率与空气中有害物质的含量成一个函数关系而计算出有害气体的浓度。通过一个简单的外围电路即可实现。它可以用于检测氨气、硫化物、苯系蒸汽、烟雾等有害气体,检测的浓度范围为:10~1000ppm。温湿度与有害气体的浓度检测数据均被MSP430处理后直接显示在LCD显示屏上,并通过WiFi模块将数据传输给上位机让人工对数据进行记录,从而可以避免人工进入不利于人类进去的管道中。

2.8 WiFi模块

WiFi模块的是ATK-ESP8266,它是由ALIENTEK公司开发的一款UART-WiFi模块, 该模块采用串口与其他设备进行通信,内置有TCP/IP协议栈,实现了串口数据与WiFi之间的转换。使用该模块,将传统的串口数据通过WIFI来进行传输,本管道机器人中主要使用WIFI来传输图像信息与人工发出的控制信息等。该模块兼容了3.3V与5V的系统,可以非常方便地连接上管道机器人。该模块的工作频率为2.4GHz,发射功率约为11~18dbm,板载有PCB天线,因此体积较小约为29mm×19mm,该尺寸放置在管道机器人的右后方刚刚好。主要使用的无线标准为IEEE 802.11b,最高支持54Mbps的无线传输速率,完全可以满足本管道机器人的数据传输要求,该模块的WiFi工作模式有:WiFi STA、WiFi AP、WiFi STA+WiFi AP三种工作模式,从而使得模块可以快速构建WiFi数据传输的方案,方便管道机器人与上位机之间的连接。本模块作用主要是通过WiFi模块将LCD显示的信息与环境信息传递到上位机,从而通过人工判断小车接下来的运行情况与记录环境的数据等。

3 系统软件设计

系统的程序框图如图3所示,首先管道机器人进行初始化,初始化完毕后等待人工通过上位机发送运行信息,若为人工控制,则管道机器人完全由人工通过WIFI来控制其运行。此时只需如果能够通过同步来的图像与环境的各种信息来进行遥控机器人运行即可。若十秒内没有收到上位机发来的运行信息或者运行信息为机器人智能控制,则机器人会根据图像信息判断前方是否堵塞而选择继续运行或者将堵塞的图片信息发送给上位机等待人工处理的结果,若此时存在第二个通道,则机器人会直接进入第二通道继续进行管道的勘探与测量工作。若此时没有发生堵塞,机器人会检测环境空气有害气体含量,若有害气体含量超过整定值,机器人会通过WiFi发送警报信息给上位机等待人工处理。机器人运行过程中的所有图像信息、环境温湿度信息、机器人运行状态信息等都会在LCD显示屏中显示出来。并且WiFi模块会实时将LCD显示屏上的信息传递给上位机。由于WiFi存在极限控制距离,当机器人即将超出控制距离时,会等待人工信号,若需要传递来运行信号为撤退,则机器人会通过由GPS模块得到位置信息通过MSP430构建管道平面图并撤离。若传递来运行信号为离线智能运行,则机器人会启动离线智能运行模式,会自动判断是否有路线通过,并且将所拍摄的图像信息与环境数据储存在TF储存卡中,等待返回后人工处理。

图3 系统程序框图

如图4所示为部分主程序,程序中展现了LCD的显示程序与WiFi的接收与传递信息的程序,在一个正常运行的死循环内,会将温湿度传感器传递来的信息分别储存到两个字符数组WenDu_Str与ShiDu_Str中,有害气体检测模块传递来的信息经MSP430处理后变成字符数据储存在YouHaiQiTi_Str中,之后通过LCD显示函数LCD_ShowString将其显示在LCD显示屏上。由于图像信息较为复杂,并不是单独的字符数据,所以在此编写了一个子程序Tu_LCD()来进行将图像信息显示在LCD显示屏上的功能。WIFI()函数的功能是主动将数据发送给上位机。并且在程序运行状态中,接收WIFI信号与接收环境检测模块传递来的温湿度等信息都是通过中断函数来接收的,在此处不过多展示。

图4 部分程序示意图

4 结束语

本设计中的管道机器人功能尤为强大,不仅实现了自动智能运行,又实现了复杂情况人工控制。两种运行方式足以适应绝大部分管道地形,而有害气体的检测功能极大地保障了管道维修人员的人身安全,通过小车的运行轨迹构建的管道平面数据极大地方便了管道维修人员对管道进行保养与维护。因此,在不久的将来管道检测机器人将会完全代替人工进行管道的检测,甚至可能还会出现管道维修机器人,可完全代替人工进行这项成本高危险系数大的工作。

猜你喜欢
上位温湿度人工
全国第一! 2022年山西安排人工造林339.2万亩
蛋鸡育雏育成舍环境控制技术
人工“美颜”
一场史无前例的乐队真人秀
档案库房温湿度记录统计及调控
人工制冷
基础油“上位”
变电站高压配电智能温湿度控制装置的研发与应用
档案库房温湿度调控思考
人工降雪