Robot Programming with ROS 2

Robot Programming with ROS 2

Build, connect, and test robot software

This course introduces the tools and programming patterns used to build robot applications with ROS 2. Students work with packages and nodes, exchange data through topics, services, and actions, and bring components together in a small robot application.

Course information is being prepared.

Dates, requirements, software distribution, and assessment details will be published on these pages when confirmed.

InstructorDr. Kaveh Hooshmandi
Course codeTo be announced
TermTo be announced
ROS 2 distributionTo be announced

Getting started

New to the Ubuntu command line? Start with Ubuntu Terminal Basics (PDF) before the first practical session.

For the ROS 2 setup and first examples, see Getting Started with ROS 2 Jazzy (PDF).

What you will learn

The planned learning outcomes are to:

  1. Create and manage a ROS 2 workspace and packages.
  2. Write Python nodes that publish and subscribe to topics.
  3. Use services, actions, and parameters for robot behavior.
  4. Launch and inspect multi-node systems with command-line tools.
  5. Work with robot descriptions, coordinate frames, and simulation.
  6. Document, test, and demonstrate a small integrated robot application.

Course pages

PageWhat you can find there
SyllabusCourse facts, prerequisites, outcomes, and assessment
ScheduleDraft topic sequence and space for class dates
LabsPractical exercises and deliverables
AssignmentsCoursework and submission information
ProjectCapstone brief and evaluation criteria
ResourcesOfficial documentation and course materials