This post is an overview of the classes I am teaching for the North Georgia FTC kickoff at Kennesaw State University on September 7, 2019. They cover hardware design and programming for FTC robots. (Links are included for class materials and videos of each class.)
The FIRST Tech Challenge (FTC) is a global robotics program for students in grades 7-12 based around a robot that fits in an 18" cube. Each year a new game presents a new set of rules and a new set of challenges to solve. The season starts with kickoff in early September and lasts until the World Championships in April. Robot matches to start the season are local, and usually start in October.
For those who reach this page who are new to FIRST, I strongly encourage you to get involved locally. I have been coaching, mentoring, and helping with competitions for over a decade. These programs help teach lots of great life lessons as well as inspiring many to explore opportunities for STEM careers. It can also help students who are not otherwise as interested in STEM, or school in general, to have some great fun while learning.
I have the pleasure of serving as the lead Field Technical Adviser (FTA) for the state of Georgia. In this role, I help teams across the state with technical issues that the come across during the season. I also provide ongoing mentoring to multiple teams.
As a part of the kickoff for the 2019-2020 season, I am presenting a pair of classes on FTC robotics. One is around building robots with Rev Robotics parts. The other is around programming the robots with Android Studio.
Also, there is a new requirement this year that each team have alliance markers (red and blue) as a part of their robot. We have had teams in the past that did not always have team numbers that met the specifications. The need for alliance markers adds a new wrinkle. To help teams at least meet the minimum requirements, I have created a Robot Numbers (PowerPoint download) with team numbers properly formatted (using the font and size recommended in the manual) with the alliance designations attached. Printing these out and laminating them (or just covering them in clear shipping tape) will make workable versions until the teams find time to build more creative options.
Building for FTC with Rev Robotics
This class is focused on the use of the Rev Expansion Hub to wire and control an FTC robot. It covers highlights of basic robot construction, working with the Rev hubs (connecting them, controlling the hardware, configuration to link to software), and other robot design thoughts.
PowerPoint for the class (with speaker notes) and a video of the class are linked.
FTC Programming with Android Studio
The most popular method of programming an FTC robot is to use Android Studio. This class is based around sample code for a fairly simple tank robot (separate drive power for the left and right sides, and driven using dual joysticks). The core code connects all the hardware and provides the base robot movement functions. The test program allows motors and servos to be independently tested. The TeleOp program is for user driven activity. And the autonomous programs show examples of using class extensions to define parameters, a state machine for executing autonomous goals, and integration with the Rev hub IMU for precise turning and guided driving.
The RevTank (software ZIP download) sample robot software (TeamCode folder and robot XML), as described in the class, is attached. PowerPoint for the class (with speaker notes) and a video of the class are linked.
I hope these are useful. Feel free to make comments below, or to e-mail comments/requests/suggestions to [email protected].
<<UPDATED Oct 27, 2019>>
The robot numbers with alliance markers are really tough to print at 100% scale from PowerPoint. As a result, teams are building invalid team numbers. Here are word versions for 4 digit and 5 digit robot numbers (the 5 digit do not fit on 8.5" x 11" paper, so they have a legal page/8.5" x 14" layout). Sorry for any confusion.
<<UPDATED Nov 9, 2019>>
BE CAREFUL when purchasing the linear servos mentioned in the hardware class. ONLY the 6V servos are FTC legal (which it says on the part page as well). The 12V servers are not FTC legal. Sorry for any confusion.