Overview
For my Fundamentals of Robotics final project, our team built an
autonomous rover capable of navigating Olin College’s Oval
while completing three challenges: a slalom, crossing a bridge,
and passing through a gate.
We started with an Arrma Mojave RC base and added sensors of our choosing.
The challenge required robust navigation and obstacle handling within
a constrained environment.
Our brainwave-based architecture enabled the rover to autonomously complete course challenges, balancing multiple navigation factors in real time.
My Contributions
I was one of two primary software engineers on the team. We developed a
modular decision-making system based on “brainwaves” -
independent modules representing different driving behaviors.
-
Each brainwave produced a vector of possible speeds and directions
with associated weights (e.g., “avoid obstacle,” “follow AprilTags”).
-
Example brainwaves included
follow a specific color
and
positively weight going straight.
-
An arbiter
collected the outputs from all brainwaves and selected the final speed
and direction with the highest overall weight.
This architecture allowed the rover to balance multiple factors simultaneously
(e.g., avoiding cones while tracking a path) and adapt to different sections
of the course.
Outcome
The rover successfully demonstrated autonomous navigation through
various challenges using the brainwave-based control system.
The modular design provided flexibility for adding or swapping behaviors,
making it a strong foundation for future robotic projects.