For a limited period, all eBooks and Videos are only $10. All the practical content you need - by developers, for developers
This is the code repository for ROS Robotics By Example - Second Edition, published by Packt. It contains all the supporting project files necessary to work through the book from start to finish.
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.
All of the code is organized into folders. Each folder starts with a number followed by the application name. For example, Chapter02.
The code will look like the following:
<?xml version='1.0'?>
<robot name="dd_robot">
<!-- Base Link -->
<link name="base_link">
<visual>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<box size="0.5 0.5 0.25"/>
</geometry>
</visual>
</link>
</robot>
The format of this book is intended for the reader to follow along and perform the instructions as the information is provided. The reader will need a computer ideally with Ubuntu 16.04 (Xenial Xerus) installed. Other Ubuntu versions and Linux distributions may work, as well as macOS, Android, and Windows, but documentation for those versions will need to reference the ROS wiki (http://wiki.ros.org/Distributions). The version of ROS that this book was written around is Kinetic Kame, which is the current release recommended for stability. Its end of life is targeted for April 2021. Other versions of ROS may be used, but are untested. All software used in this book is open source and freely available for download and use. Instructions for downloading the software are found in the chapter where the software is introduced. In Chapter 1, Getting Started with ROS, instructions are given for downloading and setting up the ROS software environment. Our preferred method to download software is the use of Debian packages. Where no Debian packages exist, we refer to downloading the software from repositories such as Github. Gazebo simulation performs intensive graphics processing, and the use of a dedicated graphics card is advised but not required. Peripheral devices, such as 3D sensors, Xbox or PS3 controllers, Arduino or Raspberry Pi controller boards, and Android mobile devices are optional equipment.