Co-simulation between Simulink and Gazebo with ROS 2: How to include GazeboPlugin in a launch file?
3 views (last 30 days)
Show older comments
Hi,
I want to co-simulate this robot developed in ROS 2 with Simulate (control) and Gazebo (visual). Just in case, I'm using Ubuntu 18.04 running ROS Melodic and ROS 2 Dashing.
I've successfully co-simulated the UR10 robot with ROS following the tutorial of MathWorks: Control Manipulator Robot with Co-Simulation in Simulink and Gazebo.
However, I'm wondering how could be done this with ROS 2 and with a robot containing a more complex architecture (.launch instead of .world). I've seen here that the GazeboPlugin is available in C++, but I'm not sure about how to integrate it to the .launch of the existent project.
Any help is welcome.
Jon
0 Comments
Answers (1)
Gaurav Bhosale
on 20 May 2022
Edited: Gaurav Bhosale
on 20 May 2022
Hi Jon,
In the VM, the plugin location is /home/user/src/GazeboPlugin/
The Plugin C++ code is located at /home/user/src/GazeboPlugin/src/gazeboplugin/GazeboPlugin.cpp
Further, .launch file should include .world file and respective .world file should contain <plugin> details.
You can check Gazebo roslaunch tutorial.
To integrate Gazebo Co-Sim plugin, you need add <plugin> details in the .world file as mentioned in this example.
<plugin name="GazeboPlugin" filename="lib/libGazeboCoSimPlugin.so"><portNumber>14581</portNumber></plugin> [ Relative Path - if Gazebo launched from /home/user/src/GazeboPlugin/export/ ]
OR
<plugin name="GazeboPlugin" filename="/home/user/src/GazeboPlugin/export/lib/libGazeboCoSimPlugin.so"><portNumber>14581</portNumber></plugin> [ Absolute Path ]
Thanks.
See Also
Categories
Find more on Robotics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!