Normally I'm a software guy, but I've recently decided to try my hand at some electronics projects. What I want to do is make my own impact sensor for target shooting. What I'm picturing is a piece of AR-500 steel for the target, and a sensor that can detect when the round hits the target. I've started by using an Arduino Uno, a piezo and 1MOhm resistor, like in the arduino tutorial.

My main problem is lessening the sensitivity of the piezo, so that I don't get false positives. For example, if the round hits in front of the plate and splashes dirt on it, I don't want it to pick that up. Or if the round passes by, I don't want the sonic boom to trigger it either. Currently I have it set that so that a light tap on the piezo sensor housing won't set it off, but a harder tap will (with a threshold of 100 from my arduino adc).

My question is, will the piezo output max voltage with a hard tap from my finger, or will it send out a really high voltage if I were to hit the steel hard with a hammer (to simulate a rifle round). If the voltage will keep increasing as the impacts increase (is there a limit?), then I guess it's as simple as reducing the voltage coming out of the piezo. If the voltage hits it's maximum output prematurely, is my only option to isolate the vibration with rubber mounts, or padding or something so that it takes a good wallop to set it off?

  • 2
    \$\begingroup\$ how often do you want to use the piezo? More than once? \$\endgroup\$
    – user16324
    Jan 3, 2017 at 17:27
  • \$\begingroup\$ Yes it would be needed to detect repeated hits. \$\endgroup\$ Jan 3, 2017 at 17:32
  • 1
    \$\begingroup\$ You can epoxy a ceramic disc cap and load it with 10k~100k and detect the pulse with a Sh. diode and cap. then decay to zero. Or use an muffled (taped up) electret mic and do the same. That's what I used as a kick drum trigger for a rock band light sequencer circa'75 then used a pot AC couple to a 1M self biased CMOS inverter for the amp. \$\endgroup\$ Jan 3, 2017 at 17:40
  • \$\begingroup\$ @Tony Stewart Thanks for your reply! You might need to simplify it a little for me as I'm still quite new to this. I mean I know the names of the parts you refer to, but not sure how I would hook it up. Do you mean to use these pieces instead of a piezo, or with a piezo? \$\endgroup\$ Jan 3, 2017 at 17:50
  • \$\begingroup\$ How about using a 24-bit accelerometer? \$\endgroup\$
    – Tedi
    Jan 3, 2017 at 20:52

3 Answers 3


Yes, the output of a piezo-electric sensor should keep increasing as the target is whacked harder. There should be a substantial difference between tapping the target with your fingers and hitting it with a hammer or a bullet. One problems with piezo sensors is to keep them from frying the input stage if accidentally whacked hard.

Of course, the obvious thing to do is simply try it. Set up something that triggers if a signal gets over a couple of volts or so. Then feed the piezo signal thru a pot so that you can adjust the attenuation, then into the comparator. After some experimentation, you should be able to find a setting that detects hard whacks but not casual bumps.


Any Piezo-electric sensor can be used including an Electret mic. a piezo sensor (or even a ceramic capacitor with signal amp). All being high resistance with some capacitance with varying sensitivities, the output is a current proportional to sound vibration and the voltage is proportional to resistance. Thus the gain depends on the load pullup R value . I suggest 1K is small enough to attenuate signal. Then add tape over orifice.

enter image description here

The signal is AC coupled and pulled up to Vcc for "half-wave negative peak detection" pulses down with an envelope burst of noise. The cap voltage drops with this current pulse when the diode conducts, dropping from Vcc to some voltage below Vcc/2 which is enough to drive the next stage to a logic "1" out. The 10M resistor pullup R3, slowly "rearms" the circuit back at Vcc.

This produces a +ve voltage on the noise impulse with a duration of C2 * R3 or 100 ms in this case. This may be extended to a 5 seconds by increasing C to 1uF. ( with a good quality cap > 20M leakage resistance )


simulate this circuit – Schematic created using CircuitLab

Attenuation of gunshot or any noise is easily muted with tape to also vary sensitivity over the sensor and proximity of sensor to target.

  • 2
    \$\begingroup\$ The OP said pretty specifically that they don't want their sensor to be triggered by the sound of the shot being fired, only by the impact of a bullet on the target. And in any case, you haven't explained anything about how this circuit works, nor how it could be adjusted. \$\endgroup\$
    – user39382
    Jan 3, 2017 at 19:43
  • \$\begingroup\$ Signal detection is easily obtained by proximity mounting on or near behind plate. Adjustment is obvious. Output requirements are unknown. \$\endgroup\$ Jan 3, 2017 at 19:51
  • \$\begingroup\$ OK @duskwuff I added a circuit description for you. \$\endgroup\$ Jan 3, 2017 at 20:15
  • \$\begingroup\$ Dear Dusk Nothing I said indicated what you claimed. It was your assumption the gunshot would be loud enough to trigger the back sensor. which can be easily chosen by location. muting with tape to only pick up vibrations of plate. \$\endgroup\$ Jan 3, 2017 at 20:56
  • 1
    \$\begingroup\$ @jonnor I disagree. like all CMOS have 2 stage protection diodes with 10k current limit for kV ESD protection and I added an extra R series which provides gain and could be raised to reduced sensitivity to 100k. The 4000 series CMOS has high RdsOn and so may be used as a linear amp, unlike HC family which I should correct, which become unstable from lower RdsOn and higher GBW. \$\endgroup\$ Feb 26, 2021 at 19:34

May be put a resistor with the correct value at the out of the piezo, to find the correct value you could solder a potentiometer (in the correct Ohm range of the piezo) and do some test until the arduino will detect the signal. Then you mesure the potentiometer with your ohm/voltmeter and replace it with the correct resistor. The other simple solution is to isolated the piezo from external sound, for that you can use a cylinder of fixing paste and/or some layer of cork wood, I think ity will be the best one because the impact of a bullet make a really strong noise, I think may be it can damage your piezzo. Also may be you can replace the piezzo by another device less sensitive like a small headphone speaker (in the correct ohm range).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.