Lecture Progress

Week Topic Slides Comments
Week 1
(25
- 29 Aug)
Lecture 1: Introduction to robotics, computer systems and software development with an emphasis on sustainable criteria such as execution time and effective use of computing resources.
Lecture 2: Basic Linux commands, manage access to files, create simple Linux shell scripts.
Lecture1
Lecture2
Python Revision: Unit 1-4
Week 2
(1 – 5 Sep)
Lecture 3: Linux File System.

Lecture 4: Bash Scripting.
Lecture3
Lecture4
Additional Linux material
Week 3
(8 – 12 Sep)
Brief Python 3 Revision; Running Python scripts in Linux. Python Exception (Error) Handling.
Using Python Libraries: Numpy, Matplotlib; PIP command.

Python User Interface: Tkinter.
Creating custom Python Packages;
   
Week 4
(15 – 19 Sep)
Object Oriented Design in Python: implementing classes and operations.
Inheritance and Polymorphism I: methods of superclass in a subclass, multiple-implementations.
   
Week 5
(22 – 26 Sep)
Inheritance and Polymorphism II: Abstract methods and classes, interfaces, polymorphism via interfaces, composition; Design Patterns;

(Quiz 1 – Thursday 25 Sep).
   
Week 6
(29 Sep – 3 Oct)
Introduction to Robotics System Architecture.

Introduction to Robot Operating System (ROS); Navigating ROS file system, Creating a ROS package, Understanding Topics.
   
Week 7
(6 – 10 Oct)
ROS Publishers and Subscribers, Writing ROS Nodes in Python and C++.
Creating Launch files; Launching via Linux Shell Scripts.
   
Week 8
(13 – 17 Oct)

*17 Oct - Mid Grade Due
Data Visualization in RVis2; Data Visualization in Python.

Creating interactive visualization UI with Tkinter; ROS QoS.
   
Week 9
(20 – 24 Oct)
Understanding ROS Services; Understanding ROS Actions.
Defining custom messages and services, Recording and playing back data.

(Midterm Exam).
   
Week 10
(27 – 31 Oct)

*31 Oct Last day to drop w/”W”
Introduction to Gazebo simulation, ROS TF and ROS URDF.
(Quiz 2 – Thursday 30 Oct).
   
Week 11
(3
– 7 Nov)
Building new environments in Gazebo and deploy assets, ROS RViz visualization.
Sensor Visualization.
   
Week 12
(10 – 14 Nov)
*Abu Dhabi Autonomous Week 10-15 Nov
Introduction to Cloud Robotics: basics of cloud computing, computer networks and communication protocols.
Cloud Computing: visualizing and controlling robots via REST API; Python Flask Library.
(Assignment Issue – Thursday, 11 Nov).
   
Week 13
(17 – 21 Nov)
ROS Control using Gazebo.
(Quiz 3 – Tuesday 18 Nov).
   
Week 14
(21 – 25 Nov)
ROS Navigation in Gazebo.

Robot Control and Visualization via WebAPI.
(Assignment Deadline: Friday 25 Dec at 11:59 PM).
   
Week 15
(1 – 5 Dec)

5 Dec - Last Day of Classes

* 18 Dec - Final Grades Publish
Robotics System integration under sustainability criteria and resource constraints (low-cost robotic devices).

Best practices for remote robotics command and control.
   

Lab Progress

Week Topic Comments
Week 1 No Lab  
Week 2 Safety instructions and Lab Rules. Downloading Linux: dual boot  
Week 3 Intro to Linux and bash scripting  
Week 4 Python Packages: Numpy, tkinter, Matplotlib  
Week 5 OOP in Python  
Week 6 GIT tool, VS code, code refactor  
Week 7 ROS2 - Workspace organization, Writing Publisher/Subscriber nodes, Launch file.  
Week 8 No Lab  
Week 9 Visualizing URDF files in RViz2  
Week 10 Simulating URDF model on Gazebo  
Week 11 Obstacle avoidance in URDF robot  
Week 12 Understanding ROS Services  
Week 13 Project implementation  
Week 14 Final Project Demonstration  
Week 15 No Lab