ROS机器人底盘(17)-move_base(5)-inflati
2018-01-25 本文已影响141人
PIBOT导航机器人
ROS机器人底盘(15)-move_base(3)-costmap介绍的local_costmap和global_costmap的参数
漏了其中的plugin参数
inflation
先看下官方的图
costmapspec
- 红色为机器人轮廓
- 内部蓝色圆即为内切圆
- 外部蓝色圆即为外切圆
cost_value
每个网格的值从0~255
-
Lethal(254): 网格与机器人中心重合, 肯定导致冲突 -
Inscribed(253): 网格外切圆与机器人内切圆重合, 同样肯定导致冲突 -
Possibly circumscribed: 网格外切圆与机器人外切圆外切, 可能导致冲突(机器人姿态决定),具体由
inscribed_radiusinflation_radius和cost scaling factor相关 -
Freespace(0): 没有任何障碍,机器人可以占用该网格 -
Unknown: 网格信息未知
上图坐标中的红色衰减曲线就标识网格离障碍的距离与cost_value的关系,计算方法具体如下
computeCost
参数
inflation_layer:
cost_scaling_factor: 2.5 # exponential rate at which the obstacle cost drops off (default: 10)
inflation_radius: 1.2 # max. distance from an obstacle at which costs are incurred for planning paths.
-
inflation_radiuscost_value为0的网格离障碍的距离 -
cost_scaling_factor衰减因子,越大上面的曲线越陡
- 左图
inflation_radius = 0.55 cost_scaling_factor = 5 - 右图
inflation_radius = 1.75 cost_scaling_factor = 2.58