编程语言
首页 > 编程语言> > 扫地机器人路径规划算法解读

扫地机器人路径规划算法解读

作者:互联网

随着人们生活水平的提高,人们对于智能家居的需求日益旺盛,扫地机器人就是其中之一,据前瞻网发布的数据显示,2018年扫地机市场增长预计达到120亿元,随着扫地机器人技术的不断发展,未来扫地机器人将会有更广阔的市场空间。

扫地机器人路径规划

在扫地机器人中,路径规划是其最核心的技术,所谓路径规划是指机器人根据自身传感器对环境进行认知,来确定周围环境和自身位置信息,进而规划出一条最优运行路线。同时又能高效完成清扫任务。

通常,移动机器人实现路径规划需要解决这三大问题:

1.机器人从初始位置到目标位置的运动;

2.通过相关算法使机器人能够绕开障碍物,并且经过某些必须经过的地方完成对应的工作任务;

3.在完成以上任务的前提下,能做到机器人运动轨迹的优化。

说到扫地机器人路径规划,就不得不提到SLAM技术了,当然,SLAM技术与路径规划是两个层面的东西,SLAM更像是一种被动技能,默默为机器人提供地图和定位信息,但当机器人需要实现自主移动,便需要路径规划和SLAM的相互合作,如果没有SLAM为路径规划提供高质量的定位信息,路径规划就难以实现自身的工作。

机器人要做到路径规划,除了要解决SLAM本身的难点外,路径规划也是有很多问题需要解决的,先不说扫地机器人,对于通用机器人来说,要做的第一个路径规划便是寻路的算法,也可以理解为从A点到B点的移动。在这个过程中,又会涉及到全局路径规划及局部路径规划。

什么是全局路径规划呢?可以理解为,在一张静态的地图上,机器人仅仅根据地图测算出当前点到目标点的一个距离。这种方式有很多种算法,目前听到最多的就是Astar算法,这种也同时运用在即时战略游戏里进行单位寻路时使用。

思岚科技扫地机器人路径规划算法

除了全局路径规划还有局部路径规划的问题,由于在全局路径规划中机器人已经规划出了大致的行走路径,但在实际的移动过程中会出现很多突发情况,如在机器人移动时突然一个人走过来,挡住了机器人已规划好的行走道路,在这种情况下,机器人如何能在不修改之前规划好的路径前提下去绕开这个人呢?对于机器人来说行走的大方向是对的,但在有障碍物出现的情况下需要临时改道,这样的过程便叫做局部路径规划。目前针对该问题的应对算法传统上有EFF、目前又动态穿透法的算法来进行。

解决从A点到B点的移动就是实现路径规划的第一个问题。这也是目前扫地机器人进行路径规划的第一个环节。但相比其他服务机器人,扫地机器人的问题会更加复杂一点,因为扫地机器人在工作中还会涉及到贴边清扫及来回清扫等任务,这就需要有更多的算法体系来支撑。

再回到SLAM技术上,目前在SLAM技术中,会涉及到激光SLAM及视觉SLAM两种,激光SLAM是通过旋转激光发射器不断发射激光,并通过内置的红外摄像头拍摄反射光并成像,利用几何测距原理测量物体和机器本身的相对位置,据此绘制完整边界的地图和确定机器在地图中的位置。而视觉SLAM是通过内置的 RGB 摄像头不断移动自身的位置进行拍摄,提取和匹配相邻帧图片特征点、利用测距原理测算出障碍物的距离。

相较于视觉SLAM,激光雷达就一直作为扫地机器人的原配久居正统之位,激光雷达的优势在于精度高,可以精确绘制房间地图和行走路线,工作稳定,不依赖于环境光线。

思岚科技是国内最早将激光SLAM应用于服务机器人的企业,在实现机器人自主定位、建图及路径规划等方面已有成熟的落地方案。岚豹扫地机器人就是基于思岚科技的激光SLAM导航技术而研发的,可以做到:

分秒建图:开启清扫后,只需几个转圈的时间,激光雷达就会扫描出家中地图,在清扫过程中能毫厘不差的刻画家庭环境构造和家具分布。

边扫边建立完整地图:清扫时扫地机会先沿边清扫出一片区域,在分区内以弓字形的路径走出工整的路线,边扫边建图,通过一个个分区的形式将家里每个地方都清扫覆盖到,最终形成家中的完整地图。

岚豹扫地机器人路径规划

地图规划清晰且覆盖率高:当扫地机扫完家后,家里的地图就能完整的呈现,与户型图的贴合度能达到99%以上,可以清晰的看出对家里的清扫规划,覆盖到了家中的每一个角落,没有产生漏扫。重要的是,地图一次生成就能保存,再次清扫时无需重新建立地图,当家具布置发生变化时,通过云端地图功能,会实时更新和优化。

自主行走毫不费力:家中的餐桌底下桌脚多,地形复杂,最是考验扫地机的行走能力。而拥有激光导航的扫地机能绕着每个桌角清扫一圈,直至将餐桌底下探索完整,进了餐桌底下出不来,是不存在的。

除了扫地机器人,国内思岚科技推出的激光SLAM导航技术,还广泛应用于送餐机器人、导引导购机器人、迎宾机器人等各大领域的服务场所,甚至在海外的科研机构以及IEEE论文中也有思岚产品的身影。

标签:机器人,清扫,路径,算法,扫地,SLAM,规划
来源: https://blog.51cto.com/14035552/2473743