2024

Interactive TurtleBot

MIE443H1: Mechatronics Systems: Design and Integration

In this group project, we programmed a TurtleBot2 to be interactive using C++ in ROS. We started by creating an algorithm which the TurtleBot will use to scan an area using a LiDAR array and make a map. Next, we programmed the robot to visit key locations in the map and detect labels using its RGB camera and the OpenCV computer vision library. Finally, we programmed the TurtleBot to respond to external stimuli (e.g. hitting it or picking it up) using sounds and its display.


2023

SAE Level 3 Autonomous RC Rover

MIE444H1: Mechatronics Principles

MIE444 Rover

In this group project, we built a Bluetooth controlled rover from scratch. The digital circuitry was based on the Arduino Mega 2560 Rev3 which controlled two NEMA 11 stepper motors for motion and one servo for the actuation of the scoop. The code for autonomous driving and manual control was written in Python while hardware drivers were written in Arduino C.

The robot was required to achieve three tasks without collisions with its surroundings:

  1. Locate its position in a known maze.
  2. Travel to a known loading zone.
  3. Pick up a block and deliver it to a known drop-off point.

Task one was achieved autonomously while tasks two and three were achieved manually using an on-screen GUI that displayed the robot’s current position and its sensor readings.


2020

Core-XY 3D-Printer

MIE243H1: Mechanical Engineering Design

In this group project we designed and modelled an enclosed Core-XY 3D-printer using SOLIDWORKS.