Book Image

ROS Robotics By Example, Second Edition - Second Edition

By : Carol Fairchild, Lentin Joseph, Dr. Thomas L. Harman
Book Image

ROS Robotics By Example, Second Edition - Second Edition

By: Carol Fairchild, Lentin Joseph, Dr. Thomas L. Harman

Overview of this book

ROS is a robust robotics framework that works regardless of hardware architecture or hardware origin. It standardizes most layers of robotics functionality from device drivers to process control and message passing to software package management. But apart from just plain functionality, ROS is a great platform to learn about robotics itself and to simulate, as well as actually build, your first robots. This does not mean that ROS is a platform for students and other beginners; on the contrary, ROS is used all over the robotics industry to implement flying, walking and diving robots, yet implementation is always straightforward, and never dependent on the hardware itself. ROS Robotics has been the standard introduction to ROS for potential professionals and hobbyists alike since the original edition came out; the second edition adds a gradual introduction to all the goodness available with the Kinetic Kame release. By providing you with step-by-step examples including manipulator arms and flying robots, the authors introduce you to the new features. The book is intensely practical, with space given to theory only when absolutely necessary. By the end of this book, you will have hands-on experience on controlling robots with the best possible framework.
Table of Contents (18 chapters)
ROS Robotics By Example Second Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Controlling an articulated robot arm in Gazebo


The Modifications to the robot URDF section in Chapter 2, Creating Your First Two-Wheeled ROS Robot (in Simulation), describes changes that need to be made to the URDF model so that Gazebo recognizes it as an SDF. The next section identifies the changes needed for our robot arm, rrbot.

Adding Gazebo-specific elements

Specific elements unique to the Gazebo simulation environment are grouped into the following areas:

  • The <material> tags are used to specify the Gazebo color or texture for each link

  • The <mu1> and <mu2> tags are used to define the friction coefficients for the contact surfaces of four of the robot's links

  • A plugin is added for control of the revolute joints of rrbot (included here, but described in the Adding a Gazebo ROS control plugin section)

These specific Gazebo XML elements needed for simulation are split into a separate file labeled rrbot.gazebo, and an Xacro <include> statement is used in the main rrbot4...