新聞中心

                        EEPW首頁 > 汽車電子 > 設計應用 > FFT相關原理及使用注意事項

                        FFT相關原理及使用注意事項

                        作者:時間:2019-04-28來源:電子產品世界收藏

                        在信號分析與處理中,是重要的工具。(Fast Fourier Transform,快速傅立葉變換)可以將時域信號轉換至頻域,以獲得信號的頻率結構、幅度、相位等信息。該算法在理工科課程中都有介紹,眾多的儀器或軟件亦集成此功能。實用且高效,相關原理與使用注意事項也值得好好學習。

                        本文引用地址:http://www.xinfa15808.cn/article/201904/399975.htm

                        一、何為

                        對于模擬信號的,首先得使用ADC(模擬數字轉換器)進行采樣,轉換為有限序列

                        ,其非零值長度為N,經DFT(離散傅立葉變換)即可轉化為頻域。DFT變換式為:

                        1.png

                        在上式中,N點序列的DFT需要進行N2次復數乘法和

                        次復數加法,運算量大。FFT是DFT的快速算法,利用DFT運算中的對稱性與周期性,將長序列DFT分解為短序列DFT之和。最終運算量明顯減少,使得FFT應用更加廣泛。

                        FFT基于一個基本理論:任何連續的波形,都可以分解為不同頻率的正弦波形的疊加。FFT將采樣得到的原始信號,轉化此信號所包含的正弦波信號的頻率、幅度、相位,為信號分析提供一個創新視覺。

                        例如在日常生活中有使用到的AM(Amplitude Modulation,幅度調制)廣播,其原理是將人的聲音(頻率約20Hz至20kHz,稱為調制波)調制到500kHz~1500kHz正弦波上(稱為載波)中 ,載波的幅度隨調制波的幅度變化。聲音經這樣調制后,可以傳播得更遠。在AM的時域波形(波形電壓隨時間的變化曲線),載波與調制波特征不易體現,而在FFT后的幅頻曲線中則一目了然。如下圖為1000kHz載波、10kHz調制波的AM調制信號,時域信號經FFT后其頻率能量出現在990kHz、1.01MHz頻率處,符合理論計算。

                        1556417593270534.jpg

                        圖 1 調制波10kHz、載波1000kHz的AM時域與頻域曲線

                        二、FFT相關知識

                        現實生活中的模擬信號,大多都是連續復雜的,其頻譜分量十分豐富。正如在數學中常量π,其真實值是個無理數。當用3.14來替代π時,計算值與真實值就會有偏差。在使用FFT這個工具時,受限于采樣時的頻率Fs、采樣點長度N、ADC的分辨率nbit等因素的制約,所得到的信息會有所缺失與混淆。

                        1.奈奎斯特區與波形混疊

                        FFT分析結果中,存在一個那奈奎斯特區的概念,其寬度為采樣率的一半Fs/2,信號頻譜被分成一個個相連的奈奎斯特區。日常信號分析中,大多關心的是1st奈奎斯特區的信號,即DC到Fs/2的頻段。FFT所得到的信號頻率信息,也是在1st奈奎斯特區內。其他高奈奎斯特區頻段的信號,會以不同的方式混疊到1st奈奎斯特區:

                        偶數奈奎斯特區會鏡像后混疊到1st奈奎斯特區;

                        奇數奈奎斯特區會頻移后混疊到1st奈奎斯特區。

                        如下圖所示,假如原有模擬信號頻譜段較寬,信號頻段的最大頻率大于采樣率Fs。在采樣率Fs下,信號頻譜的A、B、C三部分區域,分別位于1st、2st、3st奈奎斯特區。那經FFT后:

                        A部分信號本來就在1st奈奎斯特區,保持不變;

                        B部分頻譜會以Fs/2為鏡像后混疊到1st奈奎斯特區;

                        C部分頻譜頻偏Fs后混疊到1st奈奎斯特區。

                        這樣在FFT的分析結果中,1st奈奎斯特區就會重疊了A、B、C三部分區域的信號。其他奈奎斯特區頻率信號干擾到需分析的信號,就會造成常說的波形混疊問題。

                        就單個頻率信號而言,若原始信號的頻率為|±KFs ±Fin|(K為自然數),則經過FFT分析后,信號會落入在1st奈奎斯特區的Fin頻率處。

                        1556417629930035.png

                        圖 2 奈奎斯特區投影與波形混疊

                        這在時域上理解不難:在常用設備示波器的采樣率設為100MSa/s,這時輸入10MHz、90MHz、110MHz頻率的信號,采樣得到的波形是一樣的,都為10MHz。此時奈奎斯特區寬度為50MHz,信號90MHz位于2st奈奎斯特區,經Fs/s鏡像后,為10MHz;信號110MHz位于3st奈奎斯特區,經頻偏Fs后,亦為10MHz。在FFT后的數據中,這三個頻率信號的頻點都落在1st奈奎斯特區的10MHz處。

                        1556417651805813.png

                        圖 3 波形混疊時的時域芯片

                        為了解決信號混疊問題,可以采取以下措施:

                        提高模數轉換器ADC的采樣率Fs

                        這相當把1st奈奎斯特區拉寬。當滿足Fs/2大于信號頻段的最大頻率Fin_max時,自然不會現混疊。這是采樣定理的簡單實踐。

                        在模數轉換器前串入抗混疊濾波器

                        抗混疊濾波器最常見的是低通濾波器,此濾波器可以將高于Fs/2的高階奈奎斯特區頻段信號衰減掉,只保留待測量1st奈奎斯特區頻段的信號。

                        2.FFT數據的物理意義

                        長度為N的有限序列

                        ,經FFT后得會到N個復數,完成了時域到頻域的涅磐。原始信號包含的各種正弦信號,會轉化成對應位置的復數:

                        第一個復數,代表信號的直流分量。此復數的模值,為直流分量的N倍。

                        第二至第N/2個復數,代表著均勻頻率間隔信號的特征。此復數的模,為此頻率信號幅度的N/2倍;此復數的角度,為此頻率信號的相位。一個奈奎斯特區包含N/2個頻率點,頻率點的間隔稱為頻率分辨率:

                        微信截圖_20190428100805.png

                        對上式稍作變換:頻率分辨率的倒數,為可分析信號的周期:

                        微信截圖_20190428100811.png

                        NTS即采樣時間,可見FFT的頻率分辨率,與其他參數無關,只與采樣時間長度有關。

                        第N/2+1至第N個復數,從上文的奈奎斯特區可知,是1st奈奎斯特區的鏡像,可以忽略。

                        1.頻譜泄漏與窗函數

                        在利用FFT對ADC的動態性能評估中,為了減少不相關因素對動態性能的影響,測試中一般要求給ADC低噪電源、低噪時鐘,待測信號幅度盡量接近且略低于ADC的輸入量程,而待測信號的頻率Fin也有要求:

                        微信截圖_20190428100848.png

                        為啥頻率要這樣要求?將上式中的頻率轉換為周期就很好理解:

                        微信截圖_20190428100853.png

                        TS*N即為采樣時間,采樣時間剛好包含了n個整周期的待測信號。這樣選取輸入信號頻率的原因,是FFT分析中默認采集到的數據,是原始連續波形中的一段周期波形。既然波形是連續的,那波形肯定首尾相連的、開始點電壓值等于終點處電壓值的。

                        若采樣到的數據不是連續的,則相當數據在首尾處有一個電壓突變,電壓突變在頻域上就代表著很高的頻率分量。這些高頻的頻率分量混疊到1st奈奎斯特區時,就會對原有信號的頻譜造成干擾,這也叫頻譜泄漏。

                        在實際的信號分析中,待測信號的頻率是很難事先設定的,這就容易會造成頻譜泄漏。為了減輕這個影響,FFT加入了窗函數這個概念。窗函數,其實是一個加權系數,將不同位置的采樣點,分別乘以不同的系數。經過加權相乘后,采樣點就變成首尾相連的連續波形了。不同的窗函數,其加權曲線不一樣,造成的影響就有所差異。舉例hann窗的系數定義如下:

                        微信截圖_20190428100951.png

                        其N=64系數曲線與頻譜如下:

                        1556417872252578.png

                        圖 4 N=64 hann窗系數曲線與頻譜曲線

                        1556417889657917.png

                        圖 5 疊加窗前后的信號波形

                        1.頻譜圖指標定義

                        將FFT得到的各個頻率點幅度,繪制成隨頻率變化的曲線,可以得到信號的頻譜圖。在原廠ADC的器件手冊或性能評估方案中,會有與性能相關指標的定義。在眾多指標中,以下幾個尤為重要:

                        信噪比SNR

                        信號均方根幅值與除前六個諧波與直流分量之外的所有頻率分量均方根和之比。在只考慮ADC的量化誤差時,SNR只與ADC的位數相關。

                        信納比SINAD

                        信號均方根振幅與出直流分量之外的所有頻譜分量均方根和之比。SINAD與SNR之間的差異只有前六個諧波分量所含的能量。

                        總諧波失真THD

                        信號均方根與前六個諧波之和的均方根值之比。諧波的產生是因為信號經過了非線性環節,導致信號產生畸變。

                        無雜散動態范圍SFDR

                        信號均方根與最大雜散頻譜分量均方根值之比。SFDR可以表征信號分析的動態范圍。

                        有效位數ENOB

                        ENOB反映了信號與正弦波的擬合程度。在FFT中可以使用公式計算:ENOB =(SINAD-1.76)/6.02。這公式是與基于ADC只有量化誤差時的計算模型,具體的推論可以參考ADI的應用文檔MT-001《Taking the Mystery out of the Infamous Formula,"SNR = 6.02N + 1.76dB," and Why You Should Care》。

                        1556417908426264.png

                        圖 6  ZDS4054 Plus FFT功能分析界面

                        ZDS4000 FFT分析功能可以自動計算總諧波失真THD、信噪比SNR,顯示前10次高功率信號頻率。

                        FFT是簡便而高效的分析工具,在眾多的軟件中都已很好的集成。在網絡上簡單搜索一下例程,在Matlab軟件中簡單敲入fft(),即可做信號分析。而ZLG立功科技-致遠電子的高性能數據挖掘性示波器,FFT分析的樣本數可達4Mpts,這使得示波器可以在最高采樣率下,采樣更長時間的波形。這樣在FFT后,數據的奈奎斯特區就相當寬,而頻率分辨率又相當窄,非常適用信號分析與噪聲定位。



                        關鍵詞: 頻譜分析 FFT

                        評論


                        相關推薦

                        技術專區

                        關閉
                        电子产品世界