Book Image

Robot Operating System Cookbook

By : Kumar Bipin
Book Image

Robot Operating System Cookbook

By: Kumar Bipin

Overview of this book

This book will leverage the power of ROS with an introduction to its core and advanced concepts through exciting recipes. You will get acquainted with the use of different synchronous and asynchronous communication methods, including messages, services, and actions. You will learn how to use the various debugging and visualization tools used in development and how to interface sensors and actuators with the ROS framework. Firstly, you will get to grips with ROS simulation frameworks, such as Gazebo and RotorS for modeling and simulating any physical robot and virtual environment. You will also cover mobile robotics, micro-aerial vehicles, and robotic arms, which are the leading branches of robotic applications. Robot Operating System Cookbook will also guide you in the development of an autonomous navigation framework for both mobile robots and micro-aerial vehicles. Finally, you will explore ROS-Industrial, an open source project that extends the advanced capabilities of ROS software to manufacturing industries.
Table of Contents (12 chapters)

Understanding the Arduino-ROS interface

We are going to look at the Arduino-ROS interface first. Arduino is an open-source electronics platform based on easy-to-use hardware and software (https://www.arduino.cc/). Arduino perceives the environment by receiving inputs from many sensors and affects its surroundings by controlling lights, motors, and other actuators. Arduino can be used for the quick prototyping of robots. The main applications of Arduino in robotics are interfacing sensors and actuators for the computer system using the UART interface. Most of the Arduino boards are powered by Atmel microcontrollers, which are available from 8-bit to 32-bit, with clock speeds from 8 MHz to 84 MHz.

There are a variety of Arduino boards available on the market. However, selecting one of them is dependent on the nature of the robotic application you're developing. Some of them...