PROGRAMMING

The programming team has two responsibilities. First is coming up with great autonomous programs to maximize the points earned during the 30 second autonomous period. To do this, we have extensive discussions about optimal pathing and create algorithms according to our plans. Our second responsibility is creating an intuitive control scheme as well as automated driver assistance programs to ensure our drivers can synergize with our robot.

STAGES OF THE COMPETITION

AUTONOMOUS

(PRE-PROGRAMMED INSTRUCTIONS)

At the start of each match, there is a 30-second autonomous section where the robot will use only sensors and predetermined code to operate. Depending on our robot's starting position, we have many different autonomous programs. Currently we have a 50 point autonomous program from backdrop-side starting positions.

TELE-OP

(DRIVER-CONTROLLED PERIOD)

The last 2 minutes and 30 seconds of the match is the tele-op phase, where drivers use controllers to operate the robot. We work hard on making an intuitive control scheme with as much automation as possible, while still having manual fail-safes for when things go wrong. For example, the robot automatically slows down when approaching the backdrop.

HOW DOES OUR PROGRAMMING SYSTEM WORK?

We code in Java, and we use FTCLib. Our team has developed tools helpful for teams in coding autonomous programs. We utilize both a custom "MovementSequence" class we developed and an application called "PavementJogger" that we also developed to rapidly build autonomous programs. EasyOpenCV and the VisionProcessor API is used for computer vision.