接上一篇基于STM32图像处理的机器人自动充电解决方案---二
第4章 自主导航与避障设计
4.1自主导航设计
如果图像处理的结果表明标注不在视野范围内,则按照顺时针调整装置的方向,直至发现标志物。如果图像处理结果表明,标志物在视野范围内,则启动电机,使装置向前进。如果在此过程中发现标志物脱离了视野范围,则以最后一次视角为对称中心,先顺时针调整装置的位置,如果发现标志物,则恢复前进状态,如果没有则继续顺时针调整,如果调整三次后还未发现标志物,则逆时针调整装置,如果发现标志物,则恢复前进状态,如果没有则继续逆时针调整,直至左右调整的最大角度对称。
流程如下图4-1所示:
4.2避障处理
如果检测到红外传感器的电平从高电平变为低电平,则表示红外传感器有感应到物体。如果在此之前预充电标志没有被置位过,则表明此物体是障碍物,应使整个装置后退一定距离,并向右调整方向,然后向前直走一段距离,最后向左调整方向,继续搜索标志物或自主导航任务。
设计流程如下图4-2所示:
4.3 本章所遇难点与解决方案
4.3.1 所遇难点
在进行自主导航的过程中,会经常遇到标志物脱离摄像头中央区域的情况,而且没法判断标志物在脱离视野的时候是在左方向还是右方向。如果脱离后搜寻标志物的方法还是按照一开始的一样,即顺时针搜寻,有时候会遇到方向逆向的问题。即标志物脱离视野的时候刚好在视野左方向,搜寻方法确实顺时针,那么搜寻接近一周后才能捕捉到标志物,这样会很耗时间,效率极其低下。
还有一方面,在自主导航的过程中也会有遇到障碍物的情况,阻挡机器人的前进。如果要避开障碍物,识别障碍物是关键点。单纯地利用红外线传感器感应,无法判断,检测到的是障碍物还是充电装置。
4.3.2 解决方案
为解决上面所遇到的标志物脱离视野后的再次搜寻问题和障碍物判断的问题,本文设计采用了下面的解决方案步骤:
4.3.2.1 标志物脱离解决方案:
4.3.2.2 障碍物判断与避障解决方案:
第5章定位充电与各阶段LED显示设计
5.1单目视觉定位与充电
利用图像处理进行导航,是装置逐渐靠近标志物,也就是充电站附近。如果标志物的像素面积超过设定的阈值,则说明整个装置已经很靠近充电处,初步定为成功,接下来进入微调模式,也就是精准定位模式。减少装置的前进量和方向调整量。如果在精准定位模式过程中,红外传感器的电平从高变为低,则说明已经精准定位到充电站处,可进行后续的充电操作。
在装置进行精确定位后,使能串口舵机模块,推出充电头进行充电。如果检测到电量充满,则收回充电头,离开充电站。
具体的流程图如下图5-1所示:
5.2各功能阶段LED显示设计
为了使整个自动充电装置能更加智能形象化,在各功能阶段设置LED显示不同的颜色,并且搭配不同的状态,表示不同的状态信息。颜色和状态方面符合平时的电器使用习惯。
下表5-1是各阶段的LED显示设计:
功能阶段 |
LED颜色 |
状态 |
标志物搜寻 |
蓝色 |
闪烁 |
捕获标志物 |
蓝色 |
常亮 |
电量低 |
红色 |
闪烁 |
充电中 |
红色 |
常亮 |
充满电 |
绿色 |
常亮 |
表5-1 各功能阶段LED显示设计表
当机器人在搜索标志物,即自主导航的状态时,将LED灯显示成蓝色,并且将其状态设置成闪烁,表示在搜索中。
当机器人有捕获到标志物时,将LED灯显示成蓝色,并且将其状态设置为常亮,表示获取到标志物。
当机器人的电量低于阈值时,将LED灯显示成红色,并且将其状态设置成闪烁状态,符合我们日常电器使用指示习惯,表示机器人已经快没电了,需要进行充电。
当机器人处在充电的状态时,将LED灯显示成红色,并且将其状态设置成常亮,符合我们日常电器使用指示习惯,表示机器人正在进行充电。
当机器人的电量达到阈值,充电完成了,将LED灯显示成绿色,并且将其状态设置成常亮状态,表示机器人充电完毕,即将离开充电处。
5.3 本章所遇难点与解决方案
5.3.1 所遇难点
摄像头受焦距条件的限制,在很近的距离上无法成像,或者成像的效果很差,严重失真。在最后的精准定位阶段,接近标志物到一定程度后,摄像头将失去作用。如果只用摄像头,无法判断是否已经到达充电处,只能判断已经很接近充电处了,接近程度无法量化,也无法进行最终的定位。
5.3.2 解决方案
为了解决摄像头在最终定位阶段失去作用,无法进行最终定位的问题,本文设计采用了以下的解决方案步骤:
第6章 研究展望
在往后的发展中,机器人自动充电技术的研究也会越来越深,智能化也会越来越高,能应对各种场合和不同的复杂环境,进而解决目前在机器人自动充电技术上所存在的问题。本文对机器人自动充电技术后续的研发工作展望如下:
此系列文章为本人毕业设计稿,转发时请注明转发来源。谢谢