Instructables

Das Blinken Bonken! An arduino ball throwing game platform.

FeaturedContest Winner
This is a fun and pretty easy project that I built as a Christmas present for my son who loves throwing things. Watch the video to see what it can do.

It's built out of a regular Arduino UNO, pressure sensors made from velostat, and RGB LED strip, and 7 segment LED display.

Source code for the games is available on github.

Enjoy!

Step 1: Gather Materials

Materials List:
  • 2'x2' sheet of 1/4 inch luan for the target segments
  • 2'x2' sheet of 3/4 inch faced plywood as a backing board.
  • a sheet of Pressure-Sensitive Conductive Sheet (Velostat/Linqstat) for the pressure sensors (http://www.adafruit.com/products/1361)
  • any old 5v arduino of your choosing (I used an uno)
  • a big 7 segment display (http://www.adafruit.com/products/1269)
  • a strip of 24 individually addressable RGB LEDs (http://www.adafruit.com/products/1461)
  • some solid core wire
  • 4 1K resistors
  • some thin foam or thick cloth to act as a shock absorber. (1/8" foam used in construction to separate 2by material from concrete available at any building supply works great)
  • fine metal mesh (like from a screen door, though should be metal, not plastic)
  • scotch tape
  • small brass screws and washers for attaching the target to the backer board
  • Female headers to make connectors to plug into the Arduino and the 7 segment LED display. (http://www.adafruit.com/products/598)
  • 2 power supplies, one for the Arduino (9 or 12v) and one 5volt for the LED strip. (The arduino 5v vcc doesn't provide enough current for the LED strip).
  • Section of 2x2 pine or other wood for legs of the backer
Tools:
  • Jigsaw for cutting out curves in the target backer board
  • Pull saw or other fine saw for cutting the target pieces
  • Hole-saw for cutting the center target piece
  • Hand saw or circular saw for cutting the backer board
  • Sand-paper or orbital sander
  • soldering iron
  • hot-glue gun
  • drill with various sized bits
  • Razor blade or utility knife and scissors for cutting foam shock absorber

Step 2: Measure and cut the target

Picture of Measure and cut the target
52ca10a626ece29e6c000206.jpg
52ca2709dbf3ec2fbb0000d9.jpg
Measure:
On the luan, draw a circle. (I used a mixing bowl as my template that happened to be a good size, about 16" in diameter).

Then find the center of the circle. I used this technique: http://www.instructables.com/id/How-to-find-the-ce...

Next divide the circle into three equal parts like a Mercedes Benz logo. I used this technique: http://www.popularwoodworking.com/woodworking-blog...

Cut:
Before you cut the pieces, mark them so you can get them back together as they originally were. Your cutting won't be perfect, but it all works fine if the pieces remain in the same relative order.

Now, use the jigsaw to cut out circle. It helps to clamp the circle on your work-surface and go slow.
Then use the hole-saw to cut out the center piece of the target.

Now, use the pull saw to cut the three other pieces of the target. Again, clamping the luan as you cut makes this much easier.

Finally use the sander to clean up the cut edges of the target.

Drill:
Drill holes in the center of each target piece to a size slightly bigger than a single LED on your LED strip.

Step 3: Cut and mark the backer board

Cut your 3/4" plywood to a size bigger than your target. I cut mine to 20"x20". Then I used a tin can as a template to round off the corners, and I used the jig-saw to cut those edges off. This makes it look nicer. Use the sander to clean up edges of the plywood.

Now use the same circle template to draw the target circle on the backer board. Remember not to do this on-center as a the LED strip goes across the top of the board. Place the target segments on the board in their final position separating each piece from the other by about 1/4". Poke a pencil through the LED holes to mark where the sensors will be attached to the backer board.

Finally, with the target pieces in place, drill pilot holes for the screws that will attach the pieces to the backer board, and then drill bigger holes in the target pieces (but not in the backer board) so that when the screws are in place the target pieces can depress easily and won't be hindered by the screws.

Step 4: Build and install the pressure sensors

Picture of Build and install the pressure sensors
IMG_20131214_143542_532.jpg
52ca0ffbdbf3ec67a3000032.jpg
To build the pressure sensor:
  1. cut 4 equal size squares of the velostat and 8 equal size squares of the wire mesh about 1/2" smaller than the velostat squares.
  2. cut 8 lengths of the solid core wire and strip about 4 inches off the end of each
  3. curl the stripped part of the 8 wires into a spiral.
  4. now make a sandwich that goes: mesh, curled wire, velostat, curled wire, mesh. It's easiest to do this one side at a time by placing the curled wire on top of the velostat, and the placing the mesh over that, fixing them all in place with scotch tape, then flipping it over and doing the same.
To install the sensors:
  1. Place them over the marked LED holes from the previous step
  2. For each sensor, mark a spot where you will drill a big hole for the sensor wires (as well as the LED strip leads) to pass through to the back of the board. For the center target piece make sure this mark isn't near the pilot holes you drilled from the previous step.
  3. Take the sensors off, and drill the holes.
  4. Warm up your glue gun, put the sensors back in place, this time passing the wires through the drilled holes. Use just a tiny bit of hot-glue on each corner of the pressure sensors to fix them to the backer board.

Step 5: Install shock absorber on target

The back of each of the target pieces has a thin layer of foam to spread out some of the impact of the balls on the pressure sensor and to protect the LEDs and their wires.
  1. Cut out foam pieces the same size as the target pieces.
  2. Hot glue them onto the back of the target pieces but don't get any glue near the center of the pieces where the LEDs go, nor along where you will route the LED wires toward where the leads will go through the hole in the backer board.
  3. Using a razor blade or utility knife, cut out channels in the foam for the LEDs and their wires.

Step 6: Make the LED strip for the target

The LED strip consists of 24 LEDs. The first 20 in the strip act as the level bar, and the last 4 light up the center of the targets, but they all must be in a single strip for the purposes of the code that is addressing them. Thus you need to cut off the last four only to re-solder them back together with longer leads.
The hardest part about making the LED strip is thinking through routing the wires so you get the right length.

  1. Cut a length of the 24 LEDs from the strip and then cut off the last 4 LEDs individually. Make sure to cut right along the cut line on the strip.
  2. Make a long length of 3-wire by cutting about 4 feet of CAT-5 Ethernet cable, and unwinding one of the twisted pairs and then re-twisting one of those wires back into into another one of the twisted pairs to make a 3-wire.
  3. Plan the routing of the wires around the the target so you can prepare the right lengths of 3-wires. Don't forget to account for the fact that the wire goes through holes that are not on the center of target pieces because the sensors are in the way.
  4. Solder the 4 cut LEDs back together with segments of long 3-wires. Pay careful attention to the direction of the arrows on the LED strip to keep them matched and all going in the same direction.
  5. Now mark which LEDs go to which target piece and then cut the wires in the middle, but as you do, mark one side of the cut wires so you can maintain the directionality! You need to do this to be able to pass them through the holes in the backer board, and you will have to re-solder them yet again in a later step...
  6. Finally you can use a bit of hot glue to glue the LEDs in place for each target piece.

Step 7: Attach target and LED level strip to backer board

You can now pass all the target LED wires through the same holes you drilled for the sensor wires in the backer board and screw the target pieces in place. Make sure the screws are not too tight or too lose. Just tight enough that you can press on them and feel the foam squishing. Later you can calibrate the tightness with the calibration routine.

Determine the position along the top of the backer board where you want the LED level strip to go. Measure it's length, and then drill holes for the leads on either end of the strip. Solder a length of the three wire to each end of the 20 led strip, and pass them through each of the holes, making sure that the base of the arrow end is nearest the side where you will be mounting the Arduino. Use the hot-glue gun to fix the level bar in place.

Step 8: Make and install 7-Segment backer

Picture of Make and install 7-Segment backer
IMG_20131218_193311_196.jpg
52cacda8dbf3ec4acf000084.jpg
IMG_20131218_193147_259.jpg
IMG_20140106_100831_940.jpg
I decided to have the 7 segment LED stick up above the backer board on it's own small board. I liked this aesthetically, but also because it means that 7 segment display could be flush with the backer board.

  1. Cut a piece of luan a little wider than the LED display, and a good 3 inches taller.
  2. Measure and drill out space for the female header from the back of the LED display to go through the board.
  3. Measure the overlap needed so the display will have a nice border of wood all around it.
  4. Drill pilot holes for the screws that will attach the LED display backer onto the back of the backer board and then fasten the board on the the backer board.
  5. Finally attach the LED display to the backer board by marking the holes in the corner and drilling pilot holes. In the pictures you can see that I put nails in place and thought I would use hot glue, but that didn't work because of the vibrations of the ball strikes. In the end I found some very small screws that worked better.

Step 9: Cut and install backer board legs

Picture of Cut and install backer board legs
  1. From the 2x2 stock, cut 4 segments about 2.5" long as the legs.
  2. Drill a hole in the center with a spade bit about half way through the leg.
  3. Now glue and screw the legs onto the corners of the the backer board.
  4. After the glue has dried, you can take out the screws, and then drill a pilot hole all the way through to the front of the backer board. Then, from the front you can use that hole for your mounting screws when you want to mount the whole blinken bonken on a wall!

Step 10: Wire it up

Picture of Wire it up
52cb0134f92ea1bc7a00002e.jpg
52caff9826ece2cac800011e.jpg
52caffb7d535cfbe7b000062.jpg
IMG_20131218_194918_018.jpg
IMG_20140106_100218_593.jpg
Now it's time to wire this mess together!
The pressure sensor wires
  1. Solder together one end of all four of the resistors to one lead that will go to ground.
  2. Cut 4 lengths of wire that will reach from where all the sensor wires come together to where you will mount the arduino.
  3. Solder each of these four wires, along with one side of the sensor wires, to each of the four resistors.
  4. Solder together all of the other wires from the sensor to a wire that will go to VCC
LED strip reunited
  1. re-solder the cut wires from target pieces LED strip, make sure to get the direction right once again!
  2. solder the 3-wire from the target pieces strip to the lead from the level bar strip to reunite the strip back into one 24 LED strip!
Connectors
  1. Use female headers make a connectors to go between the 7 segment display and the Arduino
  2. Solder the four wires from the pressure sensor to a female header to connect to the analog input pins of the arduino
  3. Use female headers to create a power to the VCC and ground pins of the arduino.
Connect them all together according to the wiring diagram. Note that the one incorrect thing on the diagram is the power (5v) for the LED strip, which needs to go to a separate power source, not the 5v pin on the arduino.

Step 11: Get the code installed, calibrate, and enjoy!

Download and install the software on the arduino from the github repository:
https://github.com/zippy/blinken-bonken
You can do this by cloning the repository (if you are familiar with git) or by clicking the "Download zip" button.
The readme has pointers to the libraries you'll need to install. Kudos to the folks at Adafruit for great code that this project is built on.

If it's all installed and everything was hooked up correctly, when you power up the Arduino, you should see the word "AIM" spelled out on the display. Navigate the menu by pressing on the top two target segments until you see the display read "CAL" Now press the target center to activate calibration. This mode simply reads the amount of pressure being detected on the pressure pad you press on. You can use this mode to adjust the tightness of the screws so all the pads are roughly equal. I'm not sure if this makes much of a difference, but it seems cool!

To get back to the menu press the top two target segments simultaneously. For instructions on the game, watch the video in the introduction. The current games are: Aim, Speed, Fill, & Red vs. Blue

Please write me if you create any new games for the Blinken Bonken. Or submit a pull request on github and I'll include them!
 
Remove these adsRemove these ads by Signing Up

lets gonna play, i like to through things too!

stumitch9 months ago

EXCELLENT! I will do this with my class. Your son did a great job presenting as well.

zippy314 (author)  stumitch9 months ago

Thanks! It was all on the first take too! I look forward to seeing your version and any mods you come up with.

dieferman9 months ago

Nicely Done !!!!
Thanks For Sharing !!!!
Only suggestion would be, to set a push-button in parallel with the "Back" and "Forward" ("Reset") Sensors at the top or sides of the board to make it easier to reset and change games (Specially if it is intended to be used by kids!)

zippy314 (author)  dieferman9 months ago

Yah, that's not a bad idea. At one point I had it mounted high on the wall, so then it was even harder because you had to be tall to reach the top two pads...

eleones9 months ago

Would it be difficult to add audio (or musical) responses for correct hits/misses, etc?

zippy314 (author)  eleones9 months ago

My original intention was to add a Wave Shield (http://learn.adafruit.com/adafruit-wave-shield-audio-shield-for-arduino) to the project for that purpose, but I didn't get around it. So it's not hard, just more to do...

joelongstreet9 months ago

wow, this is incredible. amazing work.

dtrotzjr9 months ago

that's awesome! Thank you for sharing!

amaituino9 months ago

cool project :) loved the menu

jxrgen9 months ago

This is a fantastic project. Thanks a lot for sharing it!

This is awesome! Nicely done, I could throw balls at that for hours!

zippy314 (author)  Penolopy Bulnick9 months ago

Thanks!

Quadrat9 months ago
I live in Poland, write where you live, if shipping does not kill my wallet, I will cut off those parts and send them to you by mail, I need only the dimensions and where the holes are.
Quadrat9 months ago
i've got plenty laing round so that why i have thought of it
zippy314 (author)  Quadrat9 months ago
Where do you get it?
Quadrat9 months ago
Awesome project. my suggestion if i may would be:using sandpaper plexi panels instead of the plywood, that way the whole panel would lite up for better visual effect.
but anyway it is great idea for kids and adults to have some workout.
zippy314 (author)  Quadrat9 months ago
Yah, that's a great idea. I did think of that, just didn't have any at hand.