ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
My advise is to use a xacro
file with a namespace
or prefix
argument, that is the same as the topic namespace for this robot.
When using Gazebo the description file also lists the plugins to be used, that may include:
Remapping /tf
to /robotX/tf
is another issue, that is more about all nav stack nodes sending and receiving many useless transforms on /tf
while they are only interested in the transforms that involve the one robot they navigate.
To my knowledge, both ways work fine in a local multi-robot simulation. You may not want that for multiple real robots exchanging countless and useless transforms over wifi.
Prefixing the frames may be omitted when using a separate tf
topic for each robot, but then you cannot display the whole fleet in e.g. RViz without some kind of complex bridge that would add prefixes on-the-fly in all messages their appear in (tf but also LaserScan or others). This may be a minor problem, or not.
Note that with Ignition Gazebo, there is no publication from the simulation to tf
which is normal as tf
is about estimations while the simulation is about ground truth. Ignition can publish e.g. the real pose, that you may forward to your favorite tf
topic.