1、基于双线性变换法的IIR数字高通滤波器设计讲解基于双线性变换法的IIR数字高通滤波器设计摘 要随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,Digital Filter)。数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留一些模拟滤波器的优良特性,因此应用很广。Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境中,并且为数字滤波的研究和应用
2、提供了一个直观、高效、便捷的利器。尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。本次主要利用matlab的信号处理工具箱设计一个数字高通IIR滤波器,并用此滤波器处理一段音频信号。此报告重点介绍了用双线性不变法设计IIR数字滤波器的基本流程,比较了各种设计方法的优缺点,总结了模拟滤波器的性能特征。最后以双线性不变法设计了一个高通巴特沃斯IIR数字滤波器,介绍了设计步骤,然后在Matlab环境下进行了仿真与调试,实现了设计目标。关键字 IIR数字滤波器 巴特沃斯 高通 双线性变换 MATLABAbstractWith the information
3、 eraand the advent of the digital world,digitalsignal processing has become one ofthe importantfields of science and technology. In the digital signal processing plays animportant roleand has been widely appliedin thedigitalfilter. Digitalfilter is adiscrete timesignal isused to filterthedigitalsyst
4、em,through themathematical processing ofsamplingdata toreach the goal of frequency domain filterin. Implementation of IIRfilter orderis low,less storage unit,withhigh efficiency,high precision,and can keep some simulation characteristics offilter, so a very wide application. Matlab software based on
5、 matrix computation,the calculation,visualization and program design of organicintegration to interactive environment,andprovides an intuitive,efficient,convenient toolfor theresearch and application of digitalfilter.Themainuse ofsignal processingtoolbox of MATLABto design a digitalhigh-pass IIR fil
6、ter,andan audio signalwith thefilter. This reportfocuses on thebasic process ofusing the bilinearinvariantIIR digital filter design,compares the advantages and disadvantages ofvariousdesign methods,summarizes thecharacteristics ofthe analog filter. Finally,by bilinearinvariantto design ahighButterwo
7、rth IIR digitalfilter,introduces the designsteps,and thenin the Matlab environment forthe simulationand debugging,achieves the design goal.Keywords IIR Butterworth high-passbilinear transform MATLABdigital filter目 录摘 要 IAbstract II1 数字滤波器 11.1 数字滤波器介绍 11.2 IIR数字滤波器设计原理 21.2.2双线性变换法 32数字滤波器设计实现 62.1
8、典型模拟滤波器比较 62.2 设计步骤 62.3 程序流程图 72.4音频信号部分程序 82.5仿真结果 92.5.1滤波器性能仿真 92.5.2滤波器除噪性能 103总结 11致谢 11参考文献 12附 录 131 数字滤波器1.1 数字滤波器介绍数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通
9、、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行在0与l两个电平状态)、灵活性强等优点。时域离散系统的频域特性:,其中,分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱经过滤波后。因此,只要按照输入信号频谱的特点和处理信号的目的, 适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器
10、。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为: 系统函数为: 设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。1.2 IIR数字滤波器设计原理 IIR数字滤波器是一种离散时间系统,其系统函数为 假设MN,当MN时,系统函数可以看作一个IIR的子系统和一个(M-N)的FIR子系统的级联。IIR数字滤波器的设计实际上是求解滤波器的系数和,它是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。
11、如果在S平面上去逼近,就得到模拟滤波器;如果在z平面上去逼近,就得到数字滤波器。设计通数字滤波器通常可以归纳为如图所示的两种常用方法。双线性变换交换频率方法1 双线性变换方法2 图1-1 数字带通滤波器设计的两种方法 方法1:首先设计一个模拟原型低通滤波器,然后通过频率变换成所需要的模拟高通滤波器,最后再使用冲激不变法或双线性变换成相应的数字高通滤波器。方法2:先设计一个模拟原型低通滤波器,然后采用冲激响应不变法或双线性变换法将它转换成数字原型低通滤波器,最后通过频率变换把数字原型低通滤波器变换成所需要的数字高通滤波器。本课程设计采用第一种设计方法,先构造一个巴特沃斯模拟低通滤波器,然后将模拟
12、低通滤波器转换成模拟高通滤波器,最后利用双线性变换将模拟高通滤波器转换成数字高通滤波器。1.2.2双线性变换法为了克服冲激响应法可能产生的频率响应的混叠失真,这是因为从S平面到平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-/T/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-/T/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图1-3图1-3双线性变换的映射关
13、系为了将S平面的整个虚轴j压缩到S1平面j1轴上的-/T到/T段上,可以通过以下的正切变换实现式中,T仍是采样间隔。当1由-/T经过0变化到/T时,由-经过0变化到+,也即映射了整个j轴。将式(1-9)写成将此关系解析延拓到整个S平面和S1平面,令j=s,j1=s1,则得再将S1平面通过以下标准变换关系映射到Z平面z=es1T从而得到S平面和Z平面的单值映射关系为:这两个关系式是S平面与Z平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换首先,把可得即S平面的虚轴映射到Z平面的单位圆。其次,将代入,得因此 由此看出,当0时,|z|0时,|z|1。也就是说,S平面的左半平面
14、映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆外,S平面的虚轴映射到Z平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。双线性变换法优缺点:双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S平面与Z平面是单值的一一对应关系。S平面整个j轴单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系重写如下:上式表明,S平面上与Z平面的成非线性的正切关系,如图1-4所示。由图1-4看出,在零频率附近,模拟角频率与数字频率之间的变换关系接近于线性关系;但当进一步增加时,增长得越来越慢,最后当时,终止在折叠频率=处,
15、因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。图1-4双线性变换法的频率变换关系但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,图1-4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图1-5
16、所示。图1-5双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。2数字滤波器设计实现2.1 典型模拟滤波器比较1、Butterworth巴特沃斯滤波器:它具有单调下降的幅频特性;即最平幅度。2、Chebyshev切比雪夫滤波器:在通带或阻带等波纹,可提高选择性。3、Bessel贝塞尔滤波器:在通带内有较好的线性相位特性。4、Ellipse椭圆滤波器:其选择性相对前三种是最好的。
17、此处选择巴特沃斯主要是想获得最平稳的幅频响应。而不计较相位特性,而用双线性变换法也会将线性相位变为非线性相位。2.2 设计步骤根据以上IIR数字滤波器设计方法,下面运用双线性变换法基于MATLAB设计一个IIR高通滤波器。 (1)确定性能指标在设计高通滤波器之前,首先根据工程实际的需要确定滤波器的技术指标: 通带截止频率fp=3200Hz;阻带截止频率fs=3000Hz;阻带最小衰减As=100dB和通带最大衰减Ap=1dB(2)把频率转化为数字角频率 wp=2*pi*fp*T; ws=2*pi*fs*T; (3)频率预畸变以及模拟高通性能指标转换成模拟低通性能指标用=2/T*tan(w/2)
18、对高通数字滤波器H(z)的数字边界频率预畸变,得到高通模拟滤波器H(s)的边界频率主要是通带截止频率Wp;阻带截止频率Ws的转换。抽样频率 Fs=44100Hz。通带截止频率 Wp2=(2/T)*tan(wp/2)阻带截止频率 Ws2=(2/T)*tan(ws/2)(4) 归一化处理 ; ; ; ; ; 由式2-3,2-4,2-5计算出N,查表可得模拟低通滤波器的阶数,从而由下式确定模拟高通滤波器的参数 (5)模拟低通滤波器的构造借助巴特沃斯滤波器模型得到模拟低通滤波器的传输函数Ha(s)。N,Wn=buttord(wp2,ws2,Ap,As,s);z,p,k=buttap(N);Bap,Aa
19、p=zp2tf(z,p,k); G1=tf(Bap,Aap);(6)模拟低通滤波器转换成模拟高通滤波器调用lp2bp函数将模拟低通滤波器转化为模拟高通滤波器。Bbs,Abs=lp2hp(Bap,Aap,Wn); (7)模拟高通滤波器转换成数字高通滤波器利用双线性变换法将模拟高通滤波器Ha(s)转换成数字高通滤波器H(z)。Bbz,Abz=bilinear(Bbs,Abs,FS); 2.3 程序流程图首先确定性能指标,把频率转化为数字角频率,进而在进行频率预畸变,用=2/T*tan(w/2)对高通数字滤波器H(z)的数字边界频率预畸变,得到高通模拟滤波器H(s)的边界频率主要是通带截止频率Wp;
20、阻带截止频率Ws的转换。抽样频率Fs=44100Hz。上述准备工作做好之后,就先把模拟高通性能指标转换成模拟低通性能指标,然后设计模拟低通滤波器,借助巴特沃斯滤波器模型得到模拟低通滤波器的传输函数Ha(s)。然后将模拟低通滤波器转化为模拟高通滤波器。最后利用双线性变换法将模拟高通滤波器Ha(s)转换成数字高通滤波器H(z)。 图2-1程序流程图2.4音频信号部分程序(1)写入声音信号 fnose =10;T=length(x)/fs;t=T/length(x):T/length(x):T; j=1:1:length(x);(2)产生噪声并加到声音中 nose =sin(2*pi*fnose*T
21、*j);y=x+5*nose;b,a=butter(N,Wn,high);Y=fft(y);2.5仿真结果2.5.1滤波器性能仿真源程序设计了模拟低通滤波器、模拟高通滤波器与数字高通滤波器,对数字高通滤波器的性能仿真如下:2.5.2滤波器除噪性能为了实现滤波器的应用,程序中加入了有噪声的音频信号,通过对其滤波处理,来显示数字高通滤波器的功能,下面显示未加入噪声,加入噪声和滤波后的频谱波形图。 滤波前加噪信号的波形和频谱滤波后信号的波形和频谱3总结这次课设下来,对设计高通数字滤波器的整个过程有了很好的掌握,懂得了设计滤波器的基本方法,对双线性变换法,巴特沃斯滤波器有了一定了解,同时呢也熟悉了MA
22、TLAB的环境,巩固了相关知识。初步掌握了MATLAB语言在数字信号处理中一些基本库函数的调用和编写基本程序等应用;熟悉了滤波器设计的一般原理,对滤波器有了一个感性的认识;学会了数字高通滤波器设计的一般步骤;加深了对滤波器设计中产生误差的原因以及双线性变换法优缺点的理解和认识。总之,使理论联系了实际,巩固并深化了对课本基本知识的认识和理解,使理论得以升华。在做本次课程设计的过程中,我深深地感受到了自己所学到知识的有限,明白了只学好课本上的知识是不够的,要通过图书馆和互联网等各种渠道来扩充自己的知识。在实验过程中我们曾经遇到过问题。但是从中我们学习到了如何对待遇到的困难,进一步培养了我们一丝不苟
23、的科学态度和不厌其烦的耐心。所有的这些心得会对我以后的学习和工作有帮助作用,忠心感谢学校给我们提供这次实验机会。致谢本设计过程中得到老师的悉心指导,设计过程中老师多次帮我分析思路,开拓视角,在我遇到困难想要放弃的时候给予我最大的支持和鼓励。老师那严谨求实的治学态度、踏实坚韧的工作精神,将使我终身受益;另外同学和朋友的热心帮助也使我学到了不少的知识。再多华丽的语言也显得苍白,在此,谨向老师和同学们致以诚挚的谢意和崇高的敬意。因为他们我对这次课程设计有了深刻的印象,虽然只有短暂的一周,但在这期间,却让我受益匪浅,我深刻地认识到了“理论联系实际”这句话的重要性与真实性。参考文献1 程佩青,数字信号处
24、理.北京:清华大学出版社,2007.22 景振毅,张泽兵,董霖.北京:中国铁道出版社,2008.123 从玉良.数字信号处理原理及其MATLAB实现M.北京:电子工业出版社.2009.74 胡广书.数字信号处理理论、算法与实现M.北京:清华大学出版社.2003,85 刘波MATLAB信号处理北京:电子工业出版社,20066 施阳等MATLAB语言工具箱西安:西北工业大学出版社,19997 丁玉美数字信号处理西安电子科技大学出版社第二版8倪养华数字信号处理与实现上海:上海交通大学出版社,19989张葛祥,李娜MATLAB仿真技术与应用北京:清华大学出版社,200310飞思科技产品研发中心MATL
25、AB7辅助信号处理技术与应用北京:电子工业出版社,2005附 录源程序FS=8000;T=1/FS; fp=3200;fs=3000; Ap=1;As=20;fp=1600;fs=1000; FS =44100;T=1/FS;Ap=1;As=60;wp=fp*2*pi;ws=fs*2*pi;wp=wp/FS;ws=ws/FS;wp2=2*tan(wp/2)/T;ws2=2*tan(ws/2)/T;N,Wn=buttord(wp2,ws2,Ap,As,s);z,p,k=buttap(N);Bap,Aap=zp2tf(z,p,k);G1=tf(Bap,Aap);figure(1);freqs(Ba
26、p,Aap);title(模拟低通滤波器的频率响应)Bbs,Abs=lp2hp(Bap,Aap,Wn);%模拟低通转化为模拟高通 figure(2);freqs(Bbs,Abs);title(模拟高通滤波器的频率响应)Bbz,Abz=bilinear(Bbs,Abs,FS);%双线性变化把模拟高通转化为数字高通figure(3);freqz(Bbz,Abz,512,FS);title(数字滤波器的频率响应)fnose =10;T=length(x)/fs;t=T/length(x):T/length(x):T; j=1:1:length(x);nose =sin(2*pi*fnose*T*j); y=x+5*nose;b,a=butter(N,Wn,high);Y=fft(y);figure(1);title(高通滤波前的信号和其频谱);subplot(2,1,1);plot(y);Subplot(2,1,2);plot(abs(Y);z=filter(b,a,y);Z=fft(z);figure(2);title(高通滤波后的信号和其频谱);Subplot(2,1,1);plot(z);Subplot(2,1,2);plot(abs(Z);sound(y,fs);sound(z,fs);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1