Hi Patrick,
The robot should be localized in the map before we can send a goal. On start, the robot doesn't know where it is (unless it can localize on the first image received), so it may need to explore a little to get localized. For the questions in the title of the post, see the following sections.
How to label nodes?
-
"/rtabmap/set_label" service: when you know the ID of the node you want to label, you can use this service.
-
rtabmapviz: Menu "Detection -> Label current location...": label the last node added to the map (mapping mode)
How to send goals based on label or node ID?
-
"/rtabmap/set_goal" service: set either the node ID or label you want to set as goal.
-
rtabmapviz: Menu "Detection->Send goal...": you can set an ID or a label.
To send a goal based on a pose, you can do that in RVIZ with "2D Nav Goal" action (send goal on /rtabmap/goal topic). See this recent post or the rtabmap's Turtlebot tutorial for examples. Using this approach, you can only send pose near the local map.
How to see the node IDs?
-
rtabmapviz: Open the Graph view (Menu "Window->Show view->Graph view"). The graph should appear if rtabmap is already running, otherwise, you can do "Edit->Download graph only". You can move the mouse over the nodes to see their ID (format "Node ID [Map ID] Pose").
-
rviz: rtabmap publishes the node IDs/labels with "/rtabmap/labels" topic. This topic is a visualization_msgs/MarkerArray message, select the corresponding type in RVIZ.
cheers,
Mathieu