Module 7 of 10

ROS 2 & Robot Software

Lessons

About This Module

You now know how a robot senses, how it is controlled, and how its arm moves. Real robots tie all of that together in software, and most of that software is built on ROS 2, the Robot Operating System. Despite the name, ROS is not an operating system. It is a framework of tools and conventions that lets many small programs work together as one robot.

You'll start with the big picture of what ROS is and why robotics teams use it. Then you'll learn its core building blocks: nodes that each do one job, topics that stream data between them with publishers and subscribers, and services that answer one-off requests. You'll write simple nodes in Python and see how they fit together.

Finally you'll learn how to configure nodes with parameters and how TF2 tracks coordinate frames, so a robot knows where its camera, arm, and wheels are relative to each other. These skills carry straight into Perception & Computer Vision, Motion Planning & Navigation, and simulation.

Lessons

5 videos
01

Introduction to ROS Part 1: What is the Robot Operating System? (DigiKey)

A beginner-friendly look at what ROS is, what problems it solves, and why it is so widely used to build robot software.

02

Introduction to ROS Part 2: Topics and Services (DigiKey)

The basics of how ROS 2 nodes communicate, using command-line tools to show topics and services from a conceptual level.

03

Introduction to ROS Part 3: Nodes, Topics, Publishers, and Subscribers with Python (DigiKey)

How to write your own ROS 2 nodes in Python that send and receive data over topics using publishers and subscribers.

04

Introduction to ROS Part 8: Using Parameters to Configure ROS 2 Nodes (DigiKey)

How to use parameters to change a node's settings without editing its code, both at launch and while it is running.

05

Introduction to ROS Part 10: TF2, Part 1 (DigiKey)

The basics of TF2 and coordinate frames in ROS 2, including how to build a simple transform broadcaster.