187--FFT系列:傅立業頻譜和功率頻譜有甚麼不同?(
ฝัง
- เผยแพร่เมื่อ 24 พ.ย. 2024
- 《振動噪音科普專欄》FFT系列:傅立業頻譜和功率頻譜有甚麼不同?
文章連結:ppt.cc/f4xp2x
粉絲團文章連結:reurl.cc/2gVXEv
訂閱電子報:goo.gl/HJkPMe
這個單元的主題,有兩個關鍵詞(keywords):(1)「傅立業頻譜」(Fourier spectrum),(2)「功率頻譜」(power spectrum)。
在先前單元#75:【傅立葉頻譜與自身功率頻譜有甚麼不同?】,已經有初步的介紹,本單元再以另一個角度做說明,並以實際的信號案例,說明「傅立業頻譜」及「功率頻譜」兩者的差異。
首先,由圖1的上方圖示,呈現的是「信號處理流程圖」(signal processing block diagram),說明如下:
1. 𝒙(𝒕):「時間波形」信號(time waveform),假設其單位為U,以一個「餘弦波」(cosine wave)為例,𝒙(𝒕)=𝑿𝐜𝐨𝐬(𝟐𝝅𝒇0 𝒕),參閱圖1的右側圖示「時間波形」,可以觀察到對應的 𝑿 是「振幅值」,𝒇0是「頻率」,以及此頻率對應的「週期」T 0 = 1/ 𝒇0。
2. 𝑿(𝒇):「傅立業頻譜」(Fourier spectrum),會是「複數」(complex number),其單位也是U,數學上的理論分析,是透過「傅立業轉換」(Fourier transform),可以寫成:𝑿(𝒇) = F [𝒙(𝒕)],也就是將時間波形信號𝒙(𝒕),轉換到頻率域的「傅立業頻譜」𝑿(𝒇)。實務上,是採用fast Fourier transform (FFT),「快速傅立業轉換」是進行「FFT頻譜分析」(spectral analysis)的數學方法。讀者可參閱#27:【甚麼是頻譜分析?】。參閱圖1的右側圖示,可以觀察 𝑿(𝒇)有實數部及虛數部,「餘弦波」的「傅立業頻譜」是頻率 𝒇 =𝒇0時,𝑿(𝒇) 實數部為其「振幅值」𝑿。
3. 𝐺𝑥𝑥 (𝑓):「自身功率頻譜」(auto power spectral density, auto PSD, auto spectrum),也可稱為「功率頻譜」(power spectrum),其計算方式:𝐺𝑥𝑥 (𝑓)=𝑋∗ (𝑓)X (𝑓)/Δ𝑓,取「傅立業頻譜」𝑿(𝒇) 的共軛複數(complex conjugate)相乘,再除以「頻率解析度」(frequency resolution) Δ𝑓。𝐺𝑥𝑥 (𝑓)的單位,有4種表示方式:U^2/Hz,U,Urms,Urms^2/Hz。𝐺𝑥𝑥 (𝑓) 是純實數正值(pure real positive number),可以取「平均」(averaging)運算,此點再另闢單元討論。參閱圖1的右側圖示,可以觀察「自身功率頻譜」𝐺𝑥𝑥 (𝑓),在頻率 𝒇 =𝒇0時,其「振幅值」𝑿,這是以U的單位方式表示。
4. X rms:「平方平均根值」(root mean square (rms) value)。可以透過兩種方式取得:(1)「時間波形」,對 𝒙(𝒕)信號取平方、再取平均、再開根號,可得到X rms。(2)「自身功率頻譜」,對𝐺𝑥𝑥 (𝑓)取頻率域積分、再根號也可得到X rms。如果信號是單一頻率的「餘弦波」或「正弦波」,都是「簡諧波」,則X rms = 0.707X。X rms的單位當然還是U。
在圖1,介紹了一個「時間波形」信號 𝒙(𝒕),
1. 進行「FFT頻譜分析」,可以得到「傅立業頻譜」𝑿(𝒇)。
2. 再進行「PSD」運算處理,可以得到「自身功率頻譜」𝐺𝑥𝑥 (𝑓)。
3. 再進行「rms」運算處理,可以得到「平方平均根值」X rms。
接下來,參閱圖2,將介紹實際「時間波形」信號的「FFT頻譜分析」、「PSD」及「rms」運算處理。首先,參閱圖2的上方三個圖示,分別說明如下:
1. 𝒇1 = 0 Hz,𝑿1 = 5,DC信號:所謂 ”DC”,英文是 ”direct current”,「DC信號」意義上是常數(constant value),令 𝒙1(𝒕)=𝑿1𝐜𝐨𝐬(𝟐𝝅𝒇1 𝒕),𝑿1 = 5,𝒇1 = 0 Hz,就可以取得定值為5的「DC信號」。如果,「時間波形」𝒙(𝒕) 是常數,則其「傅立業頻譜」𝑿(𝒇),會在頻率 𝒇 = 0 Hz時,其「振幅值」為 𝑿1 = 5。此「DC信號」的X rms 由「時間波形」以及由「自身功率頻譜」所推算的X rms 都相同為 5。
2. 𝒇2 = 200 Hz,𝑿2 = 1,AC信號:所謂 ”AC”,英文是 ”alternating current”,「AC信號」泛指波動的信號,如一個「餘弦波」信號,令 𝒙2(𝒕)=𝑿2𝐜𝐨𝐬(𝟐𝝅𝒇2 𝒕),𝑿2 = 1,𝒇2 = 200 Hz。其「時間波形」𝒙(𝒕) 是波動的信號,而其「傅立業頻譜」𝑿(𝒇),會在頻率 𝒇 = 200 Hz時,其「振幅值」為𝑿2 = 1。此「餘弦波」的X rms由「時間波形」以及由「自身功率頻譜」所推算的X rms 都相同,X rms = 0.707X = (0.707)1 = 0.707。
3. 𝒇3 = 500 Hz,𝑿3 = 10,AC信號:一樣的「AC信號」,令 𝒙3(𝒕)=𝑿3𝐜𝐨𝐬(𝟐𝝅𝒇3 𝒕),𝑿3 = 10,𝒇3 = 500 Hz。在此信號特別的是,𝒇3 = 500 Hz是最高的有效頻率fnyq = Fmax = 500 Hz。其「時間波形」𝒙(𝒕) 是波動的信號,而其「傅立業頻譜」𝑿(𝒇),會在頻率 𝒇 = 500 Hz時,其「振幅值」為𝑿3 = 10。此「餘弦波」的X rms = 10。要注意的是,因為在時間域的取樣,只有擷取到+10、-10的數值,在「頻率」及「振幅值」的解析是正確,但是由時間域的數值,計算的X rms 也是符合實際取樣的數值結果,X rms = 10,而不是X rms = 0.707X = (0.707)10 = 7.07。
參閱圖2的左下方圖示,是以上三個信號的合成,特徵說明如下:
1. 𝒙(𝒕)「時間波形」(time waveform):「時間波形」的中間值為5,是來自 𝑿1 = 5,𝒇1 = 0 Hz,「DC信號」的效應。𝑿3 = 10,𝒇3 = 500 Hz,「AC信號」主導了主要的波形。𝑿2 = 1,𝒇2 = 200 Hz,「AC信號」使得「時間波形」有微幅的波動。實務上,從「時間波形」是很難辨識出實際信號的頻率及振幅特徵,所以需要借助「FFT頻譜分析」的解析。
2. 𝑿(𝒇)「傅立業頻譜」(Fourier spectrum):可觀察到在對應的「頻率」,都有正確的「振幅值」,包括:𝒇1 = 0 Hz,𝑿1 = 5。𝒇2 = 200 Hz,𝑿2 = 1。𝒇3 = 500 Hz,𝑿3 = 10。同時,要注意瞭解𝑿(𝒇) 是複數,可以分別以”amplitude”「振幅值」、”real”「實數」、”imaginary”「虛數」、或 ”Nyquist plot”「奈氏圖」呈現。「奈氏圖」再另闢單元介紹。
3. X rms「平方平均根值」(root mean square (rms) value):此合成信號的X rms,由「時間波形」以及由「自身功率頻譜」所推算的X rms 都相同,X rms = 11.203。符合「時間波形」的特徵,所以,可以確認兩者的運算處理方式都正確。
最後,參閱圖2的右方的四個圖示,是𝐺𝑥𝑥 (𝑓)「自身功率頻譜」(auto power spectral density, auto PSD, auto spectrum),以四種單位表示的圖示,分別說明如下:
1. 𝐺𝑥𝑥 (𝑓) (U):以單位U表示,沒有意外,和 𝑿(𝒇)「傅立業頻譜」的圖示,完全相同。因為,所表示的單位是相同的。
2. 𝐺𝑥𝑥 (𝑓) (U^2/Hz):以單位U^2/Hz表示,在𝒇1 = 0 Hz,𝑿 = 𝑿*𝑿/Δ𝑓 = 5*5/0.5 =50,其他兩個「AC信號」也是相同計算方式。
3. 𝐺𝑥𝑥 (𝑓) (Urms):以單位Urms表示,在𝒇1 = 0 Hz,𝑿 = (0.707)𝑿 = (0.707)*5 =3.536,其他兩個「AC信號」也是相同計算方式。
4. 𝐺𝑥𝑥 (𝑓) (Urms^2/Hz):以單位Urms^2/Hz表示,在𝒇1 = 0 Hz,𝑿 = 𝑿rms*𝑿rms/Δ𝑓 = 3.536*3.536/0.5 =25,其他兩個「AC信號」也是相同計算方式。
參閱圖2所呈現的重點,是以三個信號的合成,來說明「時間波形」𝒙(𝒕)、「傅立業頻譜」𝑿(𝒇)、「自身功率頻譜」𝐺𝑥𝑥 (𝑓)、以及「平方平均根值」X rms的現象與重要特性。特別舉例「DC信號」的特徵,以及兩個「AC信號」的特徵解析,其中,一個「AC信號」取任意的頻率,而另一個「AC信號」取其最大的有效頻率,以驗證「FFT頻譜分析」解析的正確性。
綜合本單元的討論,主要在區別「傅立業頻譜」𝑿(𝒇)以及「自身功率頻譜」𝐺𝑥𝑥 (𝑓)的差異。除此之外,如果,讀者有自行撰寫「FFT頻譜分析」程式,要檢驗程式的正確性,可以參考以「DC信號」、和「AC信號」分別確認𝑿(𝒇)、𝐺𝑥𝑥 (𝑓)、X rms三者之間的對應關係,並檢察分析程式的正確性。
以上個人看法,請多指教!
王栢村
2020.10.16