Gym2Real (Reinforcement Learning Two Wheeled Inverted Pendulum)

As a part of our ENPH 479 Capstone course, I designed an open source two wheeled inverted pendulum that we trained in simulation using a reinforcement learning model. The model was deployed on the real robot with no training in the real world. The platform (code + robot design) is open source and is meant for as an educational tool for different types of control algorithms.

The project report can be found here and our website is here.

The robot in action!

The Coanda Effect in Gas Dynamic

For my numerical methods course, I implemented a first order scheme for the Euler flow within a channel containing a disk using the deal.II software. The project report can be found here

A simulation of the flow under different conditions!

Rail Riding Robot

As a part of our ENPH 459 Capstone course, we worked on a project that had a goal of building a robot that rides on a rail and collects image data for agricultural purposes. We approached the problem from its fundamental components and delivered a prototype that captured the requirements for our sponsor.

The project report can be found here

Platform CAD

A CAD of the main platform that carried the electronics.

A demo of the robot moving during testing.

Latex decompiler

This is an ongoing personal project that aims to create a tool to convert images of mathematical equations into their corresponding Latex representation. To achieve this, I am using a convolutional LSTM network that encodes the image using a CNN and decodes it using an LSTM that uses attention. Results have been mixed so far as the quality and size of the image heavily affects the results.

The code can be found here

A visualization of where the model is paying attention to as it decodes and predicts the next character.

Gravity Assisted Trajectory Optimization

This is a project that we worked on for our PHYS 350 classical mechanics course. As a part of the course, we created a tool to determine the best trajectory based on fuel consumption to get from Earth to another planet or asteroid. In our trajectory, we allowed for the use of several gravitational assists (using a plant’s gravitational field to provide energy and change direction) to reach the desired planet. We used a genetic algorithm to determine the optimal path using a customized fitness score that incorporated the direction of approach to each planet, speed change and time of travel of the overall mission. We showcased our code using processing to offer a visualization of the flight. The project report can be found here, and the code here

The home screen of our demo.

ENPH 253 Robot

As a part of the final assessment in our ENPH 253 course, we designed an autonomous robot that would run a competition track and save some stuffed animals. Using a combination of laser-cut hardboard, water-jet aluminum and steel and 3D printed plastic, we built a robust chassis that housed our electronics, claw, scissor lift and basket. To move and detect the animal, we used an infrared signal sensor that projected light and detected how much of it returned. Also, perhaps one of the best parts of our robot was its ability to detect a faint infrared signal from across the room using a custom-built circuit. A link to the project can be found here

A view of our fully assemebled robot(hanyolo).