Skip to content

tuw-robotics/stage_ros2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stage_ros2

This is a ROS bridge for the robot simulator Stage. It supports multiple robots with one or multiple tf-trees.

Single Robot Support

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

Multi Robot Support

This stage ROS bridge supports multiple robots with one or multiple tf-Trees.

multiple tf-trees

stage two rviz widowns showing two robot views
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

stage and rviz with laser, tf, and cameras
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

Thanks

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.