Book Image

ROS Robotics Projects - Second Edition

By : Ramkumar Gandhinathan
Book Image

ROS Robotics Projects - Second Edition

By: Ramkumar Gandhinathan

Overview of this book

Nowadays, heavy industrial robots placed in workcells are being replaced by new age robots called cobots, which don't need workcells. They are used in manufacturing, retail, banks, energy, and healthcare, among other domains. One of the major reasons for this rapid growth in the robotics market is the introduction of an open source robotics framework called the Robot Operating System (ROS). This book covers projects in the latest ROS distribution, ROS Melodic Morenia with Ubuntu Bionic (18.04). Starting with the fundamentals, this updated edition of ROS Robotics Projects introduces you to ROS-2 and helps you understand how it is different from ROS-1. You'll be able to model and build an industrial mobile manipulator in ROS and simulate it in Gazebo 9. You'll then gain insights into handling complex robot applications using state machines and working with multiple robots at a time. This ROS book also introduces you to new and popular hardware such as Nvidia's Jetson Nano, Asus Tinker Board, and Beaglebone Black, and allows you to explore interfacing with ROS. You'll learn as you build interesting ROS projects such as self-driving cars, making use of deep learning, reinforcement learning, and other key AI concepts. By the end of the book, you'll have gained the confidence to build interesting and intricate projects with ROS.
Table of Contents (14 chapters)

Getting Started with ROS

Robotics is one of the upcoming technologies that can change the world. Robots can replace people in many ways, and we are all afraid of them stealing our jobs. One thing is for sure: robotics will be one of the influential technologies of the future. When a new technology gains momentum, the opportunities in that field also increase. This means that robotics and automation can generate a lot of job opportunities in the future.

One of the main areas in robotics that can provide mass job opportunities is robotics software development. As we all know, software gives life to a robot or any machine. We can expand a robot's capabilities through software. If a robot exists, its capabilities, such as control, sensing, and intelligence, are realized using software.

Robotics software involves a combination of related technologies, such as computer vision, artificial intelligence, and control theory. In short, developing software for a robot is not a simple task; it can require expertise in many fields.

If you're looking for mobile application development in iOS or Android, there is a Software Development Kit (SDK) available to build applications in it, but what about robots? Is there any generic software framework available? Yes. One of the more popular robotics software frameworks is called the Robot Operating System (ROS).

In this chapter, we will take a look at an abstract concept of ROS and how to install it, along with an overview of simulators and its use on virtual systems. We will then cover the basic concepts of ROS, along with the different robots, sensors, and actuators that support ROS. We will also look at ROS with respect to industries and research. This entire book is dedicated to ROS projects, so this chapter will be a kick-start guide for those projects and help you set up ROS.

The following topics are going to be covered in this chapter:

  • Getting started with ROS
  • Fundamentals of ROS
  • ROS client libraries
  • ROS tools
  • ROS simulators
  • Installing ROS
  • Setting up ROS on VirtualBox
  • Introduction to Docker
  • Setting up the ROS workspace
  • Opportunities for ROS in industries and research

So, let's get started with ROS.