TapTap LED was created to address the serious decline of reaction time in the general public. Think about it, nowadays you're always watching something on TV, playing a game on your phone, or watching videos on Facebook; you're always getting an overload of visual stimuli with no required response! TapTap LED keeps the visual stimuli to a minimum while still maintaining a fun and interactive experience that builds on your reaction time. The problem with say, watching TV, is that you're brain is receiving a myriad of visual signals but you're not reacting to them (unless you're watching a really scary movie)! We made TapTap LED to counter this effect; using a few LEDs and light sensors. The system counts how many times you reacted to the stimuli within a given time, in this case, 30 seconds. TapTap LED also comes with two playable sides, so you can also play against someone else to add a competitive aspect!
Step 1: Overview and Motivations
TapTap LED addresses a new way of increasing hand eye coordination. It is a 2 player game that is started with a single pull single throw (SPST) button. The LED's then flash and the siren ticks to signal the beginning of the game. As LED's flash on, it is a race between the players to tap the sensor first in order to gain a point. After 30 seconds, the game stops, the siren sounds, and the winner's side flashes. This project agrees with the study conducted in the "Journal of Experimental Psychology: Human Perception and Performance" as it was found that people generally reacted quicker with the hand closest to a stimuli. More about the study can be found at: http://psycnet.apa.org/journals/xhp/3/3/505/ .
Step 2: Gather Materials
- 6 2" pvc pressure caps
- 24 18" 2x4" wood pieces
- Wood screws
- 10 5' long 2" pvc pipes
- 3 6' long 2" pvc pipes
- 8 2" pvc T joints
- 4 2" pvc elbows
- 6 2" pvc couplers
- 6 Wood screws
- 2" long bolts
- 6 10'x2" boards
- 14 photocell resistors
- 14 2.5" 8-32 machine bolts
- 14 8-32 machine hex nuts
- 28 washers
- 14 3D printed housings
- Printing 6 holders on "fast print" mode on the Makerbot 2 takes approximately 11 hours and approximately 80 g of PLA filament
- Piezo electric siren
- 1 SPST button
- Command strips
- 100' 20 gauge black wire (or in 3 pack from Radioshack)
- 100' 20 gauge red wire (or in 3 pack from Radioshack)
- 25' 20 gauge green wire
- Electrical Tape
- 32 male jumper wires
- Arduino Mega 2560
- 2.1 mm 9V AC --> DC cable for Arduino Mega
- USB cable for Arduino
- 5x5x.25" wood
- Plastic tablecloths
- Soldering iron
- Access to 3D printer
- Access to laser cutter
- Wire strippers
- Drill with appropriate bits
- Table saw
- Tape measure
- Duct Tape
Step 3: Assemble Bases
- Around a pressure cap, place an 18" 2x4 tangent so the cap is at the top and to the right of the right side of the board, making the shape of a P.
- Place the next piece of wood tangent to the pressure cap and perpendicular to the first piece of wood on the bottom of the cap. Then screw it into the first piece of wood.
- Place the next piece of wood perpendicular to the bottom piece of wood tangent to the pressure cap and to the left of the wood. Screw it to the bottom piece of wood.
- Place the final piece of wood tangent to the top of the pressure cap, flush with the first piece of wood and perpendicular to the right piece of wood and screw it into place.
- Optionally, trim 1 wood piece short so players don't trip on it.
- Attach the 1 foot lead of pvc to the pressure cap in the wood base. Screw the pvc, cap, and wood base together with 2 screws, one through the top piece of wood and one through the left piece of wood.
- Attach a couple to the top of each pvc lead
- Attach a 5' pvc to the coupler.
Step 4: Assemble Skeleton
- Arrange the posts in a 10' long x 18" wide tunnel with the posts evenly spaced
- Add elbow joints facing the inside of the tunnel to the tops of the the posts
- Insert an 18" pvc to span the width of the tunnel
- Secure these cross beams by screwing them in or use pvc glue for a more permanent fix
- To add security, secure 2x4's diagonally across the width of the tunnel
- Laser cut or drill a hole through the 5x5x.25" piece of wood and screw the button in
- Wire the button to ground and to a digital pin on arduino
- Bolt 10' x 2" boards to the pvc running the length of the tunnel. Make sure to drill pilot holes in the pvc for the bolts to go through. These can be at variable heights, however you wish to arrange the sensors and LEDs.
Step 5: Add Sensors
- Poke the 2 ends of the CdS cell through the back of the large cylinder of the CdS housing
- Solder negative and positive leads of black and red wire to the ends and secure and cover exposed solder with electrical tape
- Secure the mount to the wood with wood glue or a command strip. Wood glue is more secure.
- Insert the 8-32 bolt through the first hole in the mount and put 2 washers on it
- Slide the bolt through the smaller cylinder of the CdS housing then through the other side of the mount and tighten with the hex nut
- Place the larger cylinder with the CdS cell in front of the mounted cylinder and attach around the rim with glue or electrical tape, threading the leads through the back of the mount. Make sure to wrap the ends of the CdS cell with electrical tape or the circuit may be shorted.
- Optional: place rubber cement on the hinges of the housing to make it stay straight.
- CdS cells have a positive going to a 5V digital pin, which is pin 21, (to save on wire, form a positive plane of the CdS cells on each side), a negative with a resistor going to ground, and a negative going to an analog pin on Arduino. "Plug in" these leads by soldering male jumper wires to the ends and wrapping connections in electrical tape.
- Check each sensor using the program provided. Record the values to insert into the final code for the thresholds of when a player scores a point.
Step 6: Add LEDs
- Either mix colors or keep the 2 sides different colors. Arrange the LED's directly above the CdS housing. The longer end of the LED is the positive, this side receives a red wire and a male jumper wire going to a positive digital pin. A ground plane can be constructed to save wire.
- Test to make sure the LED's work with the code provided.
Step 7: Code Arduino
Code iterations can be found on the Github at: https://github.iu.edu/ISE-F16-FinalProject/GlowUp...
Essentially the code flows as follows:
- Start a random number generation using the button to begin the function and the noise from A0 pin to generate the random numbers. Start a 30 second timer and generate a new random number every 2 seconds.
- Make sure to include the Timer library, which can be found in a zip file on http://playground.arduino.cc/Code/Timer
- Match CdS cells to corresponding LEDs so that when a random number is paired to a specific LED, it turns on. LED's are paired mirrored on both sides of the wall.
- Check all values of CdS cells so that if a CdS transmits a signal below a certain threshold, a point is added to a player's score. Then, assign a new random number.
- At the end of 30 seconds, activate siren, signaling end. Print "Endgame" and "PlayerScore" to serial.
- Return end loop to Button Test loop to wait for the button to be pressed. In this time, randomly rotate through turning on LEDs. Also, reset player points to 0.
Step 8: Optional - Add Sheets
- Use black bed sheets or 5 black plastic tablecloths (easily purchased at the dollar store) secured together with black duct tape to cover the tunnel, securing it with velcro on the posts.
- Cut holes in the tarp for the CdS housing to be exposed
- This is best done by placing duct tape on the tarp in the square you wish to cut and cutting along it, instead of cutting the tarp directly. This makes for cleaner lines.
- Cut holes in the tarp for the CdS housing to be exposed