Lego Mindstorms have really really provided some great tools for home robot engineering. JP Brown has several examples on his web site including this CubeSolver:
The longest part of the this project involved writing the color-recognition software. I downloaded the Logitech Quick Cam SDK from the Logitech Developer’s site (the LEGO Vision Cam is a repackaged Logitech Quick Cam) and used VB5 to write a fairly decent program (click the Code link for source). The color recognition is fairly robust (about one error every two cubes when well-calibrated), but not perfect, so I incorporated a feature that requires you to confirm that each face has been correctly scanned (and, optionally, allows you to correct the input manually) before it scans the next face.
…
My early attempts at building a cube solver were all stymied by grips that slipped. The worm-56t gave enough torque to turn, but the fingers couldn’t hang on and the grip was simply pried apart as the grabber rotated around the stationary cube face. I thought about changing the device’s name to ButterFingers.
…
My early attempts at building a cube solver were all stymied by grips that slipped. The worm-56t gave enough torque to turn, but the fingers couldn’t hang on and the grip was simply pried apart as the grabber rotated around the stationary cube face. I thought about changing the device’s name to ButterFingers.
I rebuilt the left and right grabbers six times (and the bottom grabber four times) trying elastic bands, Technic shocks, and pneumatics, before I came up with an adequate grip mechanism. In the present version, an axle runs from a motor through the center of the large Technic turntable to a worm screw. The worm screw turns two 24t gears mounted either side of the worm inside the body of the grabber.
Other home engineering favorites: Awesome Cat Cam – Windmill for Electricity – Lego Autopilot First Flight

Pingback: Curious Cat Science and Engineering Blog » Babbage Difference Engine In Lego