Course for Beginners

ROS Basics In 5 Days Python

Learn the fundamentals of ROS to understand and be able to program robots

ROS Noetic

Course Overview


The ROS BASICS IN 5 DAYS course will take you quickly and smoothly into ROS. You will learn the essential concepts and tools to be able to understand and create any basic ROS related projects.

Learning Objectives

  • Understand key ROS concepts
  • Understand and create your own ROS programs
  • How to debug your ROS programs
  • How to apply theory into real Robotics Challenge and Projects

Who is this for?

  • Anyone interested in learning about robotics through practice. 
  • Beginners who want to quickly learn the fundamental of ROS through practice

Simulation robots used in this course

Husky wheeled robot; TurtleBot wheeled robot; WAM Arm robot; BB-8 robot.


Beginner welcome



16h 54m

This course is part of this learning path:

What projects will you be doing?

Mobile robot obstacle avoidance project

By using Subscribers, Publishers, & Messages.

Control the BB-8 robot

Use ROS Services to change the way BB-8 moves.

Control a Drone Robot

Using ROS Actions to move a parrot drone robot.

Win the TurtleBot Race!

Move a Turtlebot 2 robot through the maze and help it finds its way out.

What you will learn

Course Syllabus

  • Practice First: Interacting with a simulated robot
  • What you need to become a ROS Developer.

10 min.

Unit 1: ROS Deconstruction
  • How will you learn ROS fast with the 30/70 learning method?
  • Know your friends: Robots
  • Course Schedule / Syllabus

7 min.

Unit 2: ROS Basics
  • Basic ROS Concepts (ROS packages, launch files, nodes, parameter server, ROS core, environment variables..)
  • Create your first ROS program.

7 min.

Unit 3: Understanding ROS Topics - Publishers
  • How to create a Topic_Publisher
  • Introduction to Topic Messages

40 min.

Unit 4: Understanding ROS Topics - Subscribers & Messages
  • How to create a Topic_Subscriber
  • Create your own custom Topic Message
  • QUIZ: Obstacle-Avoiding Robot Quiz (TurtleBot 2)

2hrs. 30 min.

Unit 5: Understanding ROS Services - Clients
  • How to create a Service_Client

  • Introduction to Service Messages

35 min.

Unit 6: Understanding ROS Services - Server
  • How to create a Service_Server

  • Create your own custom Service Messages

  • QUIZ: Control the BB-8 robot using ROS Services


Unit 7: Using Python Classes in ROS
  • Introduction to Object-Oriented Programming

  • How to use Python Classes in your ROS programs.


Unit 8: Understanding ROS Actions - Clients
  • How to create an Action_Client

  • Introduction to Action Messages

  • Interact with Actions in a graphical way – Axclien

1hrs. 30 min.

Unit 9: Understanding ROS Actions - Servers
  • How to create an Action_Server

  • Build your own custom Action Message

  • QUIZ: Control a Drone Robot using ROS Actions

2hrs. 30 min.

Unit 10: How to Debug ROS Programs
  • Introduction to the main Debugging Tools: Logs, RQT, ROSBag…
  • Plot your Topic data

  • 3D Visualization of Complex data (RViz)

45 min.

Unit 11: EXAM - Husky Robot Challenge
Unit 12: PROJECT - Help Sphero Robot Get Out of the Maze
Unit 13: PROJECT - Help TurtleBot Robot Get Out of the Maze
Unit 14: APPENDIX - How to Install ROS On your Local Computer
Unit 15: APPENDIX - How to Create & Manage ROS Workspaces

Ready to get started?

Start learning ROS & Robotics online quickly and easily

What’s next

People interested in this course also viewed

Learning Path

ROS for Beginner

Learning Path

Robot Navigation

Top universities choose The Construct for Campus to teach ROS & Robotics.

Pin It on Pinterest