"Middlebury has excellent computer science offerings, and this class seeks to encourage students to look into that," said Scharstein, who first offered the LEGO robot design course at Middlebury in 1998. Scharstein explained: "LEGO kits were used for this class to evoke the right mix of the playful and educational. However, these particular kits differ significantly from those sold as toys, not only because the computers in them are more powerful, but also because they're too complex for children to use. These hand-soldered computers are geared for college students."
"Students learned simple programming tasks, such as sequencing, conditionals, loops, procedure calls and concurrency. They learned procedural abstraction and basic electronics such as voltage, power, motors and sensors. They learned fundamental mechanics-building robust structures, friction, gearing, and they learned hypothesis testing and debugging, divide-and-conquer strategies for problem solving, modularity and abstraction, and the value of simplicity and robustness," he said. "We also taught them how to make their own Web pages."
Scharstein enlisted two computer science majors, seniors Colin Meltzer and Felix Muchomba, to assist him in the class. Together with Scharstein, Meltzer and Muchomba helped students build a sciborg, a robot that moves on two independently driven wheels, "sees" with reflectance sensors, "feels" with touch sensors, "talks" with a beeper, and "thinks" with a computer brain to control its actions based on inputs from its sensors. Three of the course projects covered three tasks for LEGO sciborgs: to remove ping pong balls from a playing field; to count out from a pool of black and white ping pong balls how many were black and how many white; and finally to shoot black ping pong balls into one container, white ones into another.
"The projects brought together physical, electrical and software components into one unit. It was exciting to see the students put all this together, and then breathe life into it," said Muchomba, who also helps computer users across campus as a consultant with the college's computer help line. "The thing about making LEGO robots is that the programming is very close to the hardware. Helping to teach the class taught me how to change my mind set. The other great thing was that the class gave me the opportunity to play with LEGOs, which I had never done before," he said.
Meltzer also learned new things from his experience as a teacher in the class. "I learned that what makes obvious sense to me, a computer science major, may make no sense to others. As my minor is in elementary education, it's been useful to see things from the teaching perspective, and how people think in different ways. I learned another useful career tool that I may not have otherwise picked up-a new computer language called Handylogo. It's a very basic language geared for beginners," Meltzer said. "I also got a lot of practice debugging."
After completing the preliminary projects, students were well prepared to successfully tackle the final project: to envision, design and manufacture their own robots made of palm-sized computer board, light sensors and LEGOs. For their final projects, students were granted free, creative rein to choose the kind of robot to make for unveiling at a culminating presentation to the public, the LEGO robot talent show, which was held in the Great Hall of McCardell Bicentennial Hall on Jan. 26. Students were also asked to create Web pages to feature their talented robot creations. In addition to Johann, Van and Domino, "Rasputin the Love Machine," created by first-year students Brooke Siem, Sam Shoutis and Alpheus Chan, and "Larry the Lovable Lobster," created by first-year students Bobby Levine, Joe Johnston and Kayla Race, were entered in the talent show. Rasputin rolled by audience members and stopped to flirt by raising his plastic heart, and Larry chased children at the show, snapping pincers manipulated by his remote control handler. Two other robot creations at the show were geared toward the game-oriented: "LEGO Foosball," put together by first-year students Chris Waite and Justin Scott to provide a foosball partner for the single player, and "Medieval Madness," a robotic pinball machine engineered by first-year students Corey Reich, Jeff Boyd and Aaron Colodny.
Click here for images of all the talent show LEGO bots, and descriptions of how they were made and what they do.