天天看点

ROS学习笔记之——cost map

之前博客《ROS学习笔记之——Navigation Stack》和《 ROS学习笔记之——路径规划及avoid obstacles》中其实已经涉及过costmap了,本博文再来总结一下

机器人的位置是根据从编码器和惯性传感器(IMU传感器)获得的测位来估计的。然后,通过安装在机器人上的距离传感器来计算机器人与障碍物之间的距离。导航系统将机

器人位置、传感器姿态、障碍物信息和作为SLAM地图的结果而获得的占用网格地图调用到固定地图(static map),用作占用区域(occupied area)、自由区域(free area)

和未知区域(unknown area)。

在导航中,基于上述四种因素,计算障碍物区域、预计会和障碍物碰撞的区域以及机器人可移动区域,这被称为成本地图(costmap)。根据导航类型,成本地图又被分成两部分。一个是global_costmap,在全局移动路径规划中以整个区域为对象建立移动计划,其输出结果就是global_costmap。而另一个被称为local_costmap,这是在局部移动路径规划中,在以机器人为中心的部分限定区域中规划移动路径时,或在躲避障碍物时用到的地图。

costmap用0到255之间的值来表示。如下图所示。根据该值可以知道机器人是位于可移动区域还是位于可能与障碍物碰撞的区域。

ROS学习笔记之——cost map
ROS学习笔记之——cost map