Book Image

ROS Robotics By Example

Book Image

ROS Robotics By Example

Overview of this book

The visionaries who created ROS developed a framework for robotics centered on the commonality of robotic systems and exploited this commonality in ROS to expedite the development of future robotic systems. From the fundamental concepts to advanced practical experience, this book will provide you with an incremental knowledge of the ROS framework, the backbone of the robotics evolution. ROS standardizes many layers of robotics functionality from low-level device drivers to process control to message passing to software package management. This book provides step-by-step examples of mobile, armed, and flying robots, describing the ROS implementation as the basic model for other robots of these types. By controlling these robots, whether in simulation or in reality, you will use ROS to drive, move, and fly robots using ROS control.
Table of Contents (17 chapters)
ROS Robotics By Example
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Summary


The aim of this chapter was to stretch your knowledge of ROS by implementing an advanced practical experience to identify and highlight some of the ROS advantages. A ROS system of nodes was created to visualize the environment in which a Crazyflie quadrotor was seen and controlled. The Kinect for Windows V2 depth camera was used to visualize this environment, and ROS nodes handled the detection of markers on the Crazyflie and the target. The location of the Crazyflie was identified in Cartesian coordinates (x, y, z), with the x and y values referring to the quadrotor's position in the image frame and z referring to its distance from the camera. These coordinates were converted into a tf transform and published. The target location was published in a message by a separate ROS node.

The advantage of ROS layers of tf and message passing leaves lower-level details to be handled by another dedicated node. The tf transform for the Crazyflie was used by a controller node to apply PID control...