历史上的今天
今天是:2024年08月25日(星期日)
2018年08月25日 | 机器人自主定位导航=SLAM+运动规划
2018-08-25 来源:SLAMTEC
SLAM技术作为机器人自主移动的关键技术,让很多人都误解为:SLAM=机器人自主定位导航。
其实,SLAM≠机器人自主定位导航 ,不解决行动问题。
SLAM如其名一样,主要解决的是机器人的地图构建和即时定位问题,而自主导航需要解决的是智能移动机器人与环境进行自主交互,尤其是点到点自主移动的问题,这需要更多的技术支持。
要想解决机器人智能移动这个问题,除了要有SLAM技术之外,还需要加入路径规划和运动控制。在SLAM技术帮助机器人确定自身定位和构建地图之后,进行一个叫做目标点导航的能力。通俗的说,就是规划一条从A点到B点的路径出来,然后让机器人移动过去。
机器人自主定位导航= SLAM+路径规划和运动控制
运动规划是一个很大的概念,从机械臂的运动、飞行器的飞行,到扫地机的清扫,机器人的移动,其实这些都是属于运动规划的范畴。
运动规划主要分为:全局规划、局部规划。
全局规划
全局规划,顾名思义,是最上层的运动规划逻辑,它按照机器人预先记录的环境地图并结合机器人当前位姿以及任务目标点的位置,在地图上找到前往目标点最快捷的路径。
局部规划
当环境出现变化或者上层规划的路径不利于机器人实际行走的时候(比如机器人在行走的过程中遇到障碍物),局部路径规划将做出微调。
与全局规划有所区别的是,局部规划可能并不知道机器人最终要去哪,但是对于机器人怎么绕开眼前的障碍物特别在行。
这两个层次的规划模块协同工作,机器人就可以很好的实现从A点到B点的智能移动了。不过实际工作环境下,上述配置还不够。因为运动规划的过程中还包含静态地图和动态地图两种情况。
A*算法
A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近,最终搜索速度越快。但是,A*算法同样也可用于动态路径规划当中,只是当环境发生变化时,需要重新规划路线。
D*算法
D*算法则是一种动态启发式路径搜索算法,它事先对环境位置,让机器人在陌生环境中行动自如,在瞬息万变的环境中游刃有余。D*算法的最大优点是不需要预先探明地图,机器人可以和人一样,即使在未知环境中,也可以展开行动,随着机器人不断探索,路径也会时刻调整。
上述的几种算法都是目前绝大部分机器人所需要的路径规划算法,能够让机器人跟人一样智能,快速规划A到B点的最短路径,并在遇到障碍物的时候知道如何处理。但扫地机器人作为最早出现在消费市场的服务机器人之一,它需要的路径规划算法更为复杂。
空间覆盖(space coverage)
扫地机器人所需要的功能跟市面上的机器人有所不同,比如针对折返的工字形清扫,如何有效进行清扫而不重复清扫?如何让扫地机和人一样,理解房间、门、走廊这种概念?
针对这些问题,学术界长久以来有一个专门的研究课题,叫做空间覆盖(space coverage),同时也提出了非常多的算法和理论。其中,比较有名的是Morse Decompositions,扫地机通过它实现对空间进行划分,随后进行清扫。
所以,他要实现的不是尽快实现从A到B的算法,为了家里能尽量扫得干净,要尽量覆盖从A到B点的所有区域,实现扫地机器人“扫地”的这个功能。
所以,机器人自主定位导航技术的发展还需要越来越多的技术加以支撑,适用于更多的场景。虽然技术和需求在变,但不变的是,在行业中取长补短,结合不同新的技术进行融合,这是不会改变的事实。
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 09:44 编辑 1. 竞赛报名 1) 参赛对象:江苏省内所有设置电类专业的高校(包括本科和高职高专)在籍学生; 2) 竞赛组织:由各参赛学校指定竞赛负责人和领队统一负责本校参赛队的组队、报名、竞赛和送审工 ...… 查看全部问答> |
|
作者:华清远见嵌入式学院 不记得是什么时候了,曾经看过一篇文章,里面有一句话:“痛并快乐着”让我印象非常深刻,在刚看到这句话的那一刻,自己颇有些感同身受的共鸣。回想一下:从学生到技术人的成长过程是痛并快乐着的、跟团队一起进行项目研 ...… 查看全部问答> |
|
就在不久之前,大多数微波电容器还都基于多层陶瓷烧制技术。在生产过程中,多层高导电性的金属合金电极层和低损耗的陶瓷绝缘层交错排列,从而得到所需要的电容值。然后,将合成的叠层进行高温烧制,将其烧结成单片结构。这一工艺目前仍然很好地满足 ...… 查看全部问答> |
|
各位大侠: 小弟有一事求教:我有一个网上购物的网站,要做一个应用,就是把用户在网上下的订单直接用GPRS的方式发送到商家的接收和打印终端上,这种终端现在市面上没有,主要难搞定的是数据的发送和接收,哪位高手可以帮我做开发? ...… 查看全部问答> |
|
mini2440 jlink 间接烧写nand 以及 uboot 我的是256M的nand。。没有并口,使用jlink。 使用supervivi-128M,这个文件直接烧写到nor,启动正常。从nor启动后,利用\'a\'命令烧到nand,然后从nand也能正常启动(需要按下六个按键中的一个)。说明这个文件自适应nor、nand。 我打算从nand启 ...… 查看全部问答> |
|
今天插上仿真器的数据线,突然出现指示灯不停闪烁,频率差不多是10hz。点击擦除芯片,出现:can not connect to j-link via usb。failed to connect could not erase chip,not connected擦出按手册说,是启动,那也不能不停启动啊。昨天还没 ...… 查看全部问答> |




