ROS 2

Course Description

ROS 2

Ever wondered how vast the world of robotics is?

Robotics has three major components in it. Electronics, Mechanical, and Programming.

In this course, we will learn the software part of the robotics with fun-filled and hands-on with raspberry pi.  It all starts with understanding the basics and parameters such as what is ros 2 topic, publisher, subscriber, how sensors and actuators can be interfaced and how can we provide intelligence to the robot to make it move. and so on.

Learning is not limited to understanding the chapters, we will also do experiments to understand the concepts better and build creative solutions from the concepts that we have learned. 

The course aims to teach the fundamentals of electronic circuit designing & building, also introduces multiple sensors and actuators used in real-life robots. 

Refer to the curriculum for detailed information about the course content and learning outcomes.

    • 1: Introduction to ROS2

      • What is ROS2 and its key features?
      • Comparison of ROS2 with ROS1
      • Installation and setup of ROS2
      • Creating a basic ROS2 workspace
      • Launching ROS2 nodes

      2: ROS2 Communication

      • Understanding ROS2 topics and publishers/subscribers
      • Creating and running a simple publisher and subscriber node
      • Exploring different message types in ROS2
      • ROS2 services and clients
      • exercise: Building a simple chat application using ROS2

      3: ROS2 Package Management

      • Introduction to ROS2 packages and their structure
      • Creating a ROS2 package
      • Managing dependencies using ROS2 package.xml
      • Building and running ROS2 packages
      • Quizzes: Identifying package dependencies and understanding package.xml syntax

      4: ROS2 Actions

      • Introduction to ROS2 actions and their advantages over services
      • Implementing and running ROS2 action servers and clients
      • Creating a feedback-driven action in ROS2
      • exercise: Implementing a simple navigation action using ROS2

      5: ROS2 Parameters

      • Understanding ROS2 parameters and their use cases
      • Setting and getting parameters in ROS2 nodes
      • Parameter server concepts and configuration files
      • Dynamic reconfiguration of ROS2 parameters
      • exercise: Tuning and controlling a robot's behavior using ROS2 parameters

      6: ROS2 Launch System

      • Introduction to ROS2 launch system and its benefits
      • Creating launch files in ROS2
      • Launching multiple nodes using launch files
      • Using arguments and parameters in launch files
      • Quizzes: Writing launch files for specific node configurations

      7: ROS2 Tools and Visualization

      • Introduction to ROS2 command-line tools (e.g., ros2 topic, ros2 node, ros2 bag)
      • Visualizing ROS2 data with RViz and rqt tools
      • Recording and playing back ROS2 data using rosbag
      • Debugging and introspecting ROS2 nodes
      • exercise: Visualizing robot sensor data using RViz

      8: ROS2 Gazebo and Simulation

      • Introduction to Gazebo, installation and robot simulation
      • Introduction to robot modelling and SDF (Simulation Description Format)
      • Creating custom world 
      • Simulating robots in Gazebo
      • Adding sensor to robot
      • Integrating Gazebo with ROS2
      • exercise: Building and controlling a simulated robot in Gazebo using ROS2

      9: ROS2 Project Work

      • Group project or individual projects to apply the knowledge acquired throughout the course
      • Guidance and support provided by the instructor
      • Presentations and demonstrations of the projects

Reviews

Average Rating

0
(0 ratings)

Detailed Rating

0%
0%
0%
0%
0%