Andrew Burks

Archive for November, 2010

Tactile Simon

by on Nov.18, 2010, under Personal Projects, Simon

Years ago, when I was in elementary school, my cousins Lisa and Erin would always give my brother and I great Christmas gifts when the extended family got together for Thanksgiving.  Now that they both have kids of their own, I thought it was about time to repay them.  Two weeks before Thanksgiving this year, I got the idea to use my robotics experience to make a toy for each of the families.

Idea

I wanted a toy that was interactive, but simple.  I needed moving parts, but nothing fragile or exposed.  Somehow I came up with the idea to do a tactile version of Simon.  All I knew was that I wanted a wheel you could grip that would spin in a pattern that you had to repeat.  The toy needed to be entirely encased to protect the electronics, but I wanted the kids to be able to see what was going on inside as well.

Full Iso

Design

Mechanism

On top there is a wheel with four colors on it and notches around the outside for gripping.  The top wheel is made of clear polycarbonate and the colors are printed on transparency paper and attached with contact paper.  This design lets the LED in the notch below one section of the wheel illuminate the active color by shining through the colored transparency.

There is a second wheel below the top cover, but it is constrained to rotate with the top wheel.  It is made of white HDPE, with strategic portions of its bottom surface colored black.  Both of these circles are attached to a Servo which can rotate the wheels in either direction at variable speeds.

Mechanism

Interface

The primary sensors on this robot are the four IR emitter/detector pairs.  A combination of an infrared LED and phototransistor, these sensors allow a microcontroller to determine how reflective a surface is.  Because white surfaces are more reflective than black surfaces, this sensor pair can parse the pattern of black and white on the bottom wheel.  Combined, these sensors tell the robot how the wheel is oriented.

Besides the power switch, the only other input device on the robot is the button on the left of the device.  After turning the wheel to a certain color, pressing this button will log the current color as your next guess at the pattern.

There are two LEDs on the robot.  One is in a cutout below the top wheel, and it is used to indicate the currently active color.  The second LED is an RGB LED, so it it capable of producing different colors on its own.  Displaying Red, Yellow, Green, or White during different portions of the game provides great visual feedback for the user.

Finally, there is a buzzer which allows the toy to make noises all across the audible range of human hearing.

Bottom

Electronics

Everything plugs back in to an Arduino Duemilanove, which does all of the thinking.  Most of the components only need to be plugged into the Arduino to be ready to go, but some of them need to go across a resistor or capacitor first.  The IR emitter/detectors, however, are a bit of a pain.  I had to make a board that slips female headers right over the sensors’ leads and routes them through all the proper resistors to finally output a sensible signal to the Arduino.

The servo requires some special electronic attention.  Because I want people to be able to backdrive the Servo, I need to completely disconnect it from its power supply when it is the human’s turn to spin the wheel.  Using a custom MOSFET board designed by my friend Nico Paris for our RobOrchestra project, I was able to selectively power the Servo.

Leave a Comment :, , , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!