Sending/Recieving ROS transformation /tf using Simulink

1 view (last 30 days)
Hi,
I would like to get a ROS transformation from the /tf topic in Simulink. I already accomplished to get it in a script using getTransform, but I need it in Simulink. Is there a posibility to select FrameID and ChildFrameID in the ROS Subscribe block? If not, which alternative would you suggest? In addition, I would like to broadcast a transformation in Simulink.
My Matlab version is R2015b and I have the Robotics System Toolbox.
Thanks in advance. Jürgen

Answers (1)

Josh Chen
Josh Chen on 18 Aug 2023
Hi Jürgen,
In 2015b, you should be able to subscribe to the /tf topic directly with the ROS Subscribe block, and connect the output to Bus Selector block to obtain the FrameID and ChildFrameID. You may also send transformation with Publish block as a workaround.
Starting from R2023b, this functionality is available in ROS Toolbox. You may consider to use Get Transform block to get transform from ROS/ROS 2 network instead. You may access R2023b Prerelease through this webpage.
Thanks,
Josh

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!