噪音分貝DB,FFT. 振動加速度關系


獲取了聲音的波形 進行FFT變換, FFT變換后X軸與Y軸各代表什么意思呢?

轉完的 x 軸是 frequency,y 軸可以是 magintude or power level.

 

所以0dB表示你量到的數值跟那種信號的ref.(基底) 值一樣大。 Help有說明到的聲壓的 ref值是被定義為 pref is 20 µPa。

 

下面跟你分享得再更詳細些 :
Help 裡鍵入「dB」,點選「Measuring Sound Pressure」 可在右邊畫面看到LabVIEW裡所提供的公式。
依Power或Amplitude,算法略有不同。 (當然仍是同一條,只要你清楚就scale而言 Power 就是Amplitude的平方 )

dB = 10 log (Power Ratio)         ; Power Ratio =  P1/P0              
dB = 20 log (Amplitude Ratio)    ; Amplitude Ratio = A1/A0   
其中,P1、A1為measured power & amplitude,P0、A0為 reference power & amplitude。
             Pi = Ai ^2。

dB measurement 的意義是「purely relative」的。 dB視你所量測的訊號類型,具「相對的大小意義」。
0dB表示你量到的訊號大小跟這種訊號的ref.值一樣大。
不同型式的自然界訊號有不同的通用ref.數值大小。可查表而得。 

而dBm是特別針對電壓power而言的「dB」。另外還有dBZ、dBk、dBi…等等。  

 

可參考WIKI: http://en.wikipedia.org/wiki/Decibel#cite_note-2  


就聲壓而言,dB的表示法是根據人耳聽覺所能感受到的程度以log 作為scale呈現。
式子為Amplitude的那條 => SPL = 20 log10 (p/pref)。
這時,
0dB代表「average threshold of human hearing」,而60~70dB 代表對人耳而言比較normal的範圍。
當然這些都是依據統計數據作為基礎。
今天如果你量測的是 聲壓 (Power)的 話,ref、基底就是20μ,
而0dB表示你量測到的「波形數值大小」就是 20μpa ( pa是單位)! 相當於一隻蚊子距離你三公尺飛時的聲音大小。

 

 

-----------------------------------

加速度與速度的轉換
對 於簡諧振 動,加速 度可用下 面的函數 式表示:
a=Asin(2πft+Φ)
A- 最 大的加 速度振幅 值 , App=2A 稱 為 峰 峰 值 , App 是 振動傳感 器給出的 加 速 度
峰 峰值。
f- 振 動的頻 率 。
t- 時 間 。
Φ - 初始相 位 。
將 加速度轉 換為速度 ,加速度 的函數進 行一次積 分可得到 速度的函 數 :
v= A/(2πf) ·cos(2πft+Φ)
可 見加速度 的振幅 V=A/(2π f),由 於振動傳 感器測得 的加速度 是峰峰值 App=2A,
所 以速度的 振幅表示 如下:
V=App/(4πf)
App–振動傳 感器的加 速度峰峰 值 。
f- 振 動的頻 率 。
通 常采用速 度的有效 值診斷振 動的故障 ,速度的 有效值計 算公式如 下 :
Vrms≈0.707V=0.707*App/(4πf).

-----------------------------------

 

振動加速度和分貝的轉換公式(????這個是經驗公式??? 適用性)

 

A: m/s^2 (注意單位,通常實際使用的是mm/s^2)
B: dB
 
B=20*log(A/0.000316)
A=10^(B/20)*0.000316

 ------------------------------------------

Matlab 使用 FFT 進行頻譜分析

 

下面的示例說明了如何使用 FFT 函數進行頻譜分析。FFT 的一個常用場景是確定一個時域含噪信號的頻率分量。

首先創建一些數據。假設是以 1000 Hz 的頻率對數據進行的采樣。首先為數據構造一條時間軸,時間范圍從 t = 0 至 t = 0.25,步長為 1 毫秒。然后,創建一個包含 50 Hz 和 120 Hz 頻率的正弦波信號 x。

t = 0:.001:.25;
x = sin(2*pi*50*t) + sin(2*pi*120*t);

添加一些標准差為 2 的隨機噪聲以產生含噪信號 y。然后,通過對該含噪信號 y 繪圖來了解該信號。

y = x + 2*randn(size(t));
plot(y(1:50))
title('Noisy time domain signal')

很明顯,通過觀察該信號很難確定頻率分量;這就是頻譜分析為什么被廣泛應用的原因。

得到含噪信號 y 的離散傅里葉變換很容易;執行快速傅里葉變換 (FFT) 即可實現。

Y = fft(y,251);

使用復共軛 (CONJ) 計算功率譜密度,即測量不同頻率下的能量。為前 127 個點構造一個頻率軸,並使用該軸繪制結果圖形。(其余的點是對稱的。)

Pyy = Y.*conj(Y)/251;
f = 1000/251*(0:127);
plot(f,Pyy(1:128))
title('Power spectral density')
xlabel('Frequency (Hz)')

放大並僅繪制上限為 200 Hz 的圖形。請注意 50 Hz 和 120 Hz 下的峰值。以下是原始信號的頻率。

plot(f(1:50),Pyy(1:50))
title('Power spectral density')
xlabel('Frequency (Hz)')

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM