In this season of the FIRST® Robotics Competition (FRC), our team was tasked with precisely aligning to a designated scoring location (the “reef”) and automatically depositing the object with a ±2” tolerance. To start, I programmed the swerve drive using kinematics to enable us to maneuver quickly yet accurately across the field. After programming the drivetrain, I tested multiple different methods of alignment to the reef, utilizing vision powered by Limelight cameras and interfacing with the API to create a consistent and quick solution. We also utilizes our vision measurements for global pose estimation, allowing our robot to calculate its position on the field with a precision of ±2cm, allowing for impressive demonstrations and consistent autonomous routines.
In addition, we utilized Finite State Machine (FSM) logic to control the robot, diagramming out the possible state transition and using a time-weighted graph with Dijkstra’s algorithm to determine the fastest possible transition between two states.
We also utilized logging extensively to identity various issues we had during our robot, making debugging much easier than it was before. We also stored various information about the robot, including the desired scoring location, to alleviate the pressure of the drivers and automate as many of the robot’s actions as possible.
Ultimately, we were able to win the Autonomous award at one of our events, win another event, and compete in the playoffs in the FRC State Championship against 89 other teams! For more information on our team, you can visit our pages on TheBlueAlliance and Statbotics