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

Revision history [back]

click to hide/show revision 1
initial version

I didn't know it was possible until you had asked. Apparently it is supported according to a forum post here

I feel the forum post sums it up nicely:

rtabmap does topological planning with its graph. The global path would be all nodes to be traversed on the map's graph to reach the goal. The local graph is the upcoming nodes (up to RGBD/LocalRadius, default 10 meters) that should be loaded in Working Memory so that the robot can localize on the path. In this topological planning, there is no explicit obstacle detection (the grid map is not used), it is just assumed that poses on the graph are cleared from obstacle (which should be the case if the robot moved on these particular locations). Normally, rtabmap planning would be integrated on top of move_base navigation for metric planning, which will do obstacle avoidance using the grid map generated by rtabmap. rtabmap sends goals to move_base, then move_base sends velocity commands to robot controller.

So basically it is able to provide a global path towards a goal, but relies on move_base to actually get the robot to follow the path, send velocity goals to your controller module and avoid pbstacles. I assume this is not the default use case for RTAB-MAP as most people would use it to loaclize (get xyz position) and rely on move_base to plan paths and avoid obstacles. But it is definitely possible to plan paths with it, although I'm not sure of what is the benefit.

click to hide/show revision 2
No.2 Revision

I didn't know it was possible until you had asked. Apparently it is supported according to a forum post here

I feel the forum post sums it up nicely:

rtabmap does topological planning with its graph. The global path would be all nodes to be traversed on the map's graph to reach the goal. The local graph is the upcoming nodes (up to RGBD/LocalRadius, default 10 meters) that should be loaded in Working Memory so that the robot can localize on the path. In this topological planning, there is no explicit obstacle detection (the grid map is not used), it is just assumed that poses on the graph are cleared from obstacle (which should be the case if the robot moved on these particular locations). Normally, rtabmap planning would be integrated on top of move_base navigation for metric planning, which will do obstacle avoidance using the grid map generated by rtabmap. rtabmap sends goals to move_base, then move_base sends velocity commands to robot controller.

So basically it is able to provide a global path towards a goal, but relies on move_base to actually get the robot to follow the path, send velocity goals to your controller module and avoid pbstacles. I assume this is not the default use case for RTAB-MAP as most people would use it to loaclize (get xyz position) and rely on move_base to plan paths and avoid obstacles. But it is definitely possible to plan paths with it, although I'm not sure of what is the benefit.