ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The difference between the global and local costmap is that the global planner uses the global costmap to generate a long-term plan while the local planner uses the local costmap to generate a short-term plan. There are many different ways to configure the two costmaps, but in the tutorials only the global costmap is configured to use a map while the local planner operates in the odometric frame.
Running SLAM with the navigation stack should be as easy as replacing the map_server with a SLAM algorithm of your choice that publishes on the "map" topic. To see an example of the navigation stack running with SLAM, you might want to check out the navigation_stage package. Specifically, you'll be interested in the move_base_gmapping_5cm.launch file.
2 | No.2 Revision |
The difference between the global and local costmap is that the global planner uses the global costmap to generate a long-term plan while the local planner uses the local costmap to generate a short-term plan. There are many different ways to configure the two costmaps, but in the tutorials only the global costmap is configured to use a map while the local planner operates in the odometric frame.
Running Setting the "static_map" parameter to true just means that you'll be taking an outside map source for navigation. That map could come from SLAM with or it could come from a source like the map_server. You shouldn't have to change the way you've configured the navigation stack should be as easy as replacing to run SLAM, you'll just replace the map_server with a your SLAM algorithm of your choice that publishes on the "map" topic. choice.
To see an example of the navigation stack running with SLAM, you might want to check out the navigation_stage package. Specifically, you'll be interested in the move_base_gmapping_5cm.launch file.
The "static_map" parameter is, admittedly, a bit poorly named. It should probably be something like "external_map" instead, but there are legacy reasons for why it has its current name. There was a time where the navigation stack couldn't support dynamically changing maps, but now it handles them just fine.