Course Code: rospyt
Duration: 28 hours
Prerequisites:

1. Python programming
2. Object-oriented programming
3. Basics of robotics
4. Basics of Ubuntu OS
5. Understanding version control system git
6. Basics of Docker - Optional

Course Outline:

1. Introduction

Robot Operating System (ROS) historical background

Modern applications and use cases

2. ROS 2 basic concepts

Overview of the ROS 2 architecture and philosophy

Setting up the workspace environment

ROS 2 nodes, topics, and messages

Using ROS 2 command line interface

Working with the colcon build system

3. Creating a ROS 2 package

Setting up a ROS 2 project in vscode

Using the ROS 2 Python client library rclpy

Writing a simple ROS 2 subscriber and publisher

Working with launch files

Using parameters and config files

4. ROS 2 nodes communication strategies

Overview of the possible communication strategies

ROS 2 services

ROS 2 actions

5. Tools

Utilizing the transformation system ( tf )

Robot modeling and visualization tools ( URDF and rviz2 )

Storing message data ( rosbag )

ROS 2 GUI interface ( rqt )

6. Simulation

Gazebo simulator

Gazebo plugins

Interacting with a simulated robot