Mastering ROS for robotics programming
A new book by Lentin Joseph, Mastering ROS for Robotics Programming, discusses advanced concepts in robotics and how to implement them using ROS. Readers will learn how to build models of complex robots, and how to simulate and interface their robots using the ROS MoveIt! and the ROS navigation stack. Just released this past December, this 481-page book is one of the most advanced books on ROS currently available. Joseph is the CEO/Founder of Qbotics Labs, and the author of Learning Robotics using Python.
This book begins with a deep overview of the ROS framework, discusses robot manipulation and navigation, and covers how ROS interfaces with I/O boards, sensors, and actuators. Vision sensors are essential ingredients in robotics, and so an entire chapter is dedicated to how they interface with ROS. The book also explores hardware interfacing and the simulation of complex robots in ROS and ROS Industrial, and finishes with a chapter on best practices to follow while programming in ROS.
Below is an overview of the chapters in the book:
- Introduction to ROS and its package management
- Working with 3D robot modeling in ROS
- Simulating robots using ROS and Gazebo
- Using the ROS MoveIt! and Navigation stack
- Working with Pluginlib, Nodelets and Gazebo plugins
- Writing ROS controllers and visualization plugin
- Interfacing I/O boards, sensors and actuators to ROS
- Programming Vision sensors using ROS, Open-CV and PCL
- Building and interfacing differential drive mobile robot hardware in ROS
- Exploring the advanced capabilities of ROS MoveIt!
- ROS for Industrial Robots
- Troubleshooting and best practices in ROS
The book uses ROS Indigo installed on latest Ubuntu L.T.S 14.04.03. The codes are also compatible with ROS Jade. https://github.com/
A basic knowledge in R.O.S, GNU/Linux, and C++ programming concepts is recommended.
If you liked this post, you may also be interested in:
- Learning robotics using Python
- Book Review: Implementation of Robot Systems, by Mike Wilson
- Arduino for Makers #2: Deconstructing Arduino programs
- Arduino for Makers #1: Setting up a development station
- MATLAB Robotics System Toolbox and ROS