信號功率計算和測量


后續內容

基於FFT准確測量信號和噪聲功率

 

1 FFT 頻譜分析的頻率分辨率和幅度精度

1.1 FFT頻譜分析是周期信號譜分析的快速算法。如何統一分析結果的頻譜幅度與已知信號的每個頻率分量的幅度?

一般的,對實信號的FFT分析結果乘以因子2/N得到其實際頻率功率。

這里有兩個定義的問題,第一,分析是信號是實信號還是復信號,第二所求功率是其實際物理功率(無負頻率))還是數學上定義的功率(包括負頻率)。

首先擺出FFT的計算公式

tmp

計算的原理是原信號與不同頻率的信號e-j2pi/N*kn的信號進行相關,相關的結果做為該頻率2*pi/k分量的幅度,如兩個信號頻率完全相同,且初始相伴一致,認為完全相關,即該信號在該頻率有能量存在,這時相關的結果為N,所以要得到其真實是幅度值要在相關結果的基礎上再除以N。驗證程序和結果如下,可以驗證分析的正確性:

tmp1tmp2

而在實際應用中不存在復信號,我們實際使用和分析的信號一般如表示為Acos(2*pi*f*t),我們認為A為其幅度,其頻率為f;然而對於數學上的分析,其頻率在+f和-f都存在分量,每個分量的幅度為A/2,因為Acos(2*pi*f*t)=A/2*e-j2*pi*f*t+A/2*ej2*pi*f*t,這也是FFT計算的結果。這是一個雙邊功率譜,若要得到單邊功率譜的幅度,即我們假定的幅度A,需要乘以因子2.

1.2 FFT是對DTFT結果連續頻率的再次采樣,從而帶來了柵欄效應,所得的頻率是一個離散的頻率。FFT是截取信號的一段進行處理的,相當於原信號時域上乘以一個窗函數,所以頻率分析的結果為原信號的頻譜卷積上窗函數的頻率,由於有限長的窗函數頻率上是無限長的,如下圖所示,卷積的結果會造成原信號某個頻率的能量分布在其它頻率分量上,即頻譜的泄漏。

 

即當信號頻率f為fs/N*n<f<fs/N*(n+1)時,如果不存在能量泄漏只存在柵欄效應,FFT的結果上就無tmp法觀察到該頻率分量。而是由於頻率泄漏的緣故,我們可以f臨近的單元上看到功率存在,借此估算原信號的頻譜,所以此時的計算就會因為窗函數的不同和信號頻率的不同產生較在的幅度測量差異。

如下圖兩個信號只有頻率不同,都在同一個相信的頻率間隔內,fs/N*n<f<fs/N*(n+1),都采用矩形窗,其它條件都相同的情況下,FFT的計算結果存在較大差異

imageimage

imageimage

這是因為矩形窗的主瓣較窄,由於頻率不同卷積的結果漏泄在相鄰單元上的功率就會差異較大。所以此時若采用主瓣較寬且平坦的窗函數如改善幅度精度。如下圖采用了一個平頂窗后,仍分析上面例子中的信號頻譜,得到了幾乎相同的結果,大大提高了幅度精度。(采用不同的窗幅度要乘以一個不同的幅度修正因子)。

imageimage

當然,在提高幅度的精度的同時,降低了頻率分辨率,從上圖觀察到單一頻率的能量泄漏到相鄰的多個頻率上,且幅度較大,頻率分辨率比前一種方法惡化了。

 

1.3 如何同時提高頻率分辨率和幅度精度

窗函數的主瓣越寬越平坦FFT后幅度的精度越高,相反其頻率分辨率趙差,主瓣越窄其頻率分辨率越高,但幅度有精度越差,這其實幅度的精度和頻率的分辨率對於同一個窗函數來說是一對矛盾。實現方法如下:

① 設計兩個窗,分別滿足上面的兩個條件,然后分別進行FFT計算。信號加兩各種窗,作N點FFT變換,得頻譜結果F1和F2,其中F1的幅度精度高,F2的頻率分辨高。處理后的頻譜初始化為F,對於所有的F(i)執行操作2,0<i<N-1;

② 判斷F2(i)是否為其以為中心的5條譜線(會降低分辨率,值可作修改)的最大值, 是則F(i)=F1(i),否則F(i)=0或F(i)=F1(i)(視應用而定)。


免責聲明!

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



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