您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關(guān)怎么在Matlab中利用fft繪制信號頻譜圖,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
fs=500;%采樣率 f1=5;%信號頻率 f2=10;%信號頻率 T=1;%時寬1s n=round(T*fs);%采樣點個數(shù) t=linspace(0,T,n);%時域橫坐標(biāo) x = 3+cos(2*pi*f1*t) + 2.*cos(2*pi*f2*t);%形成三頻信號,注意第二個頻率信號幅度為2,直流幅度為3 figure(1); plot(t,x);%畫時域圖 xlabel("t/s") grid on X = fftshift(fft(x./(n))); %用fft得出離散傅里葉變換 f=linspace(-fs/2,fs/2-1,n);%頻域橫坐標(biāo),注意奈奎斯特采樣定理,最大原信號最大頻率不超過采樣頻率的一半 figure(2) plot(f,abs(X));%畫雙側(cè)頻譜幅度圖 xlabel("f/Hz") ylabel("幅度") grid on
顯然,該信號有三個頻率分量,直流(0頻),5Hz和10Hz,對應(yīng)的幅度分別為3、1、2,其時域波形圖如下:
轉(zhuǎn)換為頻域的關(guān)鍵函數(shù)是X = fftshift(fft(x./(n)));
一定注意需要除以總樣本數(shù)n,然后用fftshift將曲線挪一下位置。
做完這步操作后,得出的是雙邊頻譜,頻率范圍從-fs/2到fs/2,這是因為奈奎斯特采樣定理,給定采樣頻率為fs,那么原信號的最大頻率不超過fs/2。橫坐標(biāo)的點數(shù)和時域信號的采樣點數(shù)相同,這由離散傅里葉變換的性質(zhì)給出。
繪制頻譜幅度圖如下:
關(guān)于怎么在Matlab中利用fft繪制信號頻譜圖就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。