High School Robotics Competition Kicks Off
DeviceGuru writes "Some 35,000 high school students from over 1500 high schools in eight countries today began competing in the annual US FIRST student robotics contest. This year's competition, dubbed FIRST Overdrive, challenges the student teams to build semi-autonomous robots that will move 40-inch diameter inflatable balls around a playing field and score the most points. In this year's game, two alliances of three teams each work collaboratively to win each round. An animated simulation of the game (in several video formats) is available online."
It will be interesting to see what type of schools in what countries do better. I participated in the Panasonic robotics competition held in NJ when I went to high school. A majority of the time, it was the private schools that end up doing the best.
When I was in high school in the 1950s, I participated in engineering contests like these, at least until they canceled them. Back in those days, they usually had us build a structure of some sort. Bridges were a common one, with the goal being to build a bridge that could hold a certain weight, but was made from only certain materials and the bridge itself had to be under a specific weight. In most cases, it was possible to win the competitions just by doing a good job gluing the balsa wood together, and just using the triangle shape.
But the kids nowadays must know complex fields like robots and software development. Even with simplified AI, it's still no doubt a real challenge. And to bring collaboration into the mix makes it even more difficult. Looking back, those of us building bridges had it really easy.
I still recall why the canceled our bridge building contests. One of the fellows at one of the other high schools in the district somehow managed to drop a 15 pound weight onto his scrotum while trying to attach it to his bridge. We all thought he was partaking in horseplay and got what he deserved, but apparently the contest organizers thought differently, and canceled all such contests.
Being a student at a high school which is participating for the first time this year, I attended a seminar on the rules, regulations, etc. Here's a summary of what seemed interesting:
The competition starts with an automated "challenge," in which the robot must do without human intervention. It then progresses into the manual portion of the competition, in which you can have whatever blend of automation and manual control you wish.
You're limited to the parts in the kit, plus an approved list of parts from third-party vendors. This is apparrently to avoid, for example, someone adding a ridiculously-powerful motor and accidentally running a 200-lb "robot" through the plexiglass around the areana and into the stands or operator booths.
The embedded computer is based on a PIC. Apart from that, it basically contains a wireless reciever of some sort to allow an official to shut down all robots in the areana in case Something Bad(tm) happens. You can add electronics if you want, but all connections to motors must be through the provided system.
Programming is usually done in C; Microchip's SDK is included in the kit. There's apparrently a small library containing functions for motor control and such things. You get a 25hz runloop, from which you can schedule your own functions to run.
Motors are connected through solid-state PWM drivers. The PIC provides PWM for you, but a PID controller (which is pretty much essential) must be implemented in software.
How to enable garbage collection on a system without protected memory: #define malloc() ((void *) rand())
Actually, most years the initial autonomous period (which was only like 10-15 second long...) was really completely independent, but this year we can use tv remotes and a provided IR receiver to have limited control of the robot even during this period. These really aren't "robots" anymore, but just complicated RC cars with arms. I'm not complaining though, my team has enough problems without having to worry about programming the thing. All we have to do is reconfigure the wheel-joystick relationship and we're set.