MATLAB Answers

Would I able to load a Gazebo world as a training model into rlSimulinkEnv function ?

10 views (last 30 days)
Jen-Yu Lee
Jen-Yu Lee on 18 Feb 2021
Commented: Jen-Yu Lee on 22 Feb 2021
Hi, I'm trying to use Simulink to apply turtlebot3 to do deep reinforcement learning simulation, the tutorial I'm following is from Robotics Arena DRL for Walking Robots.
I face a problem is that I want to load the Gazebo model such like turtlebot3_world.world instead of the walking robot model, but I didn't find any tutorial about it.
Here is the code at the file createWalkingAgent2D.m
% Environment
mdl = 'walkingRobotRL2D';
load_system(mdl);
blk = [mdl,'/RL Agent'];
env = rlSimulinkEnv(mdl,blk,observationInfo,actionInfo);
If there is anyone knows it, please give me some advicess. Thank you!!

Accepted Answer

Cam Salzberger
Cam Salzberger on 18 Feb 2021
Hello Jen-Yu,
Loading a Simulink model that simulates a robot is very different than loading a Gazebo world. There is currently no capability for loading a Gazebo model inside of Simulink and accessing data from it directly.
You can, however, run Gazebo externally and load the model into that. You can then communicate with Gazebo using Gazebo Co-Simulation, ROS, or ROS 2, and feed the data received from that into your reinforcement learning algorithm. Gazebo Co-Simulation will provide a higher level of control over the Gazebo simulation, and may have more consistent performance. It may be easier to get started with ROS or ROS 2, though, since TurtleBot3 is set up to use it already.
-Cam
  3 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!