資源簡介
用MATLAB設計IIR數字濾波器,用MATLAB設計IIR數字濾波器,用MATLAB設計IIR數字濾波器
set(gca, YTick Mode, manual, 'YTick', [-50, -15,1,0D) grid subplot2,2,4; zplane(bd,ad:axi(-1.,11,11,1,1:te零極點圖); 程序運行結果如下: 頻率特性如圖所示: 幅度響應 相位響應 幅度響應 零極點圖 頻率兀 圖 由頻率特性曲線可知,該設計結果在通帶的截止頻率滿足≤,在阻帶的截止頻 率滿足 且系統的極點全部在單位圓內,是一個穩定系統。這個巴特沃斯數字低 通濾波器的傳遞函數為: 直接型 、雙線性變換法的基本知識 雙線性變換法是將整個平面映射到平面,其映射關系為 或 雙線性變換法克服了脈沖響應不變法從平面到平面的多值映射的缺點,消除了頻 譜混疊現象。但其在變換過程中產生了非線性畸變,在設計數字濾波器的過程中需要 進行一定的修正。 用雙線性變換法設計數字濾波器的步驟如下: ①輸入給定的數字濾波器的設計指標 ⑨②根據公式Ω=(2T)tan(o/2)進行預修正,將數字濾波器設計指標轉換為模擬濾波器 設計指標; ③確定模擬濾波器的最小階數和截止頻率 ④計算模擬低通原型濾波器的系統傳遞函數; ⑤利用模擬域頻率變換法求解實際模擬濾波器的系統傳遞函數; ⑥用雙線性變換法將模擬濾波器轉換為數字濾波器 、用雙線性變換法設計數字低通濾波器 例設計一個巴特沃斯數字低通濾波器,要求: 濾波器采樣頻率 程序清單如下: Wp=0.25*pi; %濾波器的通帶截止頻率 WS=0.4°pi; %濾波器的阻帶截止頻率 Rp=1: As-15 %濾波器的通阻帶衰減指標 ripple=10(-Rp/20); %濾波器的通帶衰減對應的幅度值 At=10~(-As20); %濾波器的阻帶衰減對應的幅度值 %轉換為模擬濾波器的技術指標 Fs=100T=1/Fs; Omgp=(2/T)"tan(wp/2) %原型通帶頻率的預修正 Omgs=(2/T)*tan(ws/2) %原型阻帶頻率的預修正 6模擬原型濾波器計算 [n,Omgc}- button(Ongp, Omgs, Rp,As,s)%計算階數n和截止頻率 [∠0,p0.k0]= buttap(n) %設計歸一化的巴特沃思模擬濾波器原型 bal=ko*real(poly(z0)) %求原型濾波器的系數b aal-real(poly(pO) %求原型濾波器的系數a [ba, aa]=lp2lp(bal, aal, Ongc); %變換為模擬低通濾波器 %也可將以上4行替換為[b,a}- butter(n,omgc;s)直接求模擬濾波器系數 %用雙線性變換法計算數字濾波器系數 bd, ad]=bilinear(ba, aa, Fs) %求數字系統的頻率特性 [H, w]=freqz(bd, ad); dbH=20* 10((abs(H)+eps)max(abs(H))) subplot(2, 2, 1): plot(w/pi, abs(H) ylabel(H):tlc幅度響應):axis([0,1,O,1,1]) set(gca, XTickMode', manual, XTick,[0,0.25,0.4, 1]) set(gca, YTick Mode, ' manual, 'YTick, [0, Attn, ripple, 1 ]); grid subplot(2, 2, 2); plot(w/pi, angle(H)/pi): abel("ph; title相位響應);axis([0,1,-1,1]) set(gca, XTickMode', 'manual, XTick,[0, 0.25,0.4,I]) set(gca, YTickMode', manual, YTick, [ -1, 0, D grid subplot(2,2,3)plot(w/pidb) title((幅度響應(GB); ylabel(dB): xlabel(#n4(pi)); axis([0, 1, -40, 5]) set(gca, XTickMode, manual, XTick,[0,0.25,0.4, 1: set(gca, YTickMode', manual, YTick', [-50, -15, -1,O: grid subplot(2, 2, 4); zplane(bd, ad) axis(-1.1,1,1,-1.1,1 s title('零板點圖) 程序運行結果如下 頻率特性如圖所示: 幅度響應 相位響應 幅度響應 零極點圖 頻率r 圖 由頻率特性曲線可知,該設計結果再通阻帶截止頻率處能滿足≤ 的 設計指標要求,系統的極點全部在單位圓內,是一個穩定系統。由可知,該濾波器是 個階系統,原型在∞處有個零點,映射到處。該濾波器的傳遞函數為 直接型 、編寫濾波器仿真程序 編寫濾波器仿真程序,計算 對心電圖信號采樣序列的響應序列 人 體心電圖信號在測量過程中往往受到工業高頻干擾,所以必須經過低通濾波處理后,才能 作為判斷心臟功能的有用信息.下面給出一實際心電圖信號采樣序列樣式本,其中存 在高頻干擾.以作為輸入序列,濾除其中的干擾成分。 可調用 MATLAB filter(函數對實際心電圖信號濾波,下面的M文件舉例說明如何 filter函數,完成一個二階濾波器() 對實際心電圖信號濾 波。程序清單如下: Xn=[-4,-2,0,-4,-6,-4,-2,-4-6,-6,4,4,6,-6,-2,6,12,8, 0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6, 4,0,00,0,0,-2,-4.0,0.0-2,-2,0,0,-2,-2,-2,-2,0] B=[0.090360.09036*20.09036] A=[1,-1.2686,0.7051] yn=filter(B, A, xn) 注意:…號將一條語句 igure: 拆分在不同行,如果語句 subplot(2, 1, 1); 在同一行則不要 stem( length(xn)-1,xn∴);ttl(濾波前); subplot(2, 1, 2): stem( 0: length(yn)-1,yn3);tlt(濾波后); 程序運行結果如下: 濾波前 濾波后 圖 、實驗內容: 閱讀并輸入實驗原理中介紹的例題程序,觀察輸出的數據和圖形,結合基本原理 理解每一條語句的含義 采用脈沖響應不變法、雙線性變換法設計巴特沃斯數字濾波器,列出傳遞函數并 描繪模擬和數字濾波器的幅頻響應曲線 ①設計一個數字低通濾波器,要求:oπ, ;阻帶:o 濾波器采樣頻率 幅度響應 相位響應 幅度響應 零極點圖 頻率兀 用雙線性變換法設計的巴特沃斯數字濾波器對實際心電圖信號采樣序列實驗原理 中已給出進行仿真濾波處理并分別繪制出濾波前后的心電圖波形圖和其幅頻特性曲線, 觀察總結濾波作用與效果 濾波前 濾波后 四、實驗預習: 認真閱讀實驗原理部分,明確實驗目的,讀懂例題程序,了解實驗方法。 根據實驗內容預先編寫實驗程序 思考題 ①什么是脈沖響應不變法?使用脈沖響應不變法設計數字濾波器有哪些基本步驟? ②為什么脈沖響應不變法不能用于設計數字高通和帶阻濾波器? ③什么是雙線性變換法?使用雙線性變換法設計數字濾波器有哪些步驟? ④使用雙線性變換法時,模擬頻率與數字頻率有何關系?會帶來什么影響?如何解 決 五、實驗報告: 列寫調試通過的實驗程序,打印實驗程序產生的曲線圖形 列出本實驗提出的有關 函數在調用時應注意的問題 、給出預習思考題答案。
代碼片段和文件信息
評論
共有 條評論