Syllabus
Unit 1
Introduction to ROS2
Overview of ROS2 architecture and communication protocols, Comparison with ROS1, setting up ROS2 environment and creating a ROS2 package, Introduction to ROS2 command-line tools, Basic ROS2 concepts such as nodes, topics, messages, and services, Introduction to Gazebo simulator.
Unit 2
Advanced ROS2 Concepts
ROS2 middleware and communication mechanisms, ROS2 launch files and parameter management, ROS2 package dependencies and ROS2 ecosystem, Advanced ROS2 concepts such as actions and transformations.
Unit 3
ROS2 Applications in Mobile and Industrial Robotics
Introduction to ROS2-based mobile robot navigation, Overview of ROS2-based industrial robot control, Integration of ROS2 with sensors and actuators for mobile and industrial robots, ROS2-based robot perception and manipulation.
Objectives and Outcomes
Course Objectives
- This course aims to introduce students to the fundamentals of Robotic Operating System (ROS2) and Gazebo simulation, including key concepts such as nodes, topics, services, and actions, as well as the development of ROS2 packages.
- This course aims to equip students with the knowledge and skills required to apply ROS2 to mobile and industrial robots, including navigation, SLAM, robot arm control, perception, and communication.
- This course aims to provide students with hands-on experience working with ROS2 and Gazebo, allowing them to design, implement, and test robotic applications using these tools.
Course Outcomes
After completing this course, students will be able to
CO1
|
Program ROS2 packages and utilize ROS2 concepts such as nodes, topics, services, and actions to control, perceive, and communicate with mobile and industrial robots.
|
CO2
|
Apply ROS2 to mobile robots to navigate, use SLAM, and control them effectively.
|
CO3
|
Apply ROS2 to industrial robots to control robotic arms and perform real world tasks within a simulation environment.
|
CO4
|
Evaluate the performance of chatbots using various metrics and techniques. Use Gazebo to simulate robotic applications and test their code effectively, improving the overall proficiency with ROS2.
|
CO-PO Mapping
PO/PSO
|
PO1
|
PO2
|
PO3
|
PO4
|
PO5
|
PO6
|
PO7
|
PO8
|
PO9
|
PO10
|
PO11
|
PO12
|
PSO1
|
PSO2
|
PSO3
|
CO
|
CO1
|
1
|
1
|
3
|
1
|
1
|
2
|
1
|
1
|
1
|
1
|
|
2
|
1
|
|
|
CO2
|
3
|
3
|
3
|
2
|
3
|
1
|
|
1
|
3
|
3
|
|
2
|
2
|
2
|
2
|
CO3
|
3
|
3
|
3
|
2
|
3
|
1
|
|
1
|
3
|
3
|
|
2
|
2
|
2
|
2
|
CO4
|
1
|
2
|
2
|
2
|
3
|
–
|
|
|
3
|
3
|
|
2
|
2
|
2
|
1
|
Text Books / References
Text Books / References
Rico, F. M. A Concise Introduction to Robot Programming with ROS2. CRC Press; 2023.
Nehmzow U. Mobile robotics: a practical introduction. Springer Science & Business Media; 2012.
- Corke, Robotics, Vision, and Control, Springer, 2011.
Ros2 Humble Tutorial: https://docs.ros.org/en/humble/Tutorials.html