Skip to content

Undergraduate projects

2008 – 2013, University of Waterloo

Summary

I studied at the University of Waterloo from 2008 to 2013, and graduated with a Bachelor of Applied Science in Honours Mechatronics Engineering.

The program is a combination of mechanical, electrical, and software engineering, and was heavily practical, with many hands-on projects for students to apply concepts learned in the classroom.

I had five or six courses per academic term, for 42 courses total. Most of these courses had at least one project. Below are the most notable ones, broadly arranged by theme.

Mechatronics

In the Mechatronics Engineering course, we designed objects using Unigraphics NX, and built a line-following robot using LEGO Mindstorms. For our Sensors and Instrumentation course, we built a similar robot, choosing component values and designing circuits with e.g. operational amplifiers, populating the PCBs ourselves, and programming the microcontroller.

Catamaran In the Mechatronics Engineering Design Workshop, we designed, procured parts for, built, and programmed an autonomous tunnel-type catamaran to traverse the perimeter of a pool. The boat was designed and balanced in Solidworks, while electronics were soldered and debugged with oscilloscopes, multimeters, and signal generators. It was controlled by an Arduino, with sonar sensors to close the feedback loop for the two Mabuchi motors providing differential steering.

PLC cell In Mechatronic System Integration, we analyzed robots using DH Parameters, controlled some robots with VHDL, and implemented Allen Bradley PLC code for an assembly line consisting of three cells using RsLogix. We interfaced hardware and software between a camera and a PC, controlled some aspects using computer vision and NI Vision, and created a user-friendly interface using Wonderware.

My Mechatronics final year design project was a portable water purification and transport system on a trailer which could be attached to the back of a bicycle. The motion of the trailer generated AC power which was rectified, smoothed, and downregulated to charge a battery for an ultraviolet filter. A mechanical pump provided pressure to allow the filter to be used on the go. The trailer was designed to carry 20 L of water in two tanks separated by the filter. I designed the mechanical portion in Solidworks, and helped with the manufacturing and building process.

Mechanical engineering

We designed a small bridge for Statics while operating under budget constraints, and designed and built a crane boom truss using balsa wood for Mechanics of Deformable Solids, competing for maximum weight capacity.

In Kinematics and Dynamics of Machines, we simulated and analyzed a dump truck mechanism in Adams View, and identified the optimal locations of various physical connections.

In Electromechanical Machine Design, we designed machines in Solidworks, and performed Finite Element Analysis.

Electrical engineering

For my Introduction to Microprocessors and Digital Logic course, we used Karnaugh maps and boolean algebra to simplify complicated states, and designed digital logic circuits that implemented them. Our final project was a PLC traffic light controller as an introduction to ladder logic.

Computer engineering

In Microprocessor Systems and Interfacing, we made an MP3 player with speed and direction control, as well as song selection and wav file reading, used an Altera DE2 FPGA. Interrupts (e.g., using buttons) were handled appropriately.

For my Introduction to Computer Structures and Real Time Systems course, I designed and implemented a real-time operating system in C.

Controls

For my Automatic Control Systems course, we used Matlab and Simulink to perform position control of a flexible drive.

In Fluid Power Control Systems, I used hydraulic and pneumatic circuits to control machines, both as programmed sequences and in response to various inputs from the user or the environment.

In Digital Control Applications, we controlled the position of a ball on a ramp by inclining the beam using a DC motor. We calibrated the beam and motor potentiometers, and implemented an anti-stiction compensator and angle saturator. The design was done in Matlab and Simulink, and the implementation was in Labview.

In Systems Models, we designed and constructed a mechanical-electrical device as a means to observe the dynamic behavior of a system that as it transitions between multiple domains. The device used a falling mass to rotate a flywheel system that triggers a switch to an RC circuit at different frequencies. The system was described and modeled with a bond graph, from which state equations for the model were derived. The outputs of the system were also simulated in Matlab for comparison against observed physical behavior.

Bioengineering

For my Human Signal Processing course, we captured, amplified, and processed myoelectric signals in order to controla robotic arm. We had to recalibrate every time we changed the position of the pads.

Mathematics

In my Statistics course, we worked on process control, regression models, and factorial experiment design.

In my Ordinary Differential Equations course, we simulated a spring-mass system and a spring-mass-damper system.

In Numerical Methods, I analyzed vehicle suspension systems by implementing numerical methods myself.

In my Advanced Calculus course, I used Mathlab and Maple for various projects, including calculating the usable volume of a tank being crossed by other pipes.

Entrepreneurship

In my Technical Entrepreneurship course, we went through the steps of developing a new business idea, from market research to proposal forming, to pitching the idea to “investors.”