?? ch3example14prg1.m
字號:
% ch3example14prg1.m
fs=200; % 采樣率
Delta_f = 1; % 頻率分辨率
T = 1/fs; % 時間分辨率
L=1/ Delta_f; % 時域截取長度
N= floor(fs/Delta_f)+1; % 計算截斷信號的采樣點數
t=0:T:L; % 截取時間段和采樣時間點
freq=0: Delta_f :fs; % 分析的頻率范圍和頻率分辨率
f_t =(sin(2*pi*50*t)+0.7*sin(2*pi*75*t))';
% 在截取范圍內的分析的信號時域波形
f_t_rectwin= rectwin(N).*f_t./sqrt(sum(abs(rectwin(N).^2))./N);
% 矩形窗(功率歸一化)
f_t_hamming= hamming(N) .*f_t./sqrt(sum(abs(hamming(N).^2))./N);
% 海明窗(功率歸一化)
f_t_hann = hann(N) .*f_t./sqrt(sum(abs(hann(N).^2))./N);
% 漢寧窗(功率歸一化)
F_w_rectwin =T.* fft(f_t_rectwin, N);
% 進行N點FFT,并乘以采樣時間間隔T得到頻譜
F_w_hamming =T.* fft(f_t_hamming, N); % 加海明窗的頻譜
F_w_hann =T.* fft(f_t_hann, N); % 加漢寧窗的頻譜figure(1);
subplot(2,2,1);plot(t,f_t);title('Original Signal');
subplot(2,2,2);plot(t, f_t_rectwin);title('Rectwin Windowing');
subplot(2,2,3);plot(t, f_t_hamming);title('hamming Windowing');
subplot(2,2,4);plot(t, f_t_hann);title('hanning Windowing');
figure(2);
subplot(3,1,1);plot(freq, 10*log10(abs(F_w_rectwin)));
title('Rectwin Windowing Spectrum');ylabel('幅度 dB');
axis([0,200,-50,0]);grid on;
subplot(3,1,2);plot(freq, 10*log10(abs(F_w_hamming)));
title('hamming Windowing Spectrum');ylabel('幅度 dB');
axis([0,200,-50,0]);grid on;
subplot(3,1,3);plot(freq, 10*log10(abs(F_w_hann)));
title('hanning Windowing Spectrum');ylabel('幅度 dB');
axis([0,200,-50,0]);grid on;
p_original_signal=var(f_t) % 計算原始信號的平均功率
p_hannwindowed=sum((abs(F_w_hann/T)).^2)/(N^2) % 計算加窗后的信號功率
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -