In my last guest entry for the FIRST® Robotics Competition blog, I explored the need for building transferable and portable skills for life after high school. FIRST® alumni have a host of marketable skills and the first step is building the skill. The FIRST Education team has been collaborating with FIRST Robotics Competition program staff, FIRST mentors, industry partners, WPI, and educators to create a learning module to learn the basics of Java programming. This fun module uses the Romi robot platform by Pololu in combination with a Raspberry Pi to teach programming fundamentals using WPILib. With this module students can immediately apply what they’ve learned to running code on the Romi. Because it uses WPILib, these skills can be directly transferred directly to programming the team’s competition robot. Learning in this authentic environment will allow FIRST Robotics Competition teams to learn, apply, and practice before the full-scale team robot is finished. Now the team programming tasks can happen right alongside the robot build!
This module is designed for individual participants to learn about programming at their own pace. The modules contain videos, knowledge checks, and end of lesson projects that make the learning come to life by using the Romi to practice what was learned.
Course Summary
In this self-paced 5 to 9-week course, students will learn a fundamental understanding of Java programming within WPILib and obtain applicable object-oriented programming skills. Students will learn and apply programming concepts in Java while programming a robot to complete challenges presented in each module. Students can collaborate and share knowledge and information with other team members, alumni, and even other teams to help transfer the programming skills learned to their FIRST Robotics Competition team.
Photo credit: Pololu
The modules are designed around project scenarios that connect learning with real-world examples. The overall course project scenario is that students work as software engineering interns in a transportation and logistics company. They are charged with programming a robot that can deliver objects in the warehouse. You can control the robot in some locations, but you do not have the visibility to control it in others. The robot must deliver with precision while providing feedback along the way on the robot’s location, speed, and status.
Needed Materials
- A computer with wireless access (WPILib is not compatible with Chromebooks)
- A FIRST Romi robot from Pololu
- A Raspberry Pi (Model 3B+ or 4)
- An SD card reader/writer
- A supply of AA batteries (preferably rechargeable ones as they will save time and money)
The second series of lessons in module 2 will be released in November 2021.
This FIRST Robotics Competition course that includes the Intro to Programing learning module is accessible to Lead Mentors 1 and 2 through Thinkscape on the FIRST Dashboard. Mentors will be able to add students to the course using these instructions. We are very excited to be able to provide this amazing resource to teams throughout the FIRST community!