基于matlab的低通滤波器.doc_第1页
基于matlab的低通滤波器.doc_第2页
基于matlab的低通滤波器.doc_第3页
基于matlab的低通滤波器.doc_第4页
基于matlab的低通滤波器.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于matlab的低通滤波器摘要:调用MATLAB信号处理工具箱中滤波通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。应用最广泛的是双线性变换法。基本设计过程是:先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标; 设计过渡模拟滤波器;将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。关键词:滤波器,matlab,c语言,声音Abstract: call MATLAB signal processing toolbox filtering through the observation filter of input and output signals time domain waveform and spectrum, establish the concept of digital filter. One of the most widely applied is double linear transformation method. The basic design process is: (1) to a given digital filters index converted into analog filter transition index; (2) the design transition simulation filter; (3) transition simulation filter system function will be converted into digital filter system function. MATLAB signal processing toolbox digital filter function design of IIR is bilinear transformation method.Keywords: filter, matlab, the c language, the voice一.任务:用matlab软件设计IIR模拟、数字以及各种窗函数的FIR低通滤波器二.设计目的:(1)了解matlab软件的用途以及用法;(2)了解用冲激响应不变法设计模拟低通滤波器;(3)了解用脉冲响应不变法设计的巴特沃思数字低通滤波器;(4)了解基于汉明窗函数的FIR低通滤波器的设计。三.设计内容:3.1用冲激响应不变法设计模拟低通滤波器3.1.1 设计内容:要求按照设计指标设计无限冲激响应IIR巴特沃什模拟低通滤波器。3.1.2 设计原理:低通滤波器的技术要求用图形表示如下:通带通带通带 通带 过渡带 阻带如上图表示了一个频域设计、一维低通滤波器的技术要求图。ws和wp 分别称为通带截止频率和阻带截止频率。通带频率范围为0wwp,阻带频率范围wsw。从wp到ws称为过渡带,用w表示,在过渡带里,幅频特性单调下降。在通带和阻带内的衰减一般用数 dB表示,通带内允许最大衰减是s,阻带内允许最小衰减是p。定义分别为:Matlab信号处理工具箱中提供了设计巴特沃思模拟滤波器的函数buttord、 buttap和butter,格式如下:用于计算巴特沃思模拟低通滤波器的阶N和3dB截止频率Wc (即本书中的符号)。其中,Wp 和Ws分别是滤波器的通带截止频率和阻止截止频率,单位为rad/s;Rp和Rs分别是通带最大衰减系数和阻带最小衰减系数,单位为dB。用于计算N阶巴特沃思归一化(=1)模拟低通滤波器系统函数的零、极点和增益因子,返回长度为N的向量z和p分别给出N个零点和极点,G是滤波器增益。得到的滤波器系统函数形式如下:其中,和分别是向量z和p的第k个元素。如果要从零、极点得到系统函数的分子和分母多项式系数向量B和A,可以调用结构转换函数:结构转换后系统函数的形式为:其中,M是向量B的长度,N是向量A的长度,分别是向量B和A的第k个元素。用于计算巴特沃什模拟滤波器系统函数中分子和分母多项式系数向量B和A,其中N和分别是滤波器的阶和3dB截止频率,返回向量B和A中的元素和分别是上面的表示式中的分母和分子系数。ftype缺省时,设计低通滤波器,S缺省时,设计数字滤波器。3.1.3 设计程序如下:(1)巴特沃思模拟低通滤波器设计指标如下:wp=0.4*pi, ws=0.45*pi, Rp=5,Rs=10;实验所用到的程序如下wp=0.4*pi;ws=0.45*pi;Rp=5;Rs=10;N,wc=buttord(wp,ws,Rp,Rs,s);B,A=butter(N,wc,s);w=0:0.001:6;H,W=freqs(B,A,w);H=20*log10(abs(H);plot(w,H),grid on;xlabel(频率/(rad/s);ylabel(幅度/dB)经matlab 仿真以后得到的滤波器如下图所示: 图1.1 巴特沃思模拟低通滤波器运行后在matlab控制窗口上显示如下结果: N=7 (2)为了方便观察故设计了不同阶次N的滤波器,即Butterworth模拟原型低通滤波器,其程序代码如下:n=0:0.01:2;for ii=1:4 switch ii case 1,N=2; case 2,N=5; case 3,N=10; case 4,N=20;endz,p,k=buttap(N); b,a=zp2tf(z,p,k); H,w=freqs(b,a,n); magH2=(abs(H).2; hold on;plot(w,magH2); endxlabel(w/wc);ylabel(|H(jw)|2);title(Butterworth模拟原型低通滤波器);text(1.5,0.18,n=2) text(1.3,0.08,n=5)text(1.16,0.08,n=10)text(0.93,0.98,n=20)grid on;仿真后结果图形如图:图1.2 Butterworth模拟原型低通滤波器(3)利用冲激响应不变法,把系统函数为的模拟滤波器变换成等价的数字滤波器,采样间隔T=1S。先经过计算得到: ,则有如下式子 Matlab实验参考程序如下:B=1,1;A=1,5,6; T=1;Fs=1/T;Bz,Az=impinvar(B,A,Fs); %用冲激响应不变法将模拟滤波器变换成数字滤波器运行结果:Bz =1.0000 -0.2209Az = 1.0000 -0.1851 0.0067得到的数据和先前计算得到的数据相同,故利用冲激响应不变化法把模拟滤波器设计成数字滤波器正确。3.1.4 实验结果及分析(1)步骤1 中产生的低通模拟滤波器的系统函数,经计算为:经过仿真后的结果,与上式对比,所得结果进分析相同。此处为N=7的低通模拟滤波器(2)在Butterworth模拟原型低通滤波器中,可以看到,滤波器的幅频特性随着滤波器阶次N的增加而变得越来越好。(3)步骤3中,利用冲激响应不变法,把系统函数的模拟滤波器变换成等价的数字滤波器,在matlab仿真软件中验证了冲激响应不变法的正确性。3.2用脉冲响应不变法设计的巴特沃思数字低通滤波器3.2.1 设计内容:设计巴特沃思数字低通滤波器和椭圆数字低通滤波器,要求通带边界频率fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ。3.2.2设计步骤:用MATLAB进行典型的数字滤波器的设计,一般步骤如下:(1)将设计指标归一化处理。如果采用双线性变换法,还需进行预畸变。(2)根据归一化频率,确定最小阶数N和频率参数Wn。可供选用的阶数择函数有:buttord,cheblord,cheb2ord,ellipord等。(3)运用最小阶数N设计模拟低通滤波器原型。模拟低通滤波器的创建函数有:buttap,cheblap, cheb2ap,ellipap和besselap,这些函数输出的是零极点式形式,还要用zp2tf函数转换成分子分母多项式形式。如果想根据最小阶数直接设计模拟低通滤波器原型,可用butter,chebyl,cheby2,ellip,bessel等函数,只是注意要将函数中的Wn设为1。(4)根据第2步的频率参数Wn,模拟低通滤波原型转换模拟低通、高通、带通、带阻滤波器,可用函数分别是:lp21p,lp2hp,lp2bp,lp2bs。(5)运用脉冲响应不变法或双线性变法把模滤波器转数字滤波器,调用的函数是impinvar和bilinear。脉冲响应不变法适用于采样频率大于4倍截止频率的锐截止低通带通滤波器,而双线性变换法适合于相位特性要求不高的各型滤波器。(6)根据输出的分子分母系数,用tf函数生成H(z)的表达式,再用freqz函数验证设计结果。3.2.3 设计程序如下:fp=2100;fs=8000;Fs=20000;Rp=0.5;Rs=30;T=1/Fs; %设计指标W1p=fp/Fs*2;W1s=fs/Fs*2;%求归一化频率N,Wn=buttord(W1p,W1s,Rp,Rs,s);%确定butterworth的最小介数N和频率参数Wnz,p,k=buttap(N); %设计模拟低通原型的零极点增益参数bp,ap=zp2tf(z,p,k); %将零极点增益转换成分子分母参数bs,as=lp2lp(bp,ap,Wn*pi*Fs); %将低通原型转换为模拟低通bz,az=impinvar(bs,as,Fs); %用脉冲响应不变法进行模数变换sys=tf(bz,az,T); %给出传输函数H(Z)H,W=freqz(bz,az,512,Fs); %生成频率响应参数subplot(2,1,1);plot(W,20*log10(abs(H); %绘制幅频响应grid on; %加坐标网格xlabel(频率/Hz); ylabel(振幅/dB);subplot(2,1,2); plot(W,abs(H); grid on; xlabel(频率/Hz); ylabel(振幅/H);运行后的波形如下:图2.1 巴特沃思和椭圆数字低通滤波器N =4bz = 0.0000 0.0999 0.1914 0.0252az= 1.0000 -1.4336 1.0984 -0.4115 0.06273.3基于汉明窗函数的FIR低通滤波器的设计3.3.1设计具体低通滤波器要求:设低通滤波器通带截止频率为,阻带截止频率为,通带纹波=0.5dB,最小阻带衰减=50dB。3.3.2 设计内容及原理:对于线性相位FIR滤波器通常采用窗函数法设计。窗函数设计FIR滤波器基本思想,就是从时域出发, 把理想的无限长的用一定形状的窗函数截取成有限长的,以此来逼近,从而使所得到的频率响应与所要求的理想频率响应相接近。理想的数字滤波器频率特性是无法实现的,FIR的设计就是要寻找一个可以得到的频率特性来逼近,这相当于用一个可实现的单位脉冲响应去逼近一个理想单位脉冲响。要想用一个有限长的因果序列去逼近它,最简单的方法是截取n从0N-1的一段来表示它,即: (0nN-1);当n为其他的数时,=0。同时,为了保证线性相位,还要满足偶对称: ,这就好像通过一个窗口观看到的一段,因此就表示成和一个“ 窗口函数” 的乘积。这样,对的求解就变为:这里的就称为窗口函数。窗口函数相当于对在时域上截取一段,势必造成频域的矩形窗口的失真,结果就是截取出的信号也相应失真。为了补偿这种失真,只有改变原来窗口的形状,修正经过时域截取后的窗口失真。改善窗口函数的标准:(1)尽量减少窗口频谱的旁瓣,使能量集中在主瓣中,以减少波动的幅度和次数,提高阻带衰减。这样,主瓣就不能太窄;(2)主瓣的宽度应尽量窄,以得到尽量窄的过渡带。工程中常用的窗函数有以下六种:矩形窗,三角形窗,汉宁窗,汉明窗,布莱克曼窗,凯泽窗(可变窗函数)。表1为六种窗函数的性能指标。窗函数 窗普性能指标 加窗后滤波器性能指标 - - 旁瓣峰值 dB 主瓣宽度 2/n 过滤宽度2/n 阻带最小衰减 矩形窗 -13 2 0.9 -21三角窗 -25 4 2.1 -25汉宁窗 -31 4 3.1 -44汉明窗 - 41 4 3.3 -53布莱克曼窗 -57 6 5.5 -74凯泽窗 -57 5 5 -80 表3.1 常用传函数的性能指标3.3.3根据条件采用汉明窗设计程序如下:wp=0.2*pi;wr=0.4*pi;trwidth=wr-wp; %过渡带宽度N=ceil(6.64*pi/trwidth)+1; %滤波器的长度wc=(wr+wp)/2;hd=ideal_lp(wc,N);w_ham=(hamming(N);h=hd.*w_ham;db,mag,pha,grd,w=freqz_m(h,1);delta_w=2*pi/1000; Ap=-(min(db(1:1:wp/delta_w+1);Ar=-round(max(db(wr/delta_w+1:1:501);subplot(221);stem(n,hd);title(理想单位脉冲响应hd(n)subplot(222);plot(n,w_ham);title(海明窗w(n)subplot(223);stem(n,h);title(实际单位脉冲响应h(n)subplot(224);plot(w/pi,db);title(幅度响应(dB)输出结果如下:图3.1由上图可以看到:通带纹波为0.0301dB,最小阻带衰减为55dB。满足设计指标的要求。滤波器系数N=35 具体系数如下:-0.000462885479098098 0.00102707805978426 0.002356825273471590.00198992091909062 -0.00151370239796531 -0.00662950110914604-0.00784166881995514 4.84287457256860e-18 0.01423664691969440.0220404383682397 0.00935693617842729 -0.0232325534213008-0.0520253274593482 -0.0411589138840292 0.03052864357449910.146663518130600 0.255501129233867 0.300000000000000下面我把滤波器的阶数人为的设置成15,我们得到如下的输出结果:图3.2由上图可以看到:通带纹波为1.6322dB,最小阻带衰减为16dB。显然不能满足指标要求。滤波器系数N=15,具体系数如下:0.00112415044923825 -0.00391515738696378 -0.0161188746641399-0.02047039

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论