About sound Sensors


Im searching for a way to detect any kind of sound that can occur at a distance of few meters around a sound sensor, and, if possible, to calculate the volume/intensity of it. That input will generate some graphics/images on a screen. I do not want to output sound.

Because I do not fully understand what kind of sound sensor is better for my purpose (im afraid of buying something wrong), I ask you all, what kind of sensors have you used? Or can recommend/advice to me?

Do I need to buy a shield to the arduino? Or there is some sort of solution that it doesn’t require a shield to implement the sensor on arduino?

Many thanks!

the sensor you need is a microphone, do you have one with you PC equipment, an old mobile phone headphone set might have a mic on it.

Any sound is not possible. A microphone usually is cut off to audible frequencies, and the membrane will have a min and max response frequency too. If you want to listen to animals and such, a high frequency amplification may be needed to restore the cut off audio, or a uninhibited mic/specialised mic

Note: a speaker used backwards is a microphone, so using different ranged speakers together may give a surprising result. ( did something similar for a 3d mic idea )

I think you will also need a circuit to turn the AC signal to a modulated DC signal for use with the arduino.

to calculate the volume/intensity of it.

That is more tricky than you think. After you have amplified the output from the microphone you need to take it into a peak detector circuit before passing it on to the arduino's analogue input. Even though the peak amplitude is related to the loudness of the sound it is not the whole story. Getting a true measure of the loudness of the sound is almost impossible because there are many factors involved such as the peak power, avrage power and RMS power. That is why you can never say how loud a say 50 Watt hi-fi is going to be. Get to it before it goes dark tomorrow:- http://en.wikipedia.org/wiki/Precision_rectifier


I'm doing some experiments with sound sensors as well, so here is my experience:

I bought simple sound sensors in ebay (like this one http://www.ebay.com/itm/Sound-Sensor-Module-Arduino-Sensor-Shield-PIC-MCU-/200699312728?pt=LH_DefaultDomain_0&hash=item2eba9c7a58#ht_2048wt_1139), but sooner or later I found that they were too expensive and not enough for my requirements. But I'll have to accept, that they are smaller than my THT developments. If you can breadbord and solder, you'll get much more flexibility.

Normally I use electret microphones (here is a nice artilce about them http://www.openmusiclabs.com/learning/sensors/electret-microphones/) , and build an amplifier circuit depending on the gain needed, using a transistor or a LM386.

Once you get a powerful signal, the real fun begins. I regularly face the problem of separating sounds, identifying the ones that are interesting, and filtering noise and others I don't care. This made me trip into the mysteries of the "analog world", and experimenting with low, band and high pass filters, schmitt triggers, peak detectors, envelope followers and such stuff.

It all depends on what you need.

The thing about that sensor on ebay is that it is described as:-

Based on a high sensible microphone and onboard Voltage regulator supply,

Personally I prefer the stupid microphones!

Would you buy anything from someone who did not know the difference between sensitive and sensible?

Would you buy anything from someone who did not know the difference between sensitive and sensible?

In French "Il est sensible" means "He's touchy/sensitive", so I guess it is just one of those lost-in-translation things.

You can start with something like this:

And here you have some info about peak detectors: http://www.youtube.com/watch?v=ic_yEUV7Y3c&feature=player_embedded