这个包给导航功能包集提供了一种修复机制,该机制尝试在某给定区域外将代价地图convert成静态地图实现空间清理。
1 Overview
clear_costmap_recovery::ClearCostmapRecovery是一种简单的修复机制,它将距离机器人一定半径范围区域外的代价地图恢复为静态地图。 其继承了nav_core包中接口nav_core::RecoveryBehavior ,以插件方式在move_base node中使用。
2 ClearCostmapRecovery
clear_costmap_recovery::ClearCostmapRecovery对象将其功能以C++ ROS Wrapper导出,在初始化时指定的ROS命名空间使用。
下面是创建对象clear_costmap_recovery::ClearCostmapRecovery的一个示例:
#include <tf/transform_listener.h>
#include <costmap_2d/costmap_2d_ros.h>
#include <clear_costmap_recovery/clear_costmap_recovery.h>
...
tf::TransformListener tf(ros::Duration(10));
costmap_2d::Costmap2DROS global_costmap("global_costmap", tf);
costmap_2d::Costmap2DROS local_costmap("local_costmap", tf);
clear_costmap_recovery::ClearCostmapRecovery ccr;
ccr.initialize("my_clear_costmap_recovery", &tf, &global_costmap, &local_costmap);
ccr.runBehavior();
2.1 API Stability
- The C++ API is stable.
- The ROS API is stable.
2.2 ROS Parameters
~<name>/reset_distance (double, default: 3.0)
- 指定距离机器人半径几米的区域之外的障碍在恢复代价地图为静态地图时候将被清除。