After some day of building, conding, and testing, I publish the first photo of my Lego Ruzzle Solver.
The robot use 3 NXT motors: one for x-axis movement, one for y-axis movement, and one for move the “finger” up and down. To decrease friction, the two movable parts of robot are supported on rigid wheels, like a bridge crane.
A curious thing: the capacitive touchscreen of the tablet require human fingers (attached to human body) to dispatch touche event. Because attach fingers to lego mindstorm motor require detaching fingers from my body, I have discover that conductive sponge is a very good alternative, and because vegetal sponge is conductive, I have buy it at supermarket for 1 euro saving my real fingers.
Yesterday I start to build a new Lego Mindstorm project to solve Ruzzle, a popular iOS/Android game.
My goal is to merge both software (image processing, ocr, solver) and hardware (mechanics, servos, fake finger on a touchscreen) worlds, building a funny Lego robot.
On software side:
- Bash script for download screenshot of device
- ImageMagick to process screenshot image
- Tesseract for character recognition
- NodeJS for:
- solving ruzzle game
- send the plan to lego mindstorm nxt via bluetooth
On hardware side:
- Lego Mindstorm (nxt)
- Nxc program that receive plan via bluetooth
- Absolute Position Regulator for precise control of servo
When I have something working, I post nxc program on Github: