1. 程式人生 > >DSP基本名詞術語和它們之間的關係,您都清楚嗎?

DSP基本名詞術語和它們之間的關係,您都清楚嗎?

對採集到的時域訊號進行數字訊號處理(DSP),得到它們的頻域結果。那麼,訊號從時域變換到頻域時有一些專門的DSP名詞術語,並且這些名詞術語之間有著重要的數學關係,您都清楚嗎?這些DSP名詞術語如下所示。

 

時域

幀長度/frame size ------------------------ T

時間間隔/時間解析度 ---------------- Δt

資料塊大小 --------------------------------- N

 

頻域

取樣率 ---------------------------------------- fs

最大頻率/頻寬 -------------------------- fmax

頻率解析度 ------------------------------- Δf

譜線數-------------------------------------- N/2

 

1.幀長度/frame sizeT

進行一次FFT分析所擷取的時域訊號長度,稱為1frame size,單位為s,也稱1個時域資料塊。由於實際採集的時域訊號時間很長,而一次FFT分析只能分析有限長度的時域訊號,因此,需要將取樣時間很長的時域訊號截斷成一個一個的frame size。這個過程叫做訊號截斷

。而訊號截斷又分為週期截斷和非週期截斷(後續將有文章對此進一步詳細描述)。

 

假設有一段10s的時域訊號,取1幀的長度T=1s,無重疊,則該訊號將被截斷為10幀,如下圖所示。按此規律進行FFT計算,將得到10個瞬時頻譜,如果將這些瞬時頻譜進行平均,那麼平均次數為10次,最終的FFT分析結果為這10個瞬時頻譜的平均結果。



以上是沒有考慮訊號重疊的,有時會用百分比來表示重疊,若重疊50%,表示這一幀的訊號將與下一幀的訊號有50%是共用的。也就是第一幀的後50%作為第二幀的前50%。有時也用時間增量或轉速增量來表示,在這以時間增量為例進行說明。我們每擷取的一幀時間長度是固定的,但是隔多長時間擷取一幀呢?這個隔多長時間擷取一幀,就是所謂的步長

增量(increment),如下圖所示。



當增量小於frame size時,相鄰兩幀資料之間有重疊,重疊率計算公式如下

重疊率 = (frame size – increment)/frame size *100%

 

當增量等於frame size時,相鄰兩幀資料之間無重疊,但兩幀資料剛好無縫連線,如第一個圖所示。

 

當增量大於frame size時,相鄰兩幀資料之間無重疊,但兩幀資料之間有間隙,也就是有部分時域資料是不參與FFT計算的。

 

2. 時間間隔/時間解析度:Δt

相鄰兩個時域資料點的取樣時間差,稱為時間間隔時間解析度,等於取樣頻率的倒數,單位為s。時間解析度越小,取樣率越高,取樣越密集,訊號越接近真實訊號,時間解析度如下圖所示。假設取樣頻率為1000Hz,則時間解析度為1ms,表示採集兩個資料點的時間間隔為1ms,同時表明1s採集1000個數據點。



3. 資料塊大小N

一幀資料所對應的資料點數(樣本點),稱為時域資料塊大小(time block size),如上圖中黑色實心點,即表示1個數據點。因此,一幀資料除用時間長度來描述之外,也可以用資料點數來描述。它們之間的關係如下:

T=NΔt

 

因此,一幀資料包含多少個數據點,是可以計算出來的。有的軟體不是通過設定頻率解析度的大小來決定一幀資料的長度(等於頻率解析度的倒數),而是通過設定資料塊大小N來決定一幀資料的長度,像DASP就是這樣的設定模式。

 

4. 取樣率fs

由於計算機不能處理模擬訊號,因此,必須通過取樣將模擬訊號轉換成數字訊號。用來表徵取樣快慢的引數稱為取樣(頻)率,單位為Hz。本質上,我更願意叫取樣頻率為取樣率,因為它表徵的是取樣的速率,取樣率高,則取樣快。取樣率是表示每秒鐘採集多少個樣本點(或資料點),也可用sample/s或樣本點數/秒錶示。

 

取樣頻率越高,採兩點的時間間隔越短,採集到的數字訊號越接近真實訊號。還記得我們之前說過,取樣頻率多高時才不至於使訊號幅值明顯失真嗎?如果不知道,請翻閱8月2日的文章《取樣頻率到底多高才不會使訊號幅值明顯失真?》。

 

5. 最大頻率/頻寬fmax

取樣頻率的一半,稱為頻寬,或最大分析頻率,或奈奎斯特頻率。它與取樣率的關係如下

fmax= fs/2

