FFT的前世今生
這48個點補的方式是頭尾各補一半,但是有可能補的不是0,頭24個點與第一個采樣點值相同,尾24個點與最后一個采樣點值相同(所以稱之為Zero Fill是不完全準確的)。這里我們推薦Zero Fill的方法只在分析沖擊信號FFT頻譜的情況下使用。
補零法雖然能增加頻譜圖的視在分辨率,但是由于補的都是無效數(shù)據(jù),所以對于頻率分辨率真正的改善沒有幫助,但是補零有它的好處:1.補零后,其實是對FFT結(jié)果做了插值,克服“柵欄”效應,使譜外觀平滑化;我把“柵欄”效應形象理解為,就像站在柵欄旁邊透過柵欄看外面風景,肯定有被柵欄擋住比較多風景,此時就可能漏掉較大頻域分量,但是補零以后,相當于你站遠了,改變了柵欄密度,風景就看的越來越清楚了。2.由于對時域數(shù)據(jù)的截短必然造成頻譜泄露,因此在頻譜中可能出現(xiàn)難以辨認的譜峰,補零在一定程度上能消除這種現(xiàn)象。
除此之外,很多人都有這樣的誤區(qū):認為通過增加待分析的計算點數(shù)而不是增加采樣時間就可以使FFT之后的頻譜更加“精細”(頻率分辨率更高)。這樣的誤解一般來自于示波器的用戶,因為當示波器采樣點比較少時,F(xiàn)FT的計算出來的頻譜圖也會很少,頻譜看起來非常粗糙。這時工程師會非常有沖動把時域的采樣點增多(用示波器上的插值算法很容易實現(xiàn)),但是如果采集信號的時間長度是不變的,工程師會發(fā)現(xiàn)FFT計算之后的頻譜并沒有顯得更加“精細”,頻率分辨率并沒有任何改善。實際上使用插值或者增加采樣率的方式僅僅是展寬了FFT之后的頻譜帶寬。如下圖4所示,
圖4 插值方式并不能改變頻率分辨率
左上方使用了較少的時域采樣點C1,右上方使用了較高的采樣率C2,但是采樣時間是相同的。左下是對C1進行FFT之后的頻譜F1,右中是對C2進行FFT之后的頻譜F2,右下是對F2相同頻段進行了放大??梢钥吹紽2比F1的頻寬增加了,但是對F1頻段放大之后的頻譜和F1一樣,沒有任何頻率分辨率的改善。
由此我們可以得出結(jié)論,對C1進行插值后,額外的采樣點僅僅存在于較高頻段,會展寬頻譜的帶寬,但是插值方式對于增加我們感興趣頻段的頻譜分辨率沒有任何幫助。
那么如果我們只對對FFT之后的頻譜進行插值效果如何呢?如下圖5所示:
圖5 頻域插值方式是頻譜圖看起來更密
圖中展示了對頻域插值之后的效果,并沒有使頻譜看起來更“窄”(畢竟插值出來的點都是假點),但是我們注意到,頻域插值可以使頻譜的測量更加精確。圖中正弦波的頻率是955MHz,插值之后頻譜的Peak頻率讀數(shù)P2是955MHz,插值之前P1的讀數(shù)為952MHz。
總之,F(xiàn)FT是進行信號頻域分析的最廣泛使用的標準化方法,也是現(xiàn)代數(shù)字示波器中標配的數(shù)學運算函數(shù),我們更多了解FFT應用的細節(jié),能更加有效地利用好這個工具,從FFT中得到更多有價值的信息。
評論