ROS move_base
Description
The move_base package provides an implementation of an action (see the actionlib package) that provides a goal in the world, while attempting to reach it with a mobile base.
http://wiki.ros.org/move_base
It works in conjunction with 4 ROS plugins, namely – base_global_planner
, base_local_planner
, global_costmap
and local_costmap
.
It receives a target-goal and when after it is reached, a goal-result is returned.
Periodically, it sends output velocity commands to the robot via cmd_vel
.
Examples
...
Input List
There are 14 parameters.
Port Name | Message type | Callback |
---|---|---|
base_global_planner | Plugin [movai_msgs-ROS1/PluginServer] | |
base_local_planner | Plugin [movai_msgs-ROS1/PluginServer] | |
global_costmap | Plugin [movai_msgs-ROS1/PluginServer] | |
laser_back/scan | LaserScan [sensor_msgs-ROS1/Subscriber] | place_holder.cb |
laser_front/scan | LaserScan [sensor_msgs-ROS1/Subscriber] | place_holder.cb |
local_costmap | Plugin [movai_msgs-ROS1/PluginServer] | |
map | -missing-package-message | place_holder.cb |
move_base | MoveBaseAction [move_base_msgs-ROS1/ActionServer] | |
path | Path [nav_msgs-ROS1/Subscriber] | place_holder.cb |
points0 | PointCloud2 [sensor_msgs-ROS1/Subscriber] | place_holder.cb |
points1 | PointCloud2 [sensor_msgs-ROS1/Subscriber] | place_holder.cb |
scan_omni | LaserScan [sensor_msgs-ROS1/Subscriber] | place_holder.cb |
tf | TF [movai_msgs-ROS1/TFSubscriber] | place_holder.cb |
~clear_costmaps | Empty [std_srvs-ROS1/ServiceServer] | place_holder.cb |
Output List
There are 9 parameters.
Port Name | Message type |
---|---|
cmd_vel | Twist [geometry_msgs-ROS1/Publisher] |
move_base | MoveBaseAction [move_base_msgs-ROS1/ActionServer] |
~TebLocalPlannerROS/global_plan | Path [nav_msgs-ROS1/Publisher] |
~TebLocalPlannerROS/local_plan | Path [nav_msgs-ROS1/Publisher] |
~TebLocalPlannerROS/parameter_updates | Config [dynamic_reconfigure-ROS1/Publisher] |
~global_costmap/costmap | OccupancyGrid [nav_msgs-ROS1/Publisher] |
~global_costmap/costmap_updates | OccupancyGrid [nav_msgs-ROS1/Publisher] |
~local_costmap/costmap | OccupancyGrid [nav_msgs-ROS1/Publisher] |
~local_costmap/costmap_updates | OccupancyGrid [nav_msgs-ROS1/Publisher] |
Parameter List
There are 9 parameters.
Parameter | Description |
---|---|
base_global_planner | [string] The name of the plugin for the global planner to use with move_base. You may refer to the pluginlib GGG documentation for more details about the plugins. This plugin must adhere to the nav_core::BaseGlobalPlanner interface specified in the nav_core package. |
base_local_planner | [string] The name of the plugin for the local planner to use with move_base. You may refer to the pluginlib documentation for more details about plugins. This plugin must adhere to the nav_core::BaseLocalPlanner interface specified in the nav_core package. |
clearing_rotation_allowed | [bool] Determines whether or not the robot will attempt an in-place rotation while attempting to clear out space. Note – This parameter is only used when the default recovery behaviors are in use, meaning the user has not set the recovery_behaviors parameter to anything custom. |
cmd_vel | [string] The name of the topic responsible for streaming velocity commands meant for execution by a mobile base. |
controller_frequency | [double] The rate in Hz at which to run the control loop and send velocity commands to the base. |
planner_frequency | [double] The rate in Hz at which to run the global planning loop. If the frequency is set to 0.0, the global planner will only run when a new goal is received or the local planner reports that its path is blocked. |
planner_patience | [double] The length of time that the planner will wait in seconds in an attempt to find a valid plan before space-clearing operations are performed. |
recovery_behavior_enabled | [bool] Whether or not to enable the move_base recovery behaviors to attempt to clear out space. |
static_map | [string] This parameter determines whether or not the costmap should initialize itself based on a map served by the map_server. |
More Info
wiki.ros.org/move_base