DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

How I can use a acoustic weighting filter dB(A) in diadem time data

Hi,

 

I need convert noise time data into diadem in dB(A) data, but I didn´t find any tools to use. I didn´t find any weighting filter or script for it

0 Kudos
Message 1 of 9
(6,631 Views)

Hi Gaetano,

 

Here's a VBScript you can use to transform the amplitude to dbA.

 

  IF AmplitudeType = "Ampl.Peak" THEN R1 = 2 ELSE R1 = 1
  L1 = CNo("GroupName/ChannelName")
  Call FormulaCalc("Ch(L1):= R1*10*Lg(Ch(L1)*50000)")

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 2 of 9
(6,578 Views)

hi, Turpin

 

OK, this script convert noise data measured Pa (Pascal)  in dB - ref: 20uPa, but I need put the dB(A) weighting to convert noide dB to dB(A),  it is it big issue!!!

0 Kudos
Message 3 of 9
(6,568 Views)

Hi Gaetano,

 

I'm sorry, you're right.  I posted the pure dB transform.  Here's the dB(A) analysis using an approximate polynomial fit, not the full lookup table approach:

 

  L1 = CNo("GroupName/ChannelName")
IF AmplitudeType = "Ampl.Peak" THEN R1 = 2 ELSE R1 = 1 FormulaTxt = "0.7943463958*(Ch(L1)^2+20.6^2)*(Ch(L1)^2+12200^2)" FormulaTxt = FormulaTxt & "*sqrt((Ch(L1)^2+107.7^2)*(Ch(L1)^2+737.9^2))" FormulaTxt = "Ch('dbA Fact'):= 20*Lg((12200^2*Ch(L1)^4)/(" & FormulaTxt & "))" Call FormulaCalc(FormulaTxt) Call FormulaCalc("Ch(L1):= R1*10*Lg(Ch(L1)*50000) + Ch('dbA Fact')") Call ChnDelete(CNo("dbA Fact"))

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

Message 4 of 9
(6,553 Views)

Hi Brad,

 

Thanks for your help

0 Kudos
Message 5 of 9
(6,532 Views)

Hello Ni Support,

has anyone proofed that this Formula works for time domain data? On which formula for A weightening are you referring to?


G_A(s)= {k_A \cdot s^4\over(s+129,4)^2\quad (s+676,7)\quad (s+4636)\quad (s+76655)^2}
 ?

 

0 Kudos
Message 6 of 9
(6,260 Views)

Hi ruthrof,

 

I checked with R&D, and that is indeed the exact formula behind the DIAdem script for dBA-weighting.

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 7 of 9
(6,150 Views)

Which is the correct procedure to convert pa to dB A ?

 

First apply frequency filter to Pascal value then convert it to dB and calculate the RMS value or

2. convert pa to dB first then apply frequency a filtering and then take the RMS value ? 

For the number 2, after converting pa to dB the frequency A weighting is not applying, it shows that " channel must not contain no values " , kindly help with this 

0 Kudos
Message 8 of 9
(3,372 Views)

The correct procedure for time data to RMS in dB(A) is:

1. Apply the filter on the time data

2. Calculate the RMS

3. Convert to dB

 

Actually there are three different ways to do the A-Filtering and it is important to not mix them up:

1. You can apply a digital filter to the time signal. The time signal is then still a time signal but the low and high frequencies are lowered and parts above 1kHz are pushed up. With this time signal, you can do additional calculations like RMS over all, running RMS, FFT or third/octave and all results are A-weighted.

The script for the filtering looks like this:

Set ChnResult = ChnWeightFilter("","[1]/Signal","/WeightedSignal","AWeight")

 

This filter must not be applied to anything else then time signals. It is not correct for FFT or Third/Octave results. If the amplifier of the microphone provides an A-Filter, the filtering can be done there and it would be wrong to do it twice.

 

2. The formula from ruthrof above defines the filter characteristic that can be used to calculate the offset for each frequency if you have calculated the FFT from you time signal.

 

3. There are tables for third/octave values that define the offset for specific frequencies. This tables can be used for the result of a third/octave calculation.

 

 

Message 9 of 9
(3,351 Views)