Forum

Arduino based, reac...
 
Notifications
Clear all

Arduino based, reactive shooting gallery game for BB guns.


CrackedConsole
(@crackedconsole)
Member Admin
Joined: 2 years ago
Posts: 356
Topic starter  

About  year ago I made an Arduino controlled shooting gallery to use in my basement, sadly I actually haven't used it much and the code is still somewhat buggy (feedback is welcome once I make it available).

The idea is to make a wooden box, lined with a thin layer of sheet metal, followed with stiff foam padding and a carpet curtain. I would then run 2 metal rods through the case, hanging spoons from these rods, with backstops that have contact pads.

The spoons / metal rods they sit on share a common ground, and close the circuit when they make contact with the pads on the backstop, above each spoon is an LED that is lit when you need to hit that spoon.

Capture

This is the first design idea I've made, it includes 2 LED rings and an LED grid. The rings would be used as either a "timer" or shot counter / target counters, and the grid could be used for either of the same data (numerical display of seconds remaining etc).

IMG 1025

I did my best to angel any what I could to avoid bounce backs directly at you, and used some 3M spray on adhesive to secure the thin sheet metal panels to the box.

IMG 1031

I then took an old section of carpet and hung it on the inside as a damper to slow the BB's velocity. Sprayed everything black, then attached thin foam padding all through out the interior (I need to update more pics)

IMG 1032

I've added a small external box with 4 buttons, a buzzer, LCD display and MIC.
The idea being, the buttons navigate through the menus and options on the LCD, the buzz is audible feedback such as round start and end and the MIC picks up each shot of the BB gun.

Having a MIC to track each shoot can make for interesting game concepts and statistics out put, that I will get into later.

Since the filming of the video above, I've since packed the spooned with Plumbers Putty, and added springs to the rear of each spoon to allow for better contact with the backstop pads. This was somewhat required to consistently trigger a "hit" as the contact time/surface area of the spoons hitting the pads themselves wouldn't always trigger a hit.

 

As seen in the video, I currently have 2 games;

Timed - 
The LED above each spoon lights up, and you must shoot each spoon in any order with in a set time limit (or shot count)

Random -
LEDs randomly light up, having to hit each target in succession before you can move on, this too can be a time or shot challenge.

 

A few things in the menu system,games and the control box;

  • The control box is attached via an Ethernet cable, so you can move it to where you are shooting from and control the game / pickup shots with the MIC
  • Both game modes have 3 options of play. Timed, Shot Count, Free Play
  • Statistics for each round are displayed at the end of the round. Each shot, time between shots / hits, shout count, hit count, average shot time, fastest shot etc..
  • High scores are stored to an SD card / text file for each game and over all game play, such as fastest shot.
  • Since the MIC picks up shots, it can correlate shots with hits on target, limit how many shots you are allowed per game, track time from start buzzer to first shot/hit and much more.

I plan to release the Arduino code once I touch up a few items (its still very buggy) and the google sketchup source files I made to build the case.
All that will come in the next few weeks when I find time, it's been collecting dust currently.

If you decide to make this project, do so at your own risk and wear proper safety gear! This is for outdoor use, and BBs can and will bounce off items and can be a hazard, do so at your own risk.

 


Quote
CrackedConsole
(@crackedconsole)
Member Admin
Joined: 2 years ago
Posts: 356
Topic starter  

I've decided to release the code as is, I'm be making changes and updates here soon once I start toying around with the device again.


Let me know if you think I should setup a Github and publish it there, I'd like to see how well we can optimize this code.


ReplyQuote
Share: