My work at Raider Robotics
I was a member of Raider Robotics (a competitive robotics team) from 2017 through 2021.
During my time on the team, I was the lead software developer. This role involved devising and giving lessons on embedded programming to other students, creating high-level system designs, coordinating a team of other developers, and writing code (lots of code).
Alongside my software development responsibilities, I also worked very closely with the mechanical team to design and implement complex physical systems to high standards.
Outside of the general work that comes with building high-performance machines, I found interest in a few specific areas:
I built three OpenCV-based vision systems for the team, each drastically improving upon the last.
The first two were based on hand-tuned color, shape, and edge detection algorithms. These systems were used to detect position deltas of game elements and scoring targets.
By obtaining real-time position deltas in robot-space, I was able to build path planning and following algorithms that allowed robots to autonomously navigate the world based on vision data.
My first ever attempt at vision-based path following
A different robot using computer vision to validate the position of a target
Using VISLAM to navigate to a point in space
I also developed a deep fascination of robot locomotion. I spent a great deal of time learning about the physics involved in making things move, and a greater amount of time learning how to make them move to where I wanted them to be.
Some systems I developed as a result of my learnings were:
- Predictive anti-tip software (used an array of sensors to predict when robots were likely to tip over, and automatically correct for it)
- VISLAM-based spacial navigation (as seen above)
- A robot simulator that was used to sanity-check software changes before deployment
Robots I've worked on
The following are robots I've worked on at Raider Robotics:
My final large project at Raider Robotics was Lib5K, a software library that was designed to make everything I learned over my time at Raider Robotics available to and easy to use for future students.