FIRST FRC is an international high school robotics competition. Teams have six weeks to build, design, and program a robot to compete against like-minded competitors. Learn more here
For six years, I've had the privilege to be involved with two robotics teams: IronHorse Robotics Team 2761, and Stable Circuits Robotics Team 6305. As the head programmer, I lead a few different projects: a login program, a vision-based target identifier, a team-themed Pacman game, and the robot programming.
The main application of the programming team, the robot code is built in Java and runs on an onboard computer called the Roborio. It operated utilizing a command-based system, which allowed for complex functions to be called in an efficient and organized manner. It also employed PID (Position Integral Derivative) loops in order to accurately maneuver the robot with both the shooter and the drive systems. It would minimize the pixel difference on a camera image to align the ball shooter to the target.
This was a Java and OpenCV - based application designed to run on a dedicated Raspberry Pi 2 on board a robot. It would capture an image, then identify the target's offset from the center with an HSV filter, a color filter, and a size filter. The robot would then be able to adjust to minimize the pixel offset to align the ball shooter to the target.
I made a python Pacman game meant to run on a Raspberry Pi 3. The team and I constructed an arcade machine, complete with a screen and analog arcade controls. The game was modified to replace the ghosts with the FRC letters, and the Pacman character with our team logo.
I developed a Login program application utilizing Java and a MySQL server. It operated with a visual JavaFX framework with SQL queries requesting, modifying, and adding to a local server. It tracked the time individuals spent working in the shop by using a barcode scanning system to scan their ID card to log in/out the members.