Robotics Club

Wrote autonomous control features for robot-building contests, taught two team members Java from the ground up using my own curriculum design

Link (source code) not-ongoing Timeframe: 2017-2018 Team: 3 programmers and 12 others

Overview

  • Wrote autonomous control features for robot-building contest
    • Developed software to complete various tasks on a playing field
  • Taught two team members Java from the ground up using my own curriculum design
  • Brainstormed ideas with team under time pressure

Problem and solution

Problem: My high school’s Robotics Club competes in the FIRST Tech Challenge, where each team programs a robot to do specific competition tasks. I joined the programming subgroup of the club, and my focus was on improving the robot driving remote control system. The robot driving functionality must both be usable in the competition and be easy to prototype and experiment with.

Solution: I designed a code architecture for the robot driving functionality that made testing and prototyping easier. My initial designs were somewhat over-abstracted and inflexible, but through iteration and feedback I improved effectiveness. I also created a unified logging system that the team frequently used to debug issues.

Long-term effect on club

The robot control code I wrote was used for several more years after I had left the club.

Learnings
  • Trying as hard as possible to write accurate code, since accuracy is extremely important in the competition.
  • Avoiding making code too complicated. Oftentimes I would talk with my teammates on how the code should be written, and they would point out simplifications and other improvements.
  • Learned how to debug, work under time pressure, brainstorm strategies, and write autonomous algorithms