回覆列表
  • 1 # 使用者6437608732773

    參考

    %二.FFT應用舉例

    %例1:x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t)。取樣頻率fs=100Hz,分別繪製N=128、1024點幅頻圖。

    clf;

    fs=100;N=128; %取樣頻率和資料點數

    n=0:N-1;

    t=n/fs; %時間序列

    x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t); %訊號

    y=fft(x,N); %對訊號進行快速Fourier變換

    mag=abs(y); %求得Fourier變換後的振幅

    f=n*fs/N; %頻率序列

    subplot(2,2,1),plot(f,mag); %繪出隨頻率變化的振幅

    xlabel("頻率/Hz");

    ylabel("振幅");title("N=128");grid on;

    subplot(2,2,2),plot(f(1:N/2),mag(1:N/2)); %繪出Nyquist頻率之前隨頻率變化的振幅

    xlabel("頻率/Hz");

    ylabel("振幅");title("N=128");grid on;

    %對訊號取樣資料為1024點的處理

    fs=100;N=1024;n=0:N-1;t=n/fs;

    x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t); %訊號

    y=fft(x,N); %對訊號進行快速Fourier變換

    mag=abs(y); %求取Fourier變換的振幅

    f=n*fs/N;

    subplot(2,2,3),plot(f,mag); %繪出隨頻率變化的振幅

    xlabel("頻率/Hz");

    ylabel("振幅");title("N=1024");grid on;

    subplot(2,2,4)

    plot(f(1:N/2),mag(1:N/2)); %繪出Nyquist頻率之前隨頻率變化的振幅

    xlabel("頻率/Hz");

    ylabel("振幅");title("N=1024");grid on;

    %執行結果:

    %fs=100Hz,Nyquist頻率為fs/2=50Hz。整個頻譜圖是以Nyquist頻率為對稱軸的。並且可以明顯識別出訊號中含有兩種頻率成

    %分:15Hz和40Hz。由此可以知道FFT變換資料的對稱性。因此用FFT對訊號做譜分析,只需考察0~Nyquist頻率範圍內的福頻特性。若沒有給

    %出取樣頻率和取樣間隔,則分析通常對歸一化頻率0~1進行。另外,振幅的大小與所用取樣點數有關,採用128點和1024點的相同頻率的振幅是有不同的表

    %現值,但在同一幅圖中,40Hz與15Hz振動幅值之比均為4:1,與真實振幅0.5:2是一致的。為了與真實振幅對應,需要將變換後結果乘以2除以N。

  • 中秋節和大豐收的關聯?
  • 初升高錄取50%的原因是什麼?