您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > 脉冲响应不变法设计IIR数字滤波器-matlab
1实验三脉冲响应不变法设计IIR数字滤波器一、实验目的1.掌握利用脉冲响应不变法设计IIR数字滤波器的原理和具体方法。2.加深理解数字滤波器与连续时间滤波器之间的技术指标转化。3.掌握脉冲响应不变法设计IIR数字滤波器的优缺点及使用范围。二、实验内容1.利用巴特沃思模拟滤波器,通过脉冲响应不变法设计巴特沃思数字滤波器,数字滤波器的技术指标为采样周期为T=2程序代码T=2;%设置采样周期为2fs=1/T;%采样频率为周期倒数Wp=0.25*pi/T;Ws=0.35*pi/T;%设置归一化通带和阻带截止频率Ap=20*log10(1/0.9);As=20*log10(1/0.18);%设置通带最大和最小衰减[N,Wc]=buttord(Wp,Ws,Ap,As,'s');%调用butter函数确定巴特沃斯滤波器阶数[B,A]=butter(N,Wc,'s');%调用butter函数设计巴特沃斯滤波器W=linspace(0,pi,400*pi);%指定一段频率值hf=freqs(B,A,W);%计算模拟滤波器的幅频响应subplot(2,1,1);plot(W/pi,abs(hf)/abs(hf(1)));%绘出巴特沃斯模拟滤波器的幅频特性曲线gridon;title('巴特沃斯模拟滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');[D,C]=impinvar(B,A,fs);%调用脉冲响应不变法Hz=freqz(D,C,W);%返回频率响应subplot(2,1,2);plot(W/pi,abs(Hz)/abs(Hz(1)));%绘出巴特沃斯数字低通滤波器的幅频特性曲线2gridon;title('巴特沃斯数字滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');进行试验输出图像:观察workspace,可得模拟滤波器技术指标为N=8,Wc=0.4446。2.通过切比雪夫模拟滤波器,利用脉冲响应不变法设计切比雪夫数字滤波器,重做第一题。程序代码IT=2;%设置采样周期为2fs=1/T;%采样频率为周期倒数Wp=0.25*pi/T;Ws=0.35*pi/T;%设置归一化通带和阻带截止频率Ap=20*log10(1/0.9);As=20*log10(1/0.18);%设置通带最大和最小衰减[N,Wc]=cheb1ord(Wp,Ws,Ap,As,'s');%调用cheb1ord函数确定切比雪夫I型滤波器阶数00.10.20.30.40.50.60.70.80.9100.51巴特沃斯模拟滤波器Frequency/HzMagnitude00.10.20.30.40.50.60.70.80.9100.51巴特沃斯数字滤波器Frequency/HzMagnitude3[B,A]=cheby1(N,Ap,Wc,'s');%调用cheby1函数设计切比雪夫I型滤波器W=linspace(0,pi,400*pi);%指定一段频率值hf=freqs(B,A,W);%计算模拟滤波器的幅频响应subplot(2,1,1);plot(W/pi,abs(hf)/abs(hf(1)));%绘出切比雪夫I型模拟滤波器的幅频特性曲线gridon;title('切比雪夫I型模拟滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');[D,C]=impinvar(B,A,fs);%调用脉冲响应不变法Hz=freqz(D,C,W);%返回频率响应subplot(2,1,2);plot(W/pi,abs(Hz)/abs(Hz(1)));%绘出切比雪夫I型数字低通滤波器的幅频特性曲线gridon;title('切比雪夫I型数字滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');进行试验I输出图像:观察workspace,可得模拟滤波器技术指标为N=4,Wc=0.3927。00.10.20.30.40.50.60.70.80.9100.511.5切比雪夫I型模拟滤波器Frequency/HzMagnitude00.10.20.30.40.50.60.70.80.9100.511.5切比雪夫I型数字滤波器Frequency/HzMagnitude4程序代码IIT=2;%设置采样周期为2fs=1/T;%采样频率为周期倒数Wp=0.25*pi/T;Ws=0.35*pi/T;%设置归一化通带和阻带截止频率Ap=20*log10(1/0.9);As=20*log10(1/0.18);%设置通带最大和最小衰减[N,Wc]=cheb2ord(Wp,Ws,Ap,As);%调用cheb2ord函数确定切比雪夫II型滤波器阶数[B,A]=cheby2(N,Ap,Wc);%调用cheby2函数设计切比雪夫II型滤波器W=linspace(0,pi,400*pi);%指定一段频率值hf=freqs(B,A,W);%计算模拟滤波器的幅频响应subplot(2,1,1);plot(W/pi,abs(hf)/abs(hf(1)));%绘出切比雪夫II型模拟滤波器的幅频特性曲线gridon;title('切比雪夫II型模拟滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');[D,C]=impinvar(B,A,fs);%调用脉冲响应不变法Hz=freqz(D,C,W);%返回频率响应subplot(2,1,2);plot(W/pi,abs(Hz)/abs(Hz(1)));%绘出切比雪夫II型数字低通滤波器的幅频特性曲线gridon;title('切比雪夫II型数字滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');进行试验II输出图像:5观察workspace,可得模拟滤波器技术指标为N=3,Wc=0.5498。3.利用脉冲响应不变法设计巴特沃思数字高通滤波器,数字滤波器的技术指标为采样周期为T=1,比较当T分别为0.01,0.1,0.25,0.5,0.8是的数字滤波器的频率响应,观察是否能够通过改变采样周期来减少滤波器设计中的频谱混叠。程序代码T=1;%设置采样周期为1fs=1/T;%采样频率为周期倒数Wp=0.75*pi/T;Ws=0.65*pi/T;%设置归一化通带和阻带截止频率Ap=20*log10(1/0.9);As=20*log10(1/0.18);%设置通带最大和最小衰减[N,Wc]=buttord(Wp,Ws,Ap,As,'s');%调用butter函数确定巴特沃斯滤波器阶数00.10.20.30.40.50.60.70.80.910.70.80.91切比雪夫II型模拟滤波器Frequency/HzMagnitude00.10.20.30.40.50.60.70.80.910.80.850.90.951切比雪夫II型数字滤波器Frequency/HzMagnitude6[B,A]=butter(N,Wc,'high','s');%调用butter函数设计巴特沃斯滤波器W=linspace(0,pi,400*pi);%指定一段频率值hf=freqs(B,A,W);%计算模拟滤波器的幅频响应subplot(2,1,1);plot(W/pi,abs(hf));%绘出巴特沃斯模拟滤波器的幅频特性曲线gridon;title('巴特沃斯模拟滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');[D,C]=impinvar(B,A,fs);%调用脉冲响应不变法Hz=freqz(D,C,W);%返回频率响应subplot(2,1,2);plot(W/pi,abs(Hz));%绘出巴特沃斯数字高通滤波器的幅频特性曲线gridon;title('巴特沃斯数字滤波器');xlabel('Frequency/Hz');ylabel('Magnitude');进行试验输出图像如下:00.10.20.30.40.50.60.70.80.9100.51巴特沃斯模拟滤波器Frequency/HzMagnitude00.10.20.30.40.50.60.70.80.912122232425巴特沃斯数字滤波器Frequency/HzMagnitude7当T分别为0.01,0.1,0.25,0.5,0.8是的数字滤波器的频率响应如下几个图像所示:其中,T=0.01“”T=0.1“-------------”T=0.25“—·—·—”T=0.5“————”T=0.8“”由图像可以看出,当采样周期从0.01s增长到0.8s时,数字滤波器的幅度响应逐渐降低,但形状未发生变化仍然出现频谱混叠现象,即在低频区域出现较高的起伏,产生的频谱并非高通滤波器。故对于用脉冲响应不变法设计的巴特沃思高通数字滤波器,无法通过改变采样周期来减少频谱混叠现象。其原因是按照脉冲响应不变法的原理,只有当模拟滤波器的频响是限带于折叠频率以内时,才能使数字滤波器的频率响应在折叠频率以内,重现模拟滤波器的频率响应而不产生混叠失真。而对于高通和带阻滤波器,无论取样周期为多少,无法满足这一条件。00.10.20.30.40.50.60.70.80.912222.52323.52424.52525.526巴特沃斯模拟滤波器Frequency/HzMagnitude
本文标题:脉冲响应不变法设计IIR数字滤波器-matlab
链接地址:https://www.777doc.com/doc-5494557 .html