Re: Mapping with both drone and rover issues
Posted by
matlabbe on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Mapping-with-both-drone-and-rover-issues-tp9953p9959.html
Should I map the world with rover without launching the drone and vice versa. Then, combine both maps together
I would start like that. Beside the other robot, all dynamic obstacles / people can be in the map if they were there during the mapping. That is a problem in itself, so it is recommended to map in a static environment if possible.
I would recommend to use 2 rviz to monitor the progress of the two robots, assuming they are using their own ros master (that is the easiest way). Set the ROS_MASTER_URI of the robot you want to see before launching rviz.
To have two robots on same ros master, it is possible but slightly more complicated. First, you need to launch all nodes of both robots in their respective robot namespace connected to same ros master. Make sure there are no global topics used, so that all topics will be prefixed by the robot namespace. Next thing is to add a prefix to all TF used, e.g., rover/base_link, drone/base_link. For rtabmap and rtabmap's odometry, you can change the tf name with map_frame_id and odom_frame_id parameters (e.g., rover/map -> rover/odom -> rover/base_link, drone/map -> drone/odom -> drone/base_link). This can be complicated if you are using an URDF, as you would need to add a parameter in URDF to setup the correct tf prefix. Last thing is to connect the 2 tf trees under same root, called "world" for example. You can do it by publishing a static transform between world->robot/map and world->drone/map. In rviz, setting global frame option to "world", you should see the 2 tf trees together.
cheers,
Mathieu