- ?IIR數字濾波器設計(2學時)
- 要求:
- 產生一復合信號序列,該序列包含幅度相同的28Hz、50Hz、100Hz、150Hz的單音(單頻)信號;其中,50Hz及其諧波為工頻干擾(注:采樣率要滿足要求)。
- 試設計一橢圓低通濾波器,將干擾信號濾除。
- 目的:
- 利用學習到的數字信號處理知識解決實際問題,學會將實際問題的數據轉化為相應模型指標;
- 熟悉IIR數字濾波器的設計方法。
- 要求:
實驗報告:
一、實驗內容
i.產生一復合信號序列,該序列包含幅度相同的28Hz、50Hz、100Hz、150Hz的單音(單頻)信號;其中,50Hz及其諧波為工頻干擾(注:采樣率要滿足要求)。
ii.試設計一橢圓低通濾波器,將干擾信號濾除。
二、實驗目的
i.利用學習到的數字信號處理知識解決實際問題,學會將實際問題的數據轉化為相應模型指標;
ii.熟悉IIR數字濾波器的設計方法。
三、涉及實驗的相關情況介紹(包含使用軟件或實驗設備等情況)
Windows系統 Matlab 2022b
四、實驗記錄
1.原理基礎
本實驗旨在通過數字信號處理的方法,設計一個橢圓低通濾波器來濾除復合信號中的特定頻率干擾(此處為50Hz及其諧波)。復合信號由四個不同頻率的單音信號組成:28Hz、50Hz、100Hz和150Hz,其中50Hz及其諧波(如100Hz、150Hz等)被視為工頻干擾。
橢圓低通濾波器是一種數字濾波器,其設計目標是在通帶和阻帶內都具有最小的波紋(即平坦的幅度響應),并且具有陡峭的過渡帶。這使得橢圓濾波器在給定濾波器階數的情況下,能夠提供最窄的過渡帶。
采樣率的選擇需要滿足采樣定理,即采樣率應大于信號中最高頻率的兩倍,以確保信號在采樣過程中不會發生混疊。
2 實驗流程
- 信號生成:使用編程工具(如MATLAB)生成包含28Hz、50Hz、100Hz和150Hz的復合信號,所有單音信號的幅度相同。
- 設計橢圓低通濾波器:使用MATLAB的濾波器設計工具(如ellipord和ellip函數)設計一個橢圓低通濾波器,濾除50Hz及其諧波。濾波器的設計參數(如通帶截止頻率、阻帶截止頻率、通帶最大衰減和阻帶最小衰減)需要根據實際需求進行設定。
- 濾波器應用:將設計的橢圓低通濾波器應用于復合信號,得到濾波后的信號。
- 結果分析:對比原始信號和濾波后信號的時域和頻域特性,評估濾波器的性能。
3源程序代碼
%IIR 低通濾波器:1.設置參數 +生成復合信號+繪制時域和頻域 2.設計低通濾波器 3.應用濾波器并繪制時域頻域
%編輯人:賈雯爽
%目的:掌握模擬低通濾波器設計流程及影響參數
%最后更新時間:2024/06/05 clear;
clc;
close all%1.1 參數設置
Fs = 1000; % 采樣率
t = 0:1/Fs:1-1/Fs; % 時間向量
f1 = 28; % 頻率1
f2 = 50; % 頻率2(及其諧波將被濾除)
f3 = 100; % 頻率3(50Hz的諧波)
f4 = 150; % 頻率4(50Hz的諧波)
A = 1; % 所有信號的幅度 % 1.2生成復合信號
x = A * (sin(2*pi*f1*t) + sin(2*pi*f2*t) + sin(2*pi*f3*t) + sin(2*pi*f4*t)); % 1.3繪制原始復合信號
figure;
subplot(2,1,1);
plot(t, x);
title('原始復合信號');
xlabel('時間 (s)');
ylabel('幅度');
subplot(2,1,2);
y = fft(x);
plot(t, y);
title('原始復合信號');
xlabel('頻率 (Hz)');
ylabel('幅度');
%1.4繪制復合信號頻域% 2設計橢圓低通濾波器
% 2,1選擇截止頻率和濾波器階數
fc = 45; % 截止頻率,小于50Hz
N = 8; % 濾波器階數
Rp = 0.5; % 通帶波紋(單位dB)
Rs = 30; % 阻帶衰減(單位dB) % 2.2設計橢圓濾波器
[b, a] = ellip(N, Rp, Rs, fc/(Fs/2)); % 2.3繪制濾波器頻率響應
[H, w] = freqz(b, a, 1024, Fs);
figure;
plot(w/pi*Fs, abs(H));
title('橢圓低通濾波器頻率響應');
xlabel('頻率 (Hz)');
ylabel('|H(f)|');
grid on; % 3應用濾波器到復合信號
y = filter(b, a, x); % 3.1繪制濾波后的信號
figure;
subplot(2,1,1);
plot(t, x);
title('原始復合信號');
xlabel('時間 (s)');
ylabel('幅度'); subplot(2,1,2);
plot(t, y);
title('濾波后的信號');
xlabel('時間 (s)');
ylabel('幅度');
4 實驗結果
5 實驗結果分析
通過對濾波后信號的頻譜圖進行分析,可以評估橢圓低通濾波器的性能。如果濾波后信號的頻譜中50Hz及其諧波的幅度顯著減小,且28Hz信號的幅度變化不大,則說明濾波器設計成功,達到了預期的效果。
五、實驗總結
通過本次實驗,我成功地將所學的數字信號處理知識應用于實際問題中,即設計一個橢圓低通濾波器來濾除復合信號中的特定頻率干擾。在實驗過程中,我首先根據實驗要求生成了一個包含28Hz、50Hz、100Hz和150Hz單音信號的復合信號。接著,我利用MATLAB的濾
在設計濾波器時,我根據濾波器的性能指標(如通帶截止頻率、阻帶截止頻率、通帶最大衰減和阻帶最小衰減)進行了參數設置。通過ellipord函數確定了濾波器的階數和歸一化的截止頻率,然后使用ellip函數計算了濾波器的系數。
將設計好的橢圓低通濾波器應用于復合信號后,我得到了濾波后的信號。通過對比原始信號和濾波后信號的時域和頻域特性,我觀察到50Hz及其諧波在濾波后信號的頻譜中被顯著抑制,而28Hz信號則得以保留。這證明了橢圓低通濾波器在濾除特定頻率干擾方面的有效性。
在實驗過程中,我也遇到了一些挑戰。例如,在選擇濾波器參數時需要權衡通帶和阻帶的性能,以及濾波器的階數對過渡帶陡峭程度的影響。通過不斷嘗試和調整參數,我最終找到了一個滿足實驗要求的濾波器設計方案。
通過本次實驗,我不僅加深了對數字信號處理知識的理解,還學會了將實際問題的數據轉化為相應模型指標的方法。同時,我也熟悉了IIR數字濾波器的設計流程和方法,為今后的學習和研究打下了堅實的基礎。
原創文章內容,學術不精恐有錯漏之處,懇請各位批評指正。如有Matlab代碼源文件或其他溝通需要,可通過郵箱(2642610289@qq.com)聯系我,特情注意,學業繁忙難以及時回復,敬請理解。