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