Gunshot Detector

I wanna make gun shoot detector with arduino uno r3 ( or another arduino ).

I'm planning to make it with microphones. So if i can find sound frequency of rifles, pistols or other weapons, than if i measure that sounds from a sensitive microphone ( which can measure sound frequency ) i think i can distinguish which weapon had fired.

So where may i start?
Can i find weapons sound frequency data?
Can i find microphone measuring sound frequency?
Or do you have any suggestion?

Thank you...

I'd start with a PC if I were you, rather than an Arduino.

at the begining platform is not important. im thinking, is there any charasteristics of explotion sound? and how can i measure that charasteristics?

thank you...

If I understand, you want to discriminate between different guns by the sound of the shot to determine which one fired. I assume you have done a web search and come up empty.

I would start by learning about FFT - Fast Fourier Transform, which will break the signal down into it's frequency spectra. Alternatively you could make several bandpass filters with different frequencies. Either of these will give you data like you would see on an audio equalizer. From that you should be able to test different guns and see what the spectrum look like.

The math involved in FFT may be too much for an Arduino in real time, but I don't know. I've never done FFTs, only used the results.

If you just want to determine when a shot occurred (not tell which gun fired) then a simple comparator can be used. There will be a big spike in the signal at the moment the gun fires.

Gunshots have no specific frequency, it is "noise", i.e. many different unrelated (not harmonic) frequencies. So FFT etc. is likely to be difficult.

Detecting a gunshot with a microphone will be easy (threshold)
You could try recognising different types of shots by "correlating" some series of ADC captures, assuming that the distance
mike-gun won't screw everything by saturating the microphone...

In any case, an Arduino can't usually run at speeds high enough for simple audio processing. For example, it can't even play MP3.
Go for a fast 32-bit at least (PIC or ARM)

EmreKo:
at the begining platform is not important.

To you, maybe. And yet you've come to an Arduino forum for feedback. That kinda presupposes an Arduino-based solution. I don't think Arduino is the right solution for this. Which implies that we're not the people you should be consulting about this.

Are you trying to detect nearby gunshots (like a range counter) or something like Shotspotter that detects them in a neighborhood setting? The first seems far easier to me and what I would be doing is getting a commercial range counter and - read with an Australian accent - TAKE IT APART! I don't see why Arduino would not be up to this application as a range counter gunshot detector - I think the processors used on those are probably inferior to the ATMega328. If it is more like Shotspotter where you are trying to pick it out of a cacophony of noise, I think Arduino is also a poor choice.

TAKE IT APART!

DaveHand350x350[1].jpg

Thank you all for replies.

If i can do I wanna measure the range with microphones like that. Artillery sound ranging - Wikipedia

If i can , I want to distinguish which type of weapon had fired.

If I can't do that, I want to locate gunshots to 2000 meters ( which type of weapon is not important ). Location will be with multilateration Trilateration - Wikipedia.

Any suggestion about hardware and idea?

Thank you.