1. ROS 101 Series Overview

1. ROS 101 Series Overview

In this series, I will guide you through 5 main steps (see the figure below) in order to help you understand and start using ROS by yourself with the minimum requirements in hardware setup. Yes, I really mean "do it yourself" because I think the great way to learn something is by doing (the best way is of course by teaching it :) ).


We will start by answering those questions of what is ROS, why people (and you should) choose ROS, and how you are going to learn about it through these tutorials. The second step is installing ROS and all the dependencies required so that it is up and running on your laptop. Next, we will take a look into the most basic concepts of ROS and practice using them. You also learn to create a simple mobile robot, simulate and move it around. Finally, we connect everything we learn to finish a project in which the robot created from the previous part will follow your hand sign.

So what are the requirements to complete all those parts? I know that most of you are probably beginners in this field and do not have (or even can't afford) fancy tools like graphic cards, motors, motor controllers, etc. to build a real robot but that is totally fine since one of the main ideas of this series is to learn ROS with the least effort.

For the hardware, you need a laptop or PC with a webcam (more about the specification can be found below). I would prefer laptops because most of them already have an integrated webcam but if you have a PC then getting a USB webcam also works (and it's pretty cheap though). And why do I need a webcam, you may ask? Well, because it is just like a sensor people are using in real robotics projects (most of the cameras used in industry are pinhole cameras just like your laptop's webcam though). Also, I choose a camera instead of other sensors because it's commonly available, fun, and easy to demonstrate ideas rather than just printing something on your screen.

For the software, you should have a little knowledge of programming in Python or C++ since they are the two main languages supported by ROS (Python will be mainly used in this tutorial). If you know about Linux and already used it sometimes then it would be a big advantage. If not, no problem! It's time to get to know one of the most awesome operating systems for developers. You also don't need another computer or a dual-boost system to get started. I come to this later in the Installation chapter.

Here are the concrete minimum requirements:

  • A laptop or PC (no specific OS needed) with an integrated or USB webcam. The computer should have at least 4GB RAM, quad-core Intel® i5, or equivalent, and, at least 20 GB of free disk space. A graphic card (GPU) is nice-to-have.

  • A little knowledge of programming with Python or C++ (or any OOP languages)

And that's it! You are ready to begin your journey of conquering ROS. Let's step right in!

ROS 101 Series has total 12 chapters:

  1. ROS 101 Series Overview (this post)

  2. ROS: What, Why and How?

  3. ROS Installation - Part 1: Install Ubuntu 20.04

  4. ROS Installation - Part 2: Install ROS Noetic and Dependencies

  5. ROS Packages and Workspace

  6. ROS Basic Concepts

  7. Write a ROS Publisher

  8. Write a ROS Subscriber

  9. Hand Gesture Recognition in ROS

  10. Simulate a Mobile Robot in ROS - Part 1

  11. Simulate a Mobile Robot in ROS - Part 2

  12. Robot Control Using Hand Gestures


  1. Cover photo: http://wiki.ros.org/cturtle

  2. Icons: https://www.flaticon.com/

Did you find this article valuable?

Support Trinh Nguyen by becoming a sponsor. Any amount is appreciated!