/rob521_mobile_robotics

All MATLAB assignments for ROB521 course in Mobile Robotics

Primary LanguagePython

ROB521 - Mobile Robotics

This repository contains all course work for ROB521 - Mobile Robotics course. The course consisted of 3 MATLAB assignments and 3 labs using python and Robot Operating System (ROS).

  • Institution: University of Toronto
  • Course: ROB521 - Mobile Robotics with Dr. Steven Waslander
  • Dates: Winter 2022

Assignment 1 - Motion Planning (MATLAB)

Assignment 1 was a written assignment that covered motion planning theory topics such as:

Assignment 2 - Wheel Odometry (MATLAB)

In assignment 2, I implemented both the rapidly-expanding random tree (RRT) and RRT* algorithms for a robot complying with dubin's path kinematic constraints. I then compared the performance of these two algorithms with the results shown in the PDF document and below in Figure 3.

Figure 1 - Example Output of RRT Algorithm with Dubin's Path

The code for this assignment was removed also as per University of Toronto policy.

Assignment 3 - Lidar Localization (MATLAB)

The paper presentation was on the paper by Nardi [1] on path planning in an uncertain environment. The attached jupyter notebook was used to outline the main steps of the algorithm outlined in the paper and to produce graphics to visualize the uncertainty and posterior of the position of the robot in a discrete grid. Please see the jupyter notebook for more details.

Lab 2 - Motion Planning - RRT and RRT* Algorithms (ROS & Python)

Lab 3 - LIDAR Mapping with Wheel Odometry Localization (ROS & Python)

Lab 4 - Particle Filter Localization (ROS & Python)

Packages Used

  • python - version 3.7.7
  • numpy - version 1.19.1
  • matplotlib - version 3.3.1
  • scipy - version 2.18.2

References