# Hit Plate impact detection for .22 Long Rifle ammunition

**URL:** <https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142>\
**Category:** General Guidance\
**Created:** [October 24, 2021, 10:27pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142 "2021-10-24T22:27:46Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 24, 2021, 10:27pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/1 "2021-10-24T22:27:46Z")

</div>

Hello, I'm trying to build automatic target detection system for .22 Long Rifle ammunition, the hit plate is gonna be made of **stainless steel** and the ammunition is **lead**

The idea is to use some kind of sensor to detect impact on the hitPlate which you can on the picture here

 ![WhatsApp Image 2021-10-22 at 12.48.12 PM](https://europe1.discourse-cdn.com/arduino/original/4X/c/c/6/cc66940e67bca1e69e8e88a1efbdf12fe0c2e442.jpeg)

so I can use that data to show scores and move some motors to do various actions

My first try is to use piezo disk to detect it, but not sure if it's the right way to do it or not

I'm also thinking about using Force Sensor.

Would be nice to get some help about what to use, the best approach for that.

Thank you.

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 24, 2021, 10:28pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/2 "2021-10-24T22:28:24Z")

</div>

Also here is how I tried to wire it with piezo disk

 ![WhatsApp Image 2021-10-22 at 10.19.47 PM](https://europe1.discourse-cdn.com/arduino/original/4X/4/b/f/4bf2ce8000c7078d6763aa8597059e02cd831f0a.jpeg)

---

<div class="post-metadata">

**Author:** ![LarryD](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/larryd/32/215550_2.png) [@LarryD](https://forum.arduino.cc/u/LarryD)\
**Post date:** [October 24, 2021, 10:34pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/3 "2021-10-24T22:34:08Z")

</div>

> [@mogilogic](#):
>
> piezo disk

Should work.

* * *

In the Arduino IDE, use Ctrl T or CMD T to format your code then copy the **complete sketch**.

Use the \</\> icon from the ‘reply menu’ to attach the copied sketch.

---

<div class="post-metadata">

**Author:** ![Idahowalker](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/idahowalker/32/238858_2.png) [@Idahowalker](https://forum.arduino.cc/u/Idahowalker)\
**Post date:** [October 24, 2021, 10:34pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/4 "2021-10-24T22:34:36Z")

</div>

You might need to condition the piezo signal in some fashion.

Link to the spec sheet on the piezo's being used?

---

<div class="post-metadata">

**Author:** ![Ballscrewbob](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/ballscrewbob/32/950458_2.png) [@Ballscrewbob](https://forum.arduino.cc/u/Ballscrewbob)\
**Post date:** [October 24, 2021, 10:36pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/5 "2021-10-24T22:36:30Z")

</div>

IIRC there is a "[knock senso](https://www.arduino.cc/en/Tutorial/BuiltInExamples/Knock)r" sketch for the use of piezo sensors.  
But as Idaho states you need to give the specs of the sensor as there are a lot of variations out there.

[Other knock sensor sources](https://www.google.com/search?q=arduino+knock+sensor&rlz=1C1CHBF_enCA923CA923&oq=arduino+knock+sensor&aqs=chrome..69i57j0i512j0i22i30l8.11025j0j7&sourceid=chrome&ie=UTF-8)

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 24, 2021, 10:37pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/6 "2021-10-24T22:37:30Z")

</div>

> [@Idahowalker](#):
>
> Link to the spec sheet on the piezo's being used?

It's just a normal piezo disk, from where I bought it they don't provide any spec sheet 😐

---

<div class="post-metadata">

**Author:** ![anon94801460](https://avatars.discourse-cdn.com/v4/letter/a/278dde/32.png) [@anon94801460](https://forum.arduino.cc/u/anon94801460)\
**Post date:** [October 24, 2021, 10:49pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/7 "2021-10-24T22:49:30Z")

</div>

What happens when you try the setup you have? People have reported using a piezo disk and an Arduino to detect a pin drop on a desk.

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 24, 2021, 10:51pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/8 "2021-10-24T22:51:17Z")

</div>

I can read the values, but sometimes I get high value sometimes I get low value, even I'm hitting the plate the almost the same way, I'm not trying to make it too sensitive since I only wanna detect an ammo hitting it

---

<div class="post-metadata">

**Author:** ![Ballscrewbob](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/ballscrewbob/32/950458_2.png) [@Ballscrewbob](https://forum.arduino.cc/u/Ballscrewbob)\
**Post date:** [October 24, 2021, 10:56pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/9 "2021-10-24T22:56:45Z")

</div>

Does the sensor have any markings on it at all ?

---

<div class="post-metadata">

**Author:** ![GoForSmoke](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/goforsmoke/32/1127097_2.png) [@GoForSmoke](https://forum.arduino.cc/u/GoForSmoke)\
**Post date:** [October 24, 2021, 10:59pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/10 "2021-10-24T22:59:06Z")

</div>

Connect the piezo to the inputs of an opto-isolator and connect the opto outputs to Arduino GND and an IO pin set as INPUT\_PULLUP.

---

<div class="post-metadata">

**Author:** ![JohnRob](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/johnrob/32/253560_2.png) [@JohnRob](https://forum.arduino.cc/u/JohnRob)\
**Post date:** [October 24, 2021, 11:09pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/11 "2021-10-24T23:09:36Z")

</div>

Piezo disks can generate some high values albeit for short period of time. I wouldn't use an opto isolator as I don't see a piezo reliably powering the required input.

What you need to do is limit the voltage from the Piezo to the Arduino with a 5V TVS or Zener, then add a 10k between the zener and the Arduino digital input.

I cannot imagine a .22 hitting the disk and not getting a huge voltage spike from the piezo.

One could add a mass on the back side of the piezo but I doubt it will be needed.

Mounting: I can't see what holds the piezo to the disk. The best attachment would be a relatively hard epoxy.

---

<div class="post-metadata">

**Author:** ![bluejets](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/bluejets/32/1013044_2.png) [@bluejets](https://forum.arduino.cc/u/bluejets)\
**Post date:** [October 24, 2021, 11:24pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/12 "2021-10-24T23:24:52Z")

</div>

> [@JohnRob](#):
>
> The best attachment would be a relatively hard epoxy.

Possibly non acid silicone would be much better.

---

<div class="post-metadata">

**Author:** ![JohnRob](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/johnrob/32/253560_2.png) [@JohnRob](https://forum.arduino.cc/u/JohnRob)\
**Post date:** [October 24, 2021, 11:33pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/13 "2021-10-24T23:33:06Z")

</div>

> Possibly non acid silicone would be much better.

That is your logic for your recommendation of silicone for attachment?

Silicone rubber will absorb and dissipate some of the impact, hence a harder material is recommended.

---

<div class="post-metadata">

**Author:** ![Idahowalker](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/idahowalker/32/238858_2.png) [@Idahowalker](https://forum.arduino.cc/u/Idahowalker)\
**Post date:** [October 24, 2021, 11:57pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/14 "2021-10-24T23:57:19Z")

</div>

Now I may be being silly here but I am very curious how well an accelerometer, even a hobby grade one, would detect the impact.

If the OP ever decides on using an accelerometer post the results here.

---

<div class="post-metadata">

**Author:** ![GoForSmoke](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/goforsmoke/32/1127097_2.png) [@GoForSmoke](https://forum.arduino.cc/u/GoForSmoke)\
**Post date:** [October 25, 2021, 7:56am UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/15 "2021-10-25T07:56:53Z")

</div>

> [@JohnRob](#):
>
> Piezo disks can generate some high values albeit for short period of time. I wouldn't use an opto isolator as I don't see a piezo reliably powering the required input.
> 
> What you need to do is limit the voltage from the Piezo to the Arduino with a 5V TVS or Zener, then add a 10k between the zener and the Arduino digital input.
> 
> I cannot imagine a .22 hitting the disk and not getting a huge voltage spike from the piezo.
> 
> One could add a mass on the back side of the piezo but I doubt it will be needed.
> 
> Mounting: I can't see what holds the piezo to the disk. The best attachment would be a relatively hard epoxy.

Whereas I Have Done This and it's not a problem at all. Others have put videos up connecting leds directly to show. --- Semiconductor junctions flatten the spikes. --- I went as far as repeatedly smacking the disk with the butt of a screwdriver handle to get longer pulses. I tested one disk to destruction and no other parts smoked hard as I went for smoke.

I can't imagine a fry pan stainless steel disk that will stop a .22 long rifle bullet yet be so light that the transferred momentum shock will be as hard on a disk as the whole force of my screwdriver handle directly on the disk.

My experience with .22 LR is a few 1000 rounds spent target shooting to collect NRA medals for 3 years or so. I don't have to dream about them, I have ballistics tables.

---

<div class="post-metadata">

**Author:** ![hammy](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/hammy/32/238813_2.png) [@hammy](https://forum.arduino.cc/u/hammy)\
**Post date:** [October 25, 2021, 1:04pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/16 "2021-10-25T13:04:29Z")

</div>

I’d be tempted to put an op amp in to help capture and condition the pulse .

---

<div class="post-metadata">

**Author:** ![wildbill](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/wildbill/32/1126438_2.png) [@wildbill](https://forum.arduino.cc/u/wildbill)\
**Post date:** [October 25, 2021, 2:09pm UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/17 "2021-10-25T14:09:45Z")

</div>

Take a look at a similar project [here](https://forum.arduino.cc/t/introducing-a-proximity-sw-as-an-end-to-the-loop/665764)

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 26, 2021, 11:05am UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/18 "2021-10-26T11:05:09Z")

</div>

I'm planning on squeezing it between the plate and another pice of metal that will be screwed to the plate to give it stability and get the full power of the hit is it logical ?

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 26, 2021, 11:11am UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/19 "2021-10-26T11:11:00Z")

</div>

> [@Idahowalker](#):
>
> I am very curious how well an accelerometer

The plate will be stationary, and it will be connected to a frame that contain 5 plates together

This is the picture of the product I'm trying to recreate for my self

 ![HoRa2000E-1920w.JPG copy](https://europe1.discourse-cdn.com/arduino/original/4X/3/5/9/359d7fcc6d8927ad7ba3a6a31ba639beb3b7331c.png)

---

<div class="post-metadata">

**Author:** ![mogilogic](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@mogilogic](https://forum.arduino.cc/u/mogilogic)\
**Post date:** [October 26, 2021, 11:14am UTC](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142/20 "2021-10-26T11:14:25Z")

</div>

> [@wildbill](#):
>
> Take a look at a similar project [here](https://forum.arduino.cc/t/introducing-a-proximity-sw-as-an-end-to-the-loop/665764)

Thank you I checked it, but he is using vibration sensor which can't work for my case for reasons I explained on the comment above this one.

[Next page](https://forum.arduino.cc/t/hit-plate-impact-detection-for-22-long-rifle-ammunition/918142.md?page=2)
