Boeing Project - Part I

Robots have revolutionized the way manufacturing is done in industry. A couple examples include the 'X-men' robots working at Tesla and the 'KIVA' robots zooming around Amazon's fulfillment centers. The aerospace sector is no different. In this project, originally inspired by Boeing, the goal is to design three robots to work together to take an airplane wing from a crane, transport it to the fuselage of the airplane, and reorient it so that it would be easy for workers to bolt it into place. Last year, a team of MSR students in conjunction with Matt Elwin (the project lead and advisor) built a programmable mecanum wheel vectoring robot from a kit bought at SuperDroid (shown on the left) with the idea to prove the concept on a smaller scale first. However, some issues regarding the mechanical structure, electrical design, safety measures, and hardware components were not solved. Finding solutions for these issues and updating the robot accordingly were the goals for this quarter.

Inverted Pendulum

Nobody can take a controls or dynamics course without encountering the classic inverted pendulum problem. Even if you're not an engineer, you have probably tried to balance a broomstick or dowel on the tip of your finger at some point or other, and might have even been able to keep it up for a minute or two! However, the question remains, how can one reliably balance a pendulum such that it never falls, and can respond to force disturbances? Well, with a robot of course! For my Winter Project, I programmed Sawyer, a robot by Rethink Robotics to do just that! Click here to see a demo and checkout my GitHub README for more info.

DC Motor Control

A must have in many robotics projects, brushed DC motors are a cheap way to make robots 'come to life'. When combined with an encoder or gearhead, it is easy to track the motor's position and speed, and adjust the outputted torque respectively. In this project, I designed a controller to rotate a shaft based on various reference trajectories. Check out the video here to see a demo.


Predicting the future might be difficult, but predicting if a Plinko disk will score you a jackpot? Not so much. With the help of Lagrangian Dynamics, it is possible to construct equations describing the motion of an object and simulate it. Then, by tweaking the initial conditions and forces acting on the object, you can alter the way it moves. This is especially helpful in robotics where visualization of how a robot might move in real life is key to its success.

Finger Sniper

From license plate and optical character recognition to self driving cars, computer vision plays a large role in helping robots maneuver their surroundings. But it can also be used for fun and games! In this project, a player uses their finger to shoot a ball as many times as possible while it bounces within the borders of the image. If it is hit, the ball changes color and the player receives a point. Time is short though as the ball shrinks every time it hits a border, and once it gets too small the game is over! To play it yourself, click here and follow the instructions in the README.

KUKA youBot Control

A core part of robotics is the ability to manipulate robots effectively. One awesome example of this can be seen here, in a video by Nigel Stanford, where he makes KUKA robots play musical instruments! On a simpler level, my project uses concepts such as rigid-body motion, forward, velocity, and inverse kinematics, and feedback control to move a KUKA youBot's end effector along a desired path.

Camera Ball Tracker

Nowadays, it is possible for pan/tilt security cameras to be equipped with motion auto-tracking software such as the Hikvision camera shown here. This allows the recording of possibly suspicious events in detail using computer vision techniques. On a simpler level, this project uses color segmentation in the HSV space to isolate the red hue of the ball from the surrounding colors. The centroid of the red blob is then found in the camera frame. Finally, the pan/tilt servos of the camera are automatically adjusted to keep the centroid in the center of the frame. For more info, click here to access the GitHub repo and check out the README.


Need a cup of coffee but don't want to make it? Meet Baxter - a robot created by Rethink Robotics that's ready to serve you! Using computer vision feedback, augmented reality tags, and inverse kinematics, Baxter can make a mean cup of joe using a Keurig, K-cup, and cup. My contribution to this team project was to use image processing to locate and identify these items. Check out the video here for a demo and this README for more info.


  • Autonomy
  • Controls
  • Path Planning
  • Computer Vision
  • Machine Learning
  • Artificial Intelligence
  • Embedded Systems
  • Smart Prosthetics
  • Biomedical Instrumentation
  • Surgical Robotics
  • 3D Modeling


Now that the latest Star Wars movie is finally out, it is impossible not to imagine where robotics will be in the next decade. Will we have reliable humanoid assistants like C-3PO or friendly bots like BB-8? From a medical aspect, will there be autonomous surgeons like the ones suturing the scar on Kylo Ren's face or prosthetics that can respond accurately to nerve stimuli? Who knows! While at Northwestern, my main objective is to study autonomous robotics specifically as it relates to the medical industry. In achieving that goal, I am studying topics like computer vision, artificial intelligence, machine learning, controls, and other useful subjects. With that under my belt, I believe that my creativity, enthusiasm, and growing experience can help bring that day one step closer!


Want to learn more? Check out my LinkedIn profile, download my résumé, or send me an e-mail using the links below.


Feel free to contact me using the form below if you have any questions, comments, or just want to let me know about opportunities!