To expound on what Kevin wrote a bit, Team 910 has offered a robotics class for three years now and it has grown and adapted as we learned what worked and what didn’t in the classroom. It’s a one semester long elective called Robotics Engineering and is offered to all four grades (9-12). We try to limit the classroom size to 15 but this year increased it to 22 due to demand, and added an extra assistant teacher and TA to help with the load.
We start off with a safety training course and check out each student on every machine. We then have a section on materials and tools where they learn the names and uses of over 100 tools. Next, they design their “class-bot” as a team given some basic constraints. They choose the layout of the components, placement of the wheels and drivetrain, battery, and we discuss C/G, friction, maneuverability, etc. This year it’s built on a 20x24" base and consists of two motors, speed controllers, a drivetrain, batteries, IFI CPU, radio, etc. We then broke the class into two teams (red and blue!) and broke each team into four sub-teams who were responsible for the building of the frame, motor mounts, etc. During this section, they spend 1 to 1 1/2 days a week in “lecture” learning things like gear ratios, physics principles like C/G, coefficient of friction, drivetrain angular velocity calculations, etc. and the remaining time in the labs (which are attached to the dedicated classroom). Next, they assemble their individual components and then move on to electrical.
In electrical, they learn about electricity, the basic V=IR formula and circuit theory, wire gage standards, and how things like motors, speed controllers, radios, switches, gyros, and accelerometers work. They learn to strip, crimp, and solder and are graded on the quality of their work. They then wire up their robots, hook up the radios and start to drive them. This is always an exciting time when they first get to see the fruits of their labor in motion.
The next step is programming. We teach them flowcharting and the basics of logic, variables, loops and program flow. Then they write a few basic, “Hello World” programs in one of our computer labs and get familiar with the “code, compile, execute, test” cycle. They then are taught to use some pre-written functions that read from the joysticks and control the motors and they write some basic “autonomous” code that will drive their robots on a pre-determined route of their choosing.
Once they have the mechanical, electrical and programming portions covered (and have been tested on each as we move along), we go into the “really fun” part of the class. This is where they customize their team’s robot to accomplish a goal - such as pushing ping-pong balls into one of 5 goals of varying sizes (and score values) in a timed period. They then modify their bot to add components to it to help it accomplish this task. It might be as simple as a wedge shaped scoop on the front that corrals the balls so that they can drive them over to a goal, or it could be a servo driven arm that feeds them in - whatever they want, but they only have a couple weeks to design and build it so it has to be pretty simple.
The final week is spent competing with their new “classbots” red vs. blue giving each team member a chance to drive it and keeping a cumulative score. The winning team gets a prize but they’re all winners for what they learn.
I know it sounds like a lot, and it IS. We move at a fast pace and try to keep everyone working in parallel to get it done. The addition of TA’s who are senior members of the team is a big help. It gives the TAs a real feather in their caps for their college resumes and teaches them to lead small groups who look up to them. It also gives the students more one-on-one personal attention and they see a role model of how they should behave and what they can look forward to in the future.
Hope this helps a bit. Good luck in whatever you do!
John