Académique Documents
Professionnel Documents
Culture Documents
Lentin Joseph
http://robocademy.com Founder/Instructor of Robocademy
Founder of Qbotics Labs
Day 5
Simulation and Visualization in
ROS
http://robocademy.com
Agenda
http://robocademy.com
Agenda
http://robocademy.com
Agenda
http://robocademy.com
Robotics Simulation
http://robocademy.com
What is Robotics simulation?
• Process of creating a virtual robot prototype to verify the
accuracy and efficiency of robot design/model
http://robocademy.com
List of popular robot simulators
• Gazebo Simulator: http://gazebosim.org/
• V-REP: http://www.coppeliarobotics.com/
http://robocademy.com
List of popular robot simulators
• Webots: https://www.cyberbotics.com/overview
• Actin: http://www.energid.com/software/actin-robot-
control/
• Open Rave: http://openrave.org/
http://robocademy.com
ROS Simulator: Gazebo
http://robocademy.com
Features of Gazebo
• FREE & Open Source
• TCP/IP Transport
• ROS Support
http://robocademy.com
Getting started with Gazebo
simulator
• Launching Gazebo simulator
• $ gazebo
OR
• $ gzserver [Running physics engine]
• $ gzclient [GUI]
http://robocademy.com
Getting started with Gazebo
simulator
• Launching Gazebo simulator with ROS
support
• $ roslaunch gazebo_ros
empty_world.launch
http://robocademy.com
GUI Controls in Gazebo
http://robocademy.com
Robot Modelling in ROS
http://robocademy.com
What is URDF and Xacro?
• Unified Robot Description Format (URDF),
which is an XML format for representing a
robot model in ROS
http://robocademy.com
URDF Example: Pan & Tilt
<link name="base_link">
<visual>
…………….
</visual>
<collision>
…………….
</collision>
</link>
http://robocademy.com
Converting Xacro to URDF
Starting roscore
$ roscore
http://robocademy.com
Adding a URDF model into Gazebo
Launching an empty world
• $ roslaunch gazebo_ros empty_world.launch
http://robocademy.com
Rviz: ROS Visualization
• 3D Visualization tool for ROS
• Launching Rviz
• $ roscore
http://robocademy.com
Rviz: ROS Visualization
http://robocademy.com
Rviz: ROS Visualization
http://robocademy.com
Rviz: GUI Controls
http://robocademy.com
Turtlebot Simulation
$ roslaunch turtlebot_gazebo
turtlebot_world.launch
http://robocademy.com
Installing Turtlebot simulation
Installing apt GUI package manager
• $ sudo apt-get install synaptic
http://robocademy.com
Turtlebot Visualization in Rviz
• $ roslaunch turtlebot_rviz_launchers
view_model.launch
http://robocademy.com
Turtlebot Visualization in Rviz
http://robocademy.com
Turtlebot Teleoperation
• $ roslaunch turtlebot_teleop
keyboard_teleop.launch
http://robocademy.com
Robot Simulation Demos
http://robocademy.com
Turtlebot 3 Simulation
http://robocademy.com
Turtlebot 3 Simulation
Launching simulation
• $ roslaunch turtlebot3_gazebo
turtlebot3_world.launch
Launching Teleoperation
• $ roslaunch turtlebot3_teleop
turtlebot3_teleop_key.launch
http://robocademy.com
Thormang3 Simulation
http://robocademy.com
Thormang3 Simulation
Launching the simulation
• $ roslaunch thormang3_gazebo
robotis_world.launch
Moving a joint
$ rostopic pub topic_name/command
std_msgs/Float64 joint_value
http://robocademy.com
Exercise - 1
• Teleoperate Turtlebot 3
http://robocademy.com
Conclusion
• Discussed Robotics Simulation
http://robocademy.com