This is an instructable for a target practice system for airsoft and nerf weapons. The system has been designed to test a shooter’s reaction times and accuracy.
Sam and I have been meaning to do this project for a while, and when the microcontroller competition opened, coinciding nicely with the end of our university exams giving us a real push to pick up the arduino and get stuck in.
This is the first project either of us has attempted on the arduino as well as instructables, so as yet are still inexperienced. On the upside we both have coding experience and both taking electronics based courses at university. So please go easy on us and we thank you in advance for your comments and advice.
The setup is based on the arduino microcontroller and has four main parts other than the arduino itself. These are a footswitch, buzzer, targets and a display.
So here is the equipment you are going to need, seperated into their individual sections.
Arduino duelimove (or related with 14 pins, based on 4 targets)
Footswitch:
Push to make heavy duty switch, similar to those found in guitar pedals.
A door stop, the bigger the better
Buzzer:
Buzzer piezo element
Targets (per target):
Metal coat hanger
Thin plate metal, possibly aluminium, you might have another material suitable
Reed switch, a switch that is controlled by a magnetic field
Reed magnet (roughly similar size to the switch)
Resistor (10kOhm and 560Ohm)
Red Led
Green Led
Targets (all):
74HC595 Shift register (1 needed for every 4 targets)
Display:
Four 8×8 led matrices
Five 74HC595 shift registers
Misc:
Alot of wire
A number of prototyping breadboards
Tools:
Drill
Multimeter (this is for general testing of switches and shift register output testing)
Wire cutters
Wire strippers
Soldering Kit
Pliers
Sheet metal cutters
We are going to run through each section of the build separately, finally ending with a complete build and summary. We have attached a copy of the separate codes to each of the respective sections for you to follow and a complete version at the end. Don’t forget to click on some of the more detailed images to enlarge them, especially the schematics.
Step 1: Footswitch
Since the footswitch on its own does not really constitute a usable unit we decided to mount it on a ramp of sorts, leading us to the door stop which seems to be made for this exact purpose.
The electronic circuit for the switch is a pretty straightforward affair. It consists of a pull up resistor connecting a +5v line to an arduino pin, giving a HIGH input. The switch is then aligned such to pull the pin low when pressed.
The construction of the complete unit is shown in the pictures which are pretty self explanatory. You will need to drill/cut a hole at the top of the doorstop ramp. The closer to the top the better, as the switch will require a fair amount of force, so needs to be on a good backing. Next up is a small hole on the rear with a vertical slit to guide the cable. When soldering up be sure to check you are using the correct pins (push to make).
Onto the code, it is a pretty simple code that is integrated into a “for” loop in the main program. By doing this the main program will continuously look at the status of the footswitch as it waits for a LOW value, signalling it being pressed and you being ready to go. So the “footcheck” function is called, the value of the designated foot pin is observed and the value then returned to the calling function.
Footswitch
Buzzer
Targets
For more detail: Arduino Target Practice