Mastering ROS for Robotics Programming
上QQ阅读APP看书,第一时间看更新

Chapter 3. Simulating Robots Using ROS and Gazebo

After designing the 3D model of a robot, the next phase is its simulation. Robot simulation will give you an idea about the working of robots in a virtual environment.

We are going to use the Gazebo (http://www.gazebosim.org/) simulator to simulate the seven DOF arms and the mobile robot.

Gazebo is a multirobot simulator for complex indoor and outdoor robotic simulation. We can simulate complex robots, robot sensors, and a variety of 3D objects. Gazebo already has simulation models of popular robots, sensors, and a variety of 3D objects in their repository (https://bitbucket.org/osrf/gazebo_models/). We can directly use these models without having the need to create.

Gazebo has a good interface in ROS, which exposes the whole control of Gazebo in ROS. We can install Gazebo without ROS and we should install the ROS-Gazebo interface to communicate from ROS to Gazebo.

In this chapter, we will discuss more on simulation of seven DOF arms and differential wheeled robots. We will discuss ROS controllers that help to control the robot's joints in Gazebo.

We will cover the following list of topics in this chapter:

  • Simulating robotic arms in Gazebo
  • Adding sensors to the robotic arm simulation
  • Interfacing Gazebo to ROS
  • Adding ROS controllers to robots
  • Working with the robotic arm joint control
  • Simulating the mobile robot in Gazebo
  • Adding sensors to mobile robot simulation
  • Moving the mobile robot in Gazebo using a keyboard teleop