Autonomous RC Car
Design, build, and automate an autonomous vehicle to navigate an obstacle course
For this project, my team modified a RC car with a host of sensors and processors. The sensors used included LIDAR, camera, sonar, and infrared. In addition, an intel Nuc-i7 and Arduino were used to collect data, process, and control motors. The hardware and software were utilized to help the robot autonomously navigate around campus and ultimately park in its final docking section using the Sense, Think, Act software architecture. There were several addition software tools used to help with this including RANSAC to detect and avoid walls, and april tags to help with localization. In the end, the project provided great experience in implementation of a complex sensor suite and the computational challenges of efficiently processing all of the incoming data.

Skills and Tools: Automation, MATLAB, RANSAC, Sensor Data Processing, Software Architecture, 
Nuclear Power Plant Optimization
Optimization several design variable using system wide and sub-system level optimization
This semester long project involved creating a model of a nuclear power plant made up of 3 sub-systems: Reactor, Power Conversion, and Cooling Tower. First, design variables in each sub-system were optimized to a specific sub-system objective function. The optimization was done in MATLAB using fmincon and particle swarm optimization. From there, the 3 sub-systems were combined to an overall system. The system was then optimized to an overall objective function. The results of this were analyzed to draw meaning conclusions about the operation of the system. In addition, edge testing was done on the boundary conditions to understand the impacts that boundary conditions had on the system's performance. 

Skills and Tools: Optimization, MATLAB, System Modeling, Lagrangian Mathematics
Monte Carlo Localization
Implement Monte Carlo Localization in a Virtual Environment
Monte Carlo Localization is rapidly becoming on of the most popular localization strategies for robotics, so given the heavy emphasize of Bayesian statistics in a Probabilistic Modeling class, my partner and I dove into the method for our final project. We chose to do this project in a virtual environment so we could better study the statics and focus less on debugging hardware. As a result we got to dive deep into understanding the connection to Bayesian statistics and conduct addition research on ways to make the program more robust. In the end, we were successfully able to accurately determine the robots locations as it drove around an area of odd shapes.

Skills and Tools: Localization, Bayesian Stats, Python, ROS2 Foxy
Video Game Design
Create a video game in Python using pygames
I designed a game using the Model View Controller architecture.  The goal of the game was to avoid incoming obstacles while you are running away from campus police. The obstacles are all tied to school like the common broken computer, washing machine that steals money, and the powerful but frustrating MaI designed a game using the Model View Controller architecture.  The goal of the game was to avoid incoming obstacles while you are running away from campus police. The obstacles are all tied to school like the common broken computer, washing machine that steals money, and the powerful but frustrating Matlab. The game is coded all in python and makes use of the pygame library to help in several tasks like images formatting, display, and object collisions. In order to test the game, several unit tests were implemented.tlab. The game is coded all in python and makes use of the pygame library to help in several tasks like images formatting, display, and object collisions. In order to test the game, several unit tests were implemented.

Skills and Tools: Software Architecture, Python
Inverted Pendulum
Implement PID control on an inverted Pendulum
Through this project, I modeled an inverted pendulum using ODE's. Using Laplace transforms and SImulink, the control system for the inverted pendulum was modeled. The poles and zeros the PID controller were chosen to maximize stability, and  their impulse response was tested using simulink. Finally, the system was implemented and tuned on an inverted pendulum controlled by 2 DC motors and an Arduino. 

Skills and Tools: Controls, ODEs, MatLab/Simulink, C++, Arduino

You may also like

Back to Top