Skip to main content

Module 1: ROS 2 - The Robotic Nervous System

Weeks 3-5 | Robot Operating System 2 Fundamentals

ROS 2 (Robot Operating System 2) is the essential middleware that serves as the "nervous system" for robots, coordinating communication between sensors, actuators, and AI algorithms. This module provides hands-on experience with ROS 2 architecture, node development, communication patterns, and robot description formats.

Learning Objectives

After completing this module, you will be able to:

  • Understand ROS 2 architecture, nodes, and the publish-subscribe model
  • Build custom ROS 2 packages using Python and colcon
  • Implement communication patterns: topics, services, and actions
  • Create and manage launch files for complex robot systems
  • Design humanoid robot descriptions using URDF

Weekly Breakdown

WeekTopicsLessonsDeliverables
Week 3ROS 2 Core Concepts• Lesson 1: ROS 2 Architecture
• Lesson 2: Nodes & Packages
Basic ROS 2 package with publisher/subscriber nodes
Week 4Advanced Communication• Lesson 1: Services & Actions
• Lesson 2: Building ROS 2 Packages
Service and action implementations
Week 5Robot Description & Launch• Lesson 1: Launch Files & Parameters
• Lesson 2: URDF for Humanoids
Launch file system and humanoid URDF model

Prerequisites

  • Completion of Weeks 1-2: Physical AI Foundations and Sensor Systems
  • Python programming proficiency
  • Ubuntu 22.04 with ROS 2 Humble installed
  • Basic understanding of Linux command line

Module Assessment

Project: ROS 2 Package Development

  • Custom nodes for sensor data processing
  • Service-based robot control
  • Launch file integration
  • Documentation and testing

📋 View Full Project Details: ROS 2 Package Project Assessment

Tools and Technologies

  • ROS 2 Humble Hawksbill: Primary framework
  • Python 3: Node development language
  • colcon: Build system for ROS 2 packages
  • URDF/Xacro: Robot description formats
  • rviz2: Visualization tool

Table of Contents