Many of the courses I took involved quarter long projects. Here are some projects I managed to complete in 10 weeks.
Zap'Em Blast'Em Robots is an interactive game inspired by Rock'Em Sock'Em Robots, developed as part of the Mechanical Control System Design course at Cal Poly SLO. Designed by graduate students in the Mechanical Engineering program, the project showcases a fully integrated system combining mechanical, electrical, and software components.
Over the course of a 10-week quarter, our team engineered custom actuators, fine-tuned sensors, and iterated on game mechanics through structured testing and evaluation. The result is a dynamic, laser-tag-inspired robot duel platform with responsive control and real-time scoring.
Features
Robot position control via throttle inputs
LCD scoreboard and game state display
Sound feedback for "zap", "hit", "game start", and "game end"
"Shoot" button to raise shield or fire laser
Track sliders to strafe robot positions
As part of my Autonomous Vehicle and Machine Learning course, I worked with the MX Car Kit, equipped with stereo cameras, Lidar, and a NVIDIA Jetson Nano, to deploy real-time perception and control models. The development environment included ROS2 Humble, Docker, and Foxglove for visualization and debugging.
Midterm Project: Traffic Sign Detection and Rule-Based Control on MX Car Platform
For the midterm, I developed a traffic-aware control system using a YOLO-based object detection model trained on a custom dataset with the following object classes:
Lane lines
Vehicles
Stop sign
Traffic lights (red, yellow, green)
Speed signs (2 m/s and 3 m/s)
Key features of the project:
Built a ROS2 workspace to process stereo camera input and generate real-time object classifications and distance estimates.
Developed custom ROS2 nodes to control vehicle behavior in response to detected objects and traffic conditions.
Implemented rule-based decision logic to follow lane lines, stop at stop signs and red lights, and adjust speed based on visible signage.
Final Project: Multi-Output PilotNet for Adaptive Cruise Control using Behavior Cloning
Developed a multi-output deep learning model based on PilotNet architecture to enable adaptive cruise control on an autonomous vehicle using behavior cloning. The system was trained on synchronized sensor data collected from ROS bagfiles, including ground truth steering angles and a proxy for following speed.
Due to inaccuracies in the recorded following speed data, I implemented a custom data pipeline:
Applied a YOLO object detection model to identify leading vehicles in camera frames.
Extracted corresponding Lidar-based distance measurements to those vehicles.
Filtered and interpolated the Lidar data to generate a clean distance signal.
Derived following speed using a kinematic model based on the change in distance over time.
Model training was conducted using Google Colab with GPU acceleration. Training progress and performance metrics (e.g., loss curves, accuracy) were tracked using Weights & Biases (W&B) for experiment management and visualization.
As part of my master's research, I developed and simulated a 3-degree-of-freedom (DOF) quadruped leg to analyze joint torques and refine control strategies. Using MATLAB and ADAMS, I implemented a Lagrangian-based dynamic model with Denavit-Hartenberg (DH) kinematics to compute precise joint movements following a third-order polynomial trajectory. A basic closed-loop PD control system was applied to optimize torque distribution and enhance stability. Verification was achieved by comparing the MATLAB model trajectory with ADAMS simulation results, confirming system accuracy.
The study revealed key challenges, including oscillations in low-mass joints and the need for improved damping strategies. These insights form the foundation of my 12-DOF quadruped robotics thesis, contributing to advancements in legged locomotion control and dynamic modeling.
Spring2Wing is developing a novel, non-rotor-based launch system to improve the efficiency and adaptability of small aircraft. Unlike traditional rotor-based systems, which consume high amounts of power and limit flight duration, our design enhances operational efficiency while enabling take-off without the need for runways. By reducing energy demands and optimizing performance, Spring2Wing opens new possibilities for aircraft deployment in diverse environments.
This project utilizes the Pololu Romi Robot development kit as a starting point. To communicate with the Romi hardware, a cooperative-multitasking scheduler is implemented in MicroPython. The MicroPython code operates on a NUCLEO-L476RG board from ST Microelectronics and interfaces with a Shoe of Brian device. The goal of this project is to create a robot that can complete an obstacle course using a variety of sensor feedbacks for control.
As part of my mechatronics lab, I programmed a proportional-integral motor controller in assembly. Users can first input if they want the system to be open or closed-loop response. Afterwards, proportional and integral gain values can be selected.
The response is then sent out to our oscilloscope display for visualization. We utilized this set up to analyze motor characteristics such as our motor and time constant.
Closed loop block diagram:
Open loop with system hardware components:
As part of my system dynamics lab, I modelled the response of a quarter car at varying speed conditions. This system was modelled assuming lumped parameters and analysis was preformed and analyzed in MatLab.
System outputs were solved for using both a Simulink flow diagram and a state space matrix representation.
Quarter car system model
Normal tree representation.
In thermal system design I designed two portable ice rink systems: an 8-hour and 24-hour startup design.
System design was simulated and optimized in Engineering Equation Solver (EES).
Calculations preformed:
Heat load
2D conduction model
Heat transfer in pipes
System pressure drop & pump selection
Chiller & expansion tank selection
Cost estimation
Bolted joints create a conical stress area (frustrum) on the materials sandwiched between them. The calculation involved in bolt selection and designing a bolt pattern is iterative and tedious. I made a bolt spreadsheet in Excel to expedite this process. All cells in green require an input. Inputted cell references a database of material properties to calculate the outputs.
This was originally a homework problem, but I decided to make this design tool so I never had to do this calculation again.