During the fall of my senior year in Thayer, I worked in a project group to design and build a remote-controlled "scuttlebot" for the ENGS 76 scuttlebot-soccer competition. The most notable requirement of the competition was that no bot could use wheels in its locomotion, and therefore each bot must "scuttle" using some form of simple leg mechanism. The project was meant to get students better acquainted with 3D modeling software, and machine tools such as lathes and milling machines. Other project requirements included that the bot must be able to trap, pass and shoot a tennis ball repeatably.
The bot utilized Jansen Linkages for locomotion, which were driven separately on its right and left sides by continuous rotation servo motors. This allowed the bot to perform a zero-turn when the linkages were moving in opposite directions. Zero turns came in handy when trying to maneuver the tight quarters of the soccer arena, and we found the ability to turn without forward motion allowed our bot to retrieve balls from corners better than other bots in the competition.
In the group, I was responsible for designing and fabricating the bot's shooting mechanism. Most groups in the competition designed their shooting mechanism such that the ball would be hit by a paddle that was directly connected to a motor. I, however, wanted to design our shooting mechanism to store and then release some potential energy in order to propel the ball. I experimented with several design concepts, each time using a motor to slowly store potential energy in a spring and then release it quickly to the ball. My final design incorporated a paddle attached to torsional springs around its axis of rotation. A rotating peg would then pull the paddle back and quickly move out of the way, allowing the torsional springs to swing the paddle into the ball. This allowed the operator to shoot the ball forcefully, and the mechanism had a reload time of approximately 2 seconds.
In the competition, we found that our bot could shoot faster and more accurately than the other bots on our team. For this reason, we played defense - our bot would catch the ball on our half of the court and pass it long distances to teammates on the other half. Bots were individually scored based on the number of combined goals and assists each bot completed, and while ultimately our team ended up losing the soccer game, our bot received the highest score on our team.