Effective Robotics Programming with ROS - Third Edition

Find out everything you need to know to build powerful robots with the most up-to-date ROS
Preview in Mapt

Effective Robotics Programming with ROS - Third Edition

Anil Mahtani et al.

3 customer reviews
Find out everything you need to know to build powerful robots with the most up-to-date ROS
Mapt Subscription
FREE
$29.99/m after trial
eBook
$28.00
RRP $39.99
Save 29%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$28.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Effective Robotics Programming with ROS - Third Edition Book Cover
Effective Robotics Programming with ROS - Third Edition
$ 39.99
$ 28.00
Mastering ROS for Robotics Programming - Second Edition Book Cover
Mastering ROS for Robotics Programming - Second Edition
$ 39.99
$ 28.00
Buy 2 for $35.00
Save $44.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781786463654
Paperback468 pages

Book Description

Building and programming a robot can be cumbersome and time-consuming, but not when you have the right collection of tools, libraries, and more importantly expert collaboration. ROS enables collaborative software development and offers an unmatched simulated environment that simplifies the entire robot building process.

This book is packed with hands-on examples that will help you program your robot and give you complete solutions using open source ROS libraries and tools. It also shows you how to use virtual machines and Docker containers to simplify the installation of Ubuntu and the ROS framework, so you can start working in an isolated and control environment without changing your regular computer setup.

It starts with the installation and basic concepts, then continues with more complex modules available in ROS such as sensors and actuators integration (drivers), navigation and mapping (so you can create an autonomous mobile robot), manipulation, Computer Vision, perception in 3D with PCL, and more. By the end of the book, you’ll be able to leverage all the ROS Kinetic features to build a fully fledged robot for all your needs.

 

Table of Contents

Chapter 1: Getting Started with ROS
PC installation
Installing ROS Kinetic using repositories
How to install VirtualBox and Ubuntu
Using ROS from a Docker image
Installing ROS in BeagleBone Black
Summary
Chapter 2: ROS Architecture and Concepts
Understanding the ROS Filesystem level
Understanding the ROS Computation Graph level
Understanding the ROS Community level
Tutorials to practise with ROS
Summary
Chapter 3: Visualization and Debugging Tools
Debugging ROS nodes
Logging messages
Inspecting the system
Setting dynamic parameters
Dealing with the unexpected
Visualizing nodes diagnostics
Plotting scalar data
Image visualization
3D visualization
Saving and playing back data
Using the rqt_gui and rqt plugins
Summary
Chapter 4: 3D Modeling and Simulation
A 3D model of our robot in ROS
Creating our first URDF file
Xacro – a better way to write our robot models
Simulation in ROS
Summary
Chapter 5: The Navigation Stack – Robot Setups
The navigation stack in ROS
Creating transforms
Publishing sensor information
Publishing odometry information
Creating a base controller
Creating a map with ROS
Summary
Chapter 6: The Navigation Stack – Beyond Setups
Creating a package
Creating a robot configuration
Configuring the costmaps – global_costmap and local_costmap
Creating a launch file for the navigation stack
Setting up rviz for the navigation stack
Adaptive Monte Carlo Localization
Modifying parameters with rqt_reconfigure
Avoiding obstacles
Sending goals
Summary
Chapter 7: Manipulation with MoveIt!
The MoveIt! architecture
Integrating an arm in MoveIt!
Simple motion planning
Motion planning with collisions
The pick and place task
Summary
Chapter 8: Using Sensors and Actuators with ROS
Using a joystick or a gamepad
Using Arduino to add sensors and actuators
Using a low-cost IMU – 9 degrees of freedom
Using the IMU – Xsens MTi
Using a GPS system
Using a laser rangefinder – Hokuyo URG-04lx
Creating a launch file
Using the Kinect sensor to view objects in 3D
Using servomotors – Dynamixel
Summary
Chapter 9: Computer Vision
ROS camera drivers support
ROS images
OpenCV in ROS
Visualizing the camera input images with rqt_image_view
Camera calibration
The ROS image pipeline
ROS packages useful for Computer Vision tasks
Performing visual odometry with an RGBD camera
Computing the homography of two images
Summary
Chapter 10: Point Clouds
Understanding the Point Cloud Library
My first PCL program
Segmentation
Summary

