ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

When using a static map, move_base uses the map topic to set the global costmap. If you get a tf lookup error only in that case, I would guess that the published map is in the wrong frame. Have a look at the code of your map server and verify that it has /map as frame id, not world.

Just a side note: you should not use the map frame in your local costmap if you are using particle-filter based localization algorithms such as amcl or gmapping. Instead you should use your odom frame. The reason is that odom is continuous while particle based algorithms might "jump". If localization jumps, it can have two negative effects on your local planner:

  1. The local costmap gets blurred, i.e. obstacles might appear bigger than they are. This is a problem in particular in cluttered environments where the navigation path is tight.

  2. The robot might jump directly into an obstacle which can prevent the local planner from working. Your robot might just stop and refuse to move again in such cases.