Ask Your Question
0

RTABMAP send generated map via topic

asked 2016-07-03 10:36:15 -0600

jacksonkr_ gravatar image

updated 2016-07-03 10:36:44 -0600

Current Setup

Currently I have a ROS Master and a robot client. The robot client sends all data to the master which is running RTABMAP. The 3d map is put together on the Master.

Desired Setup

I want the robot client to generate the maps and stream the compiled data via wifi to the ROS Master. The caveat is that I eventually want multiple robot clients to send their data back to the same master. Do I merely need to shuffle code around in the RTABMAP source?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2016-07-04 13:46:29 -0600

matlabbe gravatar image

Hi,

Each robot can send their map to Master through /rtabmap/mapData topic. This topic contains the graph and the latest compressed data added to map (at each second). You may have to set tf_prefix parameter with a different prefix to have a unique TF tree for each robot. You would also need to start each rtabmap in their own namespace (see <group> launch tag).

You could use a map_assembler node on the Master to reconstruct the map for each robot. To merge the maps, you would have to implement your own approach if you want to do it online. Merging the maps from multiple robots can be done offline by processing back-to-back each resulting database (similar to Multi-Session tutorial).

cheers

edit flag offensive delete link more

Comments

Excellent answer. Thank you for your attention to detail, I really appreciate it.

jacksonkr_ gravatar imagejacksonkr_ ( 2016-07-04 18:19:59 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-07-03 10:36:15 -0600

Seen: 86 times

Last updated: Jul 04 '16