What You Will Learn

  • Understand the concepts of ROS, the command-line tools, visualization GUIs, and how to debug ROS
  • Connect robot sensors and actuators to ROS
  • Obtain and analyze data from cameras and 3D sensors
  • Use Gazebo for robot/sensor and environment simulation
  • Design a robot and see how to make it map the environment, navigate autonomously, and manipulate objects in the environment using MoveIt!
  • Add vision capabilities to the robot using OpenCV 3.0
  • Add 3D perception capabilities to the robot using the latest version of PCL

Authors

Table of Contents

Chapter 1: Getting Started with ROS
PC installation
Installing ROS Kinetic using repositories
How to install VirtualBox and Ubuntu
Using ROS from a Docker image
Installing ROS in BeagleBone Black
Summary
Chapter 2: ROS Architecture and Concepts
Understanding the ROS Filesystem level
Understanding the ROS Computation Graph level
Understanding the ROS Community level
Tutorials to practise with ROS
Summary
Chapter 3: Visualization and Debugging Tools
Debugging ROS nodes
Logging messages
Inspecting the system
Setting dynamic parameters
Dealing with the unexpected
Visualizing nodes diagnostics
Plotting scalar data
Image visualization
3D visualization
Saving and playing back data
Using the rqt_gui and rqt plugins
Summary
Chapter 4: 3D Modeling and Simulation
A 3D model of our robot in ROS
Creating our first URDF file
Xacro – a better way to write our robot models
Simulation in ROS
Summary
Chapter 5: The Navigation Stack – Robot Setups
The navigation stack in ROS
Creating transforms
Publishing sensor information
Publishing odometry information
Creating a base controller
Creating a map with ROS
Summary
Chapter 6: The Navigation Stack – Beyond Setups
Creating a package
Creating a robot configuration
Configuring the costmaps – global_costmap and local_costmap
Creating a launch file for the navigation stack
Setting up rviz for the navigation stack
Adaptive Monte Carlo Localization
Modifying parameters with rqt_reconfigure
Avoiding obstacles
Sending goals
Summary
Chapter 7: Manipulation with MoveIt!
The MoveIt! architecture
Integrating an arm in MoveIt!
Simple motion planning
Motion planning with collisions
The pick and place task
Summary
Chapter 8: Using Sensors and Actuators with ROS
Using a joystick or a gamepad
Using Arduino to add sensors and actuators
Using a low-cost IMU – 9 degrees of freedom
Using the IMU – Xsens MTi
Using a GPS system
Using a laser rangefinder – Hokuyo URG-04lx
Creating a launch file
Using the Kinect sensor to view objects in 3D
Using servomotors – Dynamixel
Summary
Chapter 9: Computer Vision
ROS camera drivers support
ROS images
OpenCV in ROS
Visualizing the camera input images with rqt_image_view
Camera calibration
The ROS image pipeline
ROS packages useful for Computer Vision tasks
Performing visual odometry with an RGBD camera
Computing the homography of two images
Summary
Chapter 10: Point Clouds
Understanding the Point Cloud Library
My first PCL program
Segmentation
Summary

Book Details

ISBN 139781786463654
Paperback468 pages
Read More
From 3 reviews

Read More Reviews

Recommended for You

Python Machine Learning Book Cover
Python Machine Learning
$ 35.99
$ 25.20
Learning ROS for Robotics Programming - Second Edition Book Cover
Learning ROS for Robotics Programming - Second Edition
$ 43.99
$ 30.80
ROS Robotics By Example Book Cover
ROS Robotics By Example
$ 39.99
$ 28.00
Learning Robotics Using Python Book Cover
Learning Robotics Using Python
$ 35.99
$ 7.20
Mastering ROS for Robotics Programming Book Cover
Mastering ROS for Robotics Programming
$ 43.99
$ 30.80
Modern Python Cookbook Book Cover
Modern Python Cookbook
$ 39.99
$ 28.00