Simutaneous Localization And Mapping
同步定位和建图
机器人在未知的环境中建立地图,并利用该地图进行定位
移动机器人的任务一般包括建图、定位、路径规划三个方面
严格意义上讲,SLAM不包括路径规划
ROS中有许多SLAM的开源算法包,比如Gmapping、Karto、Hector、Cartographer
在定位方面有AMCL,自适应蒙特卡洛定位
在路径规划方面有Navigation,导航相关的工具包集,里面包含了许多算法,可以分为Global Planning(Dijkstra、A*……)和Local Planning(DWA……)

Map
在ROS中的地图可以说就是一个Topic:/map
message的类型Type:nav_msgs/OccupancyGrid
MapMetaData 存储了地图的相关信息,包括地图的加载时间、分辨率(单位是米/像素,通常可选0.05或0.025)、宽度和高度(单位是pixel)Pose是指地图初始化的时候相对于map这个frame的位置和朝向、数组data中存储的才是实际每一格的数值cost,表示机器人走到这一格需要消耗的成本,数组长度是地图宽度*高度


本文详细介绍了ROS中的SLAM技术,包括Simultaneous Localization And Mapping的基本概念,以及Gmapping和Karto两个SLAM算法包的应用。Gmapping通过处理激光雷达和里程计数据来创建和更新地图,其关键话题、服务和参数设置进行了阐述。同时,提到了SLAM在路径规划和定位方面的相关工具,如AMCL和Navigation。Karto SLAM则关注如何消除累计误差,实现精准定位。
最低0.47元/天 解锁文章
4190

被折叠的 条评论
为什么被折叠?



