Overview

NOTE: This package is currently unreleased and contains experimental code.

pose_follower_3d is based on the pose_follower local planner and adheres to the nav_core::BaseLocalPlanner interface found in the nav_core package. It is supposed to work as a local planner in accordance with the sbpl_lattice_planner_3d in move_base.

pose_follower_3d will try to follow the originally planned poses of the path as close as possible, while performing 3D collision checks of the robot's full kinematic configuration against a 3D map. This map should be built and provided by octomap_server. A downprojected 2D map for costmap_2d should be also provided by octomap_server to perform fast checks agains the robot's footprint.

Documentation

ROS API

Subscribed Topics

odom (nav_msgs/Odometry)
  • The robot's odometry
octomap_collision_object (mapping_msgs/CollisionObject)
  • Occupied cells for collision check from octomap_server

Published Topics

cmd_vel (geometry_msgs/Twist)
  • Holonomic velocity command for the base controller

Services Called

/environment_server/get_robot_state (planning_environment_msgs/GetRobotState)
  • Requests the robot's current kinematic state at the beginning of each plan

Parameters

~k_trans (float, default: 1.5)
  • Gain for translational velocity
~k_rot (float, default: 1.25)
  • Gain for rotational velocity
~max_vel_lin (float, default: 0.5)
  • Maximum linear velocity
~min_vel_lin (float, default: 0.1)
  • Minimum linear velocity
~max_vel_th (float, default: 0.7)
  • Maximum rotational velocity
~min_vel_th (float, default: 0.0)
  • Minimum rotational velocity
~in_place_trans_vel (float, default: 0.0)
  • Minimum threshold for linear velocity. If it is smaller, the robot rotates only on the spot.
~{trans,rot}_stopped_velocity (float, default: 1e-4)
  • If odom reading is slower than this, then robot is stopped
~sim_time (float, default: 1.0)
  • How many seconds to forward simulate the current trajectory rollout for collision checking
~sim_granularity (float, default: 0.1)
  • How fine to test the forward simulation for collision checks (sim_time/sim_granularity checks will be made)
~tolerance_trans (float, default: 0.05)
  • How close to follow the originally planned trajectory (translations)
~tolerance_rot (float, default: 0.1)
  • How close to follow the originally planned trajectory (rotations)
~tolerance_timeout (float, default: 0.5)
  • Timeout tolerance for reaching the goal

Wiki: pose_follower_3d (last edited 2011-05-06 19:08:17 by ArminHornung)