gazebosim / ros_gz

Integration between ROS (1 and 2) and Gazebo simulation
https://gazebosim.org
Apache License 2.0
211 stars 125 forks source link

Add support for gz.msgs.EntityWrench (base branch: ros2) (backport #573) #574

Open mergify[bot] opened 4 days ago

mergify[bot] commented 4 days ago

🎉 New feature

Closes #566

Also replaces PR #572, now retargeted to the ros2 branch.

Summary

Adds the new ros_gz_interfaces/msg/EntityWrench, with structure compatible with gz.msgs.EntityWrench. This enables the user to apply wrenches to Gazebo entities using ROS topics.

Also implements the ros_gz_bridge mapping between ros_gz_interfaces/msg/EntityWrench and gz.msgs.EntityWrench.

Test it

Manual testing involves spawning any entity in Gazebo and loading the gz::sim::systems::ApplyLinkWrench plugin to the world SDF. Then, call the ros_gz_bridge to expose the entity wrench topic as follows (YAML syntax):

- topic_name: "/world/<world_name>/wrench"
  ros_type_name: "ros_gz_interfaces/msg/EntityWrench"
  gz_type_name: "gz.msgs.EntityWrench"

Checklist

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.


This is an automatic backport of pull request #573 done by Mergify.

ahcorde commented 3 days ago

CI issues should hopefully be fixed after https://github.com/ros2/ros2/pull/1574