Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Sound Pressure Level from FFT

Status
Not open for further replies.

Tunelabguy

Full Member level 5
Joined
Jan 3, 2011
Messages
319
Helped
92
Reputation
184
Reaction score
89
Trophy points
1,308
Activity points
4,228
In a test cell for diesel engines I am sampling audio from a high-quality industrial microphone and performing an FFT, from which I hope to extract a sound pressure level in dB comparable to a commercial dosimeter to measure how loud the engine is. At this point I am not concerned about absolute references starting with the microphone's sensitivity in V/Pa because in the end this system will be calibrated against a gold-standard dosimeter. But I am unsure about the algorithm. This is what I have done so far.

1. FFT of the microphone data is in bins of complex numbers up to the Nyquist frequency.

2. I multiply each complex number by the A-weighting scaling factor:

Code:
 (12200^2 * f^4) / ((f^2+20.6^2) * (f^2+12200^2) * (f^2+107.7^2)^0.5 * (f^2+737.9^2)^0.5))

where f is the bin frequency in Hz.

3. I add up the magnitude squared of the resulting complex numbers (real^2 + imag^2).

4. I divide the sum in (3) by the number of bins up to the Nyquist frequency (so that I get the average of the magnitude squared of all the complex numbers in (2).

5. I take the logarithm base 10 of the average from (4) and multiply by 20 and call this a dB level.

6. I add a fixed offset determined by my gold standard calibration against a good dosimeter so the result agrees with the dosimeter.

My question is do I have the algorithm right? I am not sure about using the magnitude squared instead of taking the square root. Am I applying the A-weighting formula in the right place? Once I establish the offset will my algorithm continue to agree with the dosimeter as the ampliltude and frequency distribution changes? I am assuming that both units have comparable microphone and signal conditioning response.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top