《IIR数字滤波器课程设计(6页).doc》由会员分享,可在线阅读,更多相关《IIR数字滤波器课程设计(6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-IIR数字滤波器课程设计-第 6 页IIR数字带通滤波器设计一、设计内容1、设计任务:运用双线性变换法基于MATLAB设计一个IIR带通滤波器。2、设计要求:其中带通的中心频率为,;通带截止频率,;通带最大衰减p=3dB;阻带最小衰减s=15dB;阻带截止频率。3、设计分析:数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其
2、按照这个规则完成对输入数据的处理。时域离散系统的频域特性: 其中、分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱经过滤波后,因此,只要按照输入信号频谱的特点和处理信号的目的, 适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:系统函数为:设计IIR滤波器的任务就是寻求一个
3、物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。二、设计方法1、设计步骤:1) 根据任务,确定性能指标:在设计带通滤波器之前,首先根据工程实际的需要确定滤波器的技术指标:带通滤波器的阻带边界频率关于中心频率p0几何对称,因此ws1=wp0- 通带截止频率wc1,wc;阻带截止频率wr1,wr;阻带最小衰减s=3dB和通带最大衰减p=15dB;2) 用=2/T*tan(w/2)对带通数字滤波器H(z)的数字边界频率预畸变,得到带通模拟滤波器H(s)的边界频率主要是通带截止频率p1,p2;阻带截止频率
4、s1,s2的转换。为了计算简便,对双线性变换法一般T=2s通带截止频率wc1阻带截止频率阻带最小衰减s=3dB和通带最大衰减p=15dB;3) 运用低通到带通频率变换公式=(2)-(02)/(B*)将模拟带通滤波器指标转换为模拟低通滤波器指标。B=wc2-wc1normwr1=(wr12)-(w02)/(B*wr1)normwr2=(wr22)-(w02)/(B*wr2)normwc1=(wc12)-(w02)/(B*wc1)=1normwc2=(wc22)-(w02)/(B*wc2)=1得出,normwc=1,normwr模拟低通滤波器指标:normwc=1,normwr=2.236,p=3
5、dB,s=15dB4) 设计模拟低通原型滤波器。用模拟低通滤波器设计方法得到模拟低通滤波器的传输函数Ha(s);借助巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev)滤波器、椭圆(Cauer)滤波器、贝塞尔(Bessel)滤波器等。5) 调用lp2bp函数将模拟低通滤波器转化为模拟带通滤波器。6) 利用双线性变换法将模拟带通滤波器Ha(s)转换成数字带通滤波器H(z)。2、程序流程框图:开始读入数字滤波器技术指标将指标转换成归一化模拟低通滤波器的指标设计归一化的模拟低通滤波器阶数N和3db截止频率模拟域频率变换,将G(P)变换成模拟带通滤波器H(s)用双线性变换法将H(s
6、)转换成数字带通滤波器H(z)输入信号后显示相关结果结束三、MATLAB程序及运行MATLAB 程序如下:clearwp0=0.5*pi;wp1=0.4*pi;wp2=0.6*pi;Ap=3;ws2=0.7*pi;As=15;T=2; %数字带通滤波器技术指标ws1=wp0-(ws2-wp0); %计算带通滤波器的阻带下截止频率wc1=(2/T)*tan(wp1/2);wc2=(2/T)*tan(wp2/2);wr1=(2/T)*tan(ws1/2);wr2=(2/T)*tan(ws2/2);w0=(2/T)*tan(wp0/2); %频率预畸变B=wc2-wc1; %带通滤波器的通带宽度 n
7、ormwr1=(wr12)-(w02)/(B*wr1);normwr2=(wr22)-(w02)/(B*wr2);normwc1=(wc12)-(w02)/(B*wc1);normwc2=(wc22)-(w02)/(B*wc2); %带通到低通的频率变换if abs(normwr1)abs(normwr2) normwr=abs(normwr2)else normwr=abs(normwr1)end normwc=1; %将指标转换成归一化模拟低通滤波器的指标N=buttord(normwc,normwr,Ap,As,s); %设计归一化的模拟低通滤波器阶数N和3db截止频率bLP,aLP=b
8、utter(N,normwc,s); %计算相应的模拟滤波器系统函数G(p)bBP,aBP=lp2bp(bLP,aLP,w0,B); %模拟域频率变换,将G(P)变换成模拟带通滤波器H(s) b,a=bilinear(bBP,aBP,0.5); %用双线性变换法将H(s)转换成数字带通滤波器H(z)w=linspace (0,2*pi,500);h=freqz(b,a,w);subplot(2,1,2);plot(w,abs(h);grid onxlabel(w(rad)ylabel(|H(jw)|)title(频谱函数)subplot(2,2,1);plot(w,20*log10(abs(h
9、);axis(0,2*pi,-120,20);grid onxlabel(w(rad)ylabel(20*lg|H(jw)|(db)title(20*lg|H(jw)|-w)四、运行结果及分析 图程序运行结果:normwr由设计流程计算得normwr=2.236与运行结果相同。低通原型的每一个边界频率都映射为带通滤波器两个相应的边界频率。根据通带截至频率和阻带截至频率与频谱函数曲线比较,满足设计要求。五、设计总结通过这个实验,对设计带通数字滤波器的整个过程有了很好的掌握。其中双线性变换法,巴特沃斯设计模拟滤波器的运用,也比较熟悉了。通过对数字带通滤波器的设计,熟悉了MATLAB的运行环境,初步掌握了MATLAB语言在数字信号处理中一些基本库函数的调用和编写基本程序等应用;熟悉了滤波器设计的一般原理,对滤波器有了一个感性的认识;学会了数字高通滤波器设计的一般步骤;加深了对滤波器设计中产生误差的原因以及双线性变换法优缺点的理解和认识。总之,使理论联系了实际,巩固并深化了对课本基本知识的认识和理解,使理论得以升华。