This is a ROS bridge for the robot simulator Stage. It supports multiple robots with one or multiple tf-trees.
This stage ROS bridge can be configured to use a namespace even for one robot.
## with /tf
ros2 launch stage_ros2 stage.launch.py world:=cave enforce_prefixes:=false one_tf_tree:=true
## with /robot_0/tf
ros2 launch stage_ros2 stage.launch.py world:=cave enforce_prefixes:=true one_tf_tree:=false
This stage ROS bridge supports multiple robots with one or multiple tf-Trees.
Multiple TF-trees after with two rviz nodes for robot_0 and robot_1: # ros2 launch stage_ros2 stage.launch.py world:=cave_three_robots one_tf_tree:=false # ros2 launch stage_ros2 rviz_ns.launch.py config:=robot_ns namespace:=robot_0 # ros2 launch stage_ros2 rviz_ns.launch.py config:=robot_ns namespace:=robot_1 on Ubuntu 22.04 with ros2 humble |
One TF-tree after: # ros2 launch stage_ros2 demo.launch.py world:=cave_three_robots one_tf_tree:=true on Ubuntu 22.04 with ros2 humble |
I like to thank all people behind Stage and ros-simulation/stage_ros for the simulation and the first ROS bridge as well as the people for the initial ROS2 implementations ShengliangD/stage_ros2 and n0nzzz/stage_ros2. The work was used as base for my implementation. Which differs to the previous ROS interfaces in its modularity.