How to apply relative force/torque/wrench using Gazebo Co simulation blocks in Simulink?

3 次查看(过去 30 天)
hello!
I am simulating a flying robot in gazebo, and have been using the Gazebo simulink cosimulation approach. I calculate lift/drag and so on in the relative, body frame of the robot using my own functions. I know gazebo has this capability through other means(outside of MATLAB), but I would like to stay in the MATLAB-Simulink-Gazebo world. The documentation for the gazebo applylinkwrench blocks is not thorough, and I only see the ability to apply two message types in the block: ApplyLinkWrench or ApplyJointTorque. It seems there should be a ApplyLinkWrenchRelative, or something along those lines, but I cannot find it.
Additionally, if anyone has any insight into how to extract velocity in relative frame from a model/link, I would appriciate that as well!
thanks!

回答(1 个)

Gaurav Bhosale
Gaurav Bhosale 2021-5-22
编辑:Gaurav Bhosale 2021-5-22
Hi Kenneth,
To enable Gazebo functionality which are not available in current MATLAB-Simulink support, you can create custom plugin and call Gazebo API. Further, to connect with Simulink , you can use Gazebo Subscribe/Publish blocks (Custom Message Support) from R2020b and later.
Further, we have extended Gazebo Co-Sim funcationality in R2020b such as read link/joint state, set joint position, etc.

Community Treasure Hunt

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

Start Hunting!

Translated by