也就是說,最後分析出來的所有頻率都位於頻寬以內,哪怕是存在頻率混疊,呈現出來的頻率也在這個區間。因此,為了防止高於頻寬以上的頻率成分混疊到頻寬以內,需要在模數轉換前進行抗混疊濾波。

 

6. 頻率解析度:Δf

我們已經明白採集到的時域訊號是離散的,兩個時域資料點的時間差稱為時間解析度。同理,頻譜也是離散的,相鄰兩條譜線的頻率差或頻率間隔稱為頻率解析度。FFT計算得到的結果只位於頻率解析度的整數倍處,也就是譜線處,其他地方無結果,如下圖所示。假設圖中的虛線為譜線,各條譜線對應的頻率為頻率解析度的整數倍。計算得到的頻譜結果只位於這樣的譜線處。



頻率結果只能位於各條譜線上,譜線與譜線之間是沒有結果的,頻譜的這種離散效應,稱為柵欄效應。就好像人們通過籬笆看外面的世界一樣,只能通過相鄰兩塊籬笆之間的縫隙看到外面的世界,而籬笆卻擋住了人們的視線。那麼,相鄰兩塊籬笆之間的縫隙比擬為頻譜圖中的譜線,也只有譜線上才有資料,譜線之間的區域是沒有結果的,如下圖所示,只有譜線上才有紅色的頻率結果,最後的頻譜曲線是根據這些譜線上的點連成的實線。



頻率解析度越大,相鄰譜線間隔越遠,因此,求得的頻率誤差越大。FFT分析時,頻率誤差最大不會大於半個頻率解析度。因為頻率也是按四捨五入的原則歸到最近的譜線上。頻率解析度的倒數為做一次FFT所截斷的時域訊號的長度T,也就是一幀資料長度。當頻率解析度越小時,必然一幀資料的長度很大。因此,在做FFT計算時,不能設定過小的頻率解析度,也不能設定過大的頻率解析度,頻率解析度過大可能導致頻率誤差加大。

 

另一方面,當對旋轉機械進行瀑布圖分析時,頻率解析度的大小跟轉速改變速率有關係。下圖分別為0.5Hz和5Hz的頻率解析度的瀑布圖結果。0.5Hz對應的時域資料塊長度為2s,5Hz對應的時域資料塊長度為0.2s,從圖中可以看出,5Hz的頻率解析度下各階次更明顯,這是因為相應的時域資料塊更短,在這個更短的時間內,轉速變化沒有0.5Hz對應的時域資料塊的轉速變化大,因此,頻率更清楚。時域資料塊越短,越可以認為在該時間段內訊號是穩態訊號。



因此,當作瀑布圖分析時,需要根據轉速的變化速率來選擇合適的頻率解析度。更優的頻率解析度(頻率間隔越小),頻譜拖尾更嚴重,特別是在轉速高的情況下。訊號出現“拖尾”現象是因為訊號的頻率在採集時域資料塊的過程中變化明顯。故對於旋轉機械的瀑布圖分析,您應著重注意頻率解析度對分析結果的影響。

 

7. 譜線數N/2

頻譜圖中譜線的總條數,稱為譜線數。也可以理解為頻寬按頻率解析度進行等分,等分的份數即為譜線數。N個時域樣本點的FFT得到N/2條譜線,也就是說兩個時域資料點能得到一條譜線。

 

譜線數與頻寬、頻率解析度的關係如下

N/2= fmax/Δf

 

由於這三者是相互關聯的,因此,當進行資料採集時,只需要設定其中兩個引數就可以了,第三個引數,自動變化為相對應的值。像在LMS.Test.Lab軟體中,這三個引數的設定介面如下圖所示。在這,建議大家設定頻寬和頻率解析度這兩個引數。因為設定了頻寬後,取樣頻率也就確定了。頻率解析度確定後,譜線數也隨之確定了。另外,設定頻率解析度更直觀。



它們之間的關係

時間解析度與取樣頻率的關係:

Δt = 1/fs

 

幀長度與資料塊大小、時間解析度、取樣頻率和頻率解析度的關係:

T=NΔt = N/fs = 1/Δf

 

頻寬與取樣頻率、頻率解析度、譜線數和幀長度的關係

fmax = fs/2 =Δf*N/2 = N/2*1/T

 

頻率解析度與幀長度、取樣頻率、資料塊大小、頻寬和譜線數的關係

Δf = 1/ T = fs /N = fmax /( N/2)

 

用圖形表示如下:



通過上面的關係式,我們明白了頻率解析度與一幀資料長度的關係。減少一幀資料長度T,相當於增大頻率解析度Δf,意味著差的頻率解析度。要想獲得更優的頻率解析度Δf,相當於擷取更長的時域資料T,如下圖所示,增加一幀資料長度T,分辨解析度將減小,譜線更密,計算得到的頻率更精確。