During my Senior Year, I took classes called Autonomous Mobile Robots and Fast Robots. These classes gave me hands on experience with three major aspects of robotics: state estimation, path planning, and control. The algorithms developed for these tasks were written in MATLAB, Python, and C++. Because we worked with physical robots in these classes, I also gained experience with hardware and electrical system integration. The most notable projects from Autonomous Mobile Robots and Fast Robots are detailed on this page. The Autonomous Mobile Robots Video is here, and the Fast Robots videos are here.
During the Final Competition for Autonomous Mobile Robots, students wrote code to navigate a roomba-style robot to multiple waypoints. However, there were multiple walls impeding the robot, and the robot had no direct information about where it was on the map. To reach the waypoints while avoiding obstacles, my group wrote code to make a polygon-based roadmap of the arena. The code chose the optimal path through the roadmap with Dijkstra's algorithm. The robot estimated its state and changed its control based upon a particle filter. The filter was informed by a distance sensor on the robot. All of these steps are described in the slides below. The video of the robot in the competition is here.
This is an image of the robot on the map at the start of the run. The wood structures are the walls, and the purple dots are the waypoints that the robot needs to navigate to.
Fast Robots began by taking apart an RC car and integrating our own electronics. The hardware included motor drivers , sensors, a microcontroller, and batteries. Once the electronics were integrated, students used the setup to implement and test various robotics algorithms. For every project in the course, we documented it on a website that we made specifically for the class. The most notable aspects of my projects are also documented here. Videos of the robot being used for cool projects are shown below.
Here is the RC car with our own electronics integrated. The electronics included an artemis nano (microcontroller), two distance sensors, two motor drivers, an IMU, a battery for the motors, and a battery for all other electronics.
My favorite project with the Fast Robots car was writing a controller which made the car race towards a wall, drift 180 degrees, and then return back. The steps for this project are shown below. Videos of the car drifting are shown at the bottom of the page.
This is the psuedo code for the robot as it drives towards the wall, drifts, and then drives back. The ultimate output of the controller is duty cycle sent to the left and right wheels (highlighted in yellow). The wheels spinning in opposite directions is what causes the car to drift.
Copyright © 2023 Gabriel Mitchell Engineering - All Rights Reserved.
We use cookies to analyze website traffic and optimize your website experience. By accepting our use of cookies, your data will be aggregated with all other user data.