In FRC there are 4 main programming languages that are used. These are Java, C++, LabVIEW, and Python. Each language has its own advantages and disadvantages. The language that you choose to use will depend on your team’s preferences and the programming language that your mentors are most comfortable with. The programming language that you choose to use will also depend on the programming language that your team’s robot controller is programmed in. The robot controller is the computer that controls the robot. The robot controller is a NI RoboRio. The Roborio can be configured for any of the languages listed above.
Robot code is also not the only type of programming done in FRC. Teams write GUI software for their drive stations, they make games in Unity and Unreal Engine, and they write code for their websites. Students also learn how to write low level firmware for devices like arduinos and raspberry pis. Programming is a very important part of FRC and students can come into FRC with little to no programming experience and leave with a very strong understanding of programming. The guides here are intended to help in that process and also expose students to the different types of programming that are done in FRC.
Below is an outline of the topics that will be covered in this chapter.
|Order||Page Title||Time Estimate|
|6.1||Programming Languages||30 minutes|
|6.2||Robot Code||30 minutes|
|6.3||Timed Robot||30 minutes|
|6.4||Command Based Programming||30 minutes|
|6.6||Path Planning||30 minutes|
|6.7||Robot Simulation||30 minutes|
|6.8||Vision Processing||30 minutes|
|6.10||Unity and Unreal Engine||30 minutes|
|6.11||Web Development||30 minutes|
|6.12||Arduinos, Raspberry Pis and other SBCs||30 minutes|
|6.13||GUI Programming||30 minutes|