1广西大学数字信号处理课程设计报告课题名称:用双线性变换法设计高通和带通数字滤波器1.数字滤波器1.1数字滤波器介绍数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行在0与l两个电平状态)、灵活性强等优点。时域离散系统的频域特性:jwjwjweHeXeY,其中jweY,jweX分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),jweH是2双线性变换数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱jweX经过滤波后jwjweHeX。因此,只要按照输入信号频谱的特点和处理信号的目的,适当选择jweH,使得滤波后的jwjweHeX满足设计的要求,这就是数字滤波器的滤波原理。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:NiiNiiinyinxany10b系统函数为:NkkkMrrrzazbzH101设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。1.2IIR数字滤波器设计原理IIR数字滤波器是一种离散时间系统,其系统函数为zXzYzazNkkkkk1M0k1bzH假设M≤N,当M>N时,系统函数可以看作一个IIR的子系统和一个(M-N)的FIR子系统的级联。IIR数字滤波器的设计实际上是求解滤波器的系数ka和kb,它是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。如果在S平面上去逼近,就得到模拟滤波器;如果在z平面上去逼近,就得到数字滤波器。我的设计方法:本课程设计采用先构造一个巴特沃斯模拟高(带)通滤波器,利用双线性变换将模拟高(带)通滤波器转换成数字高通滤波器。数字高(带)通模拟高(带)通31.2.2双线性变换法为了克服冲激响应法可能产生的频率响应的混叠失真,这是因为从S平面到Z平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-π/T~π/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-π/T~π/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图1-3图1-3双线性变换的映射关系为了将S平面的整个虚轴jΩ压缩到S1平面jΩ1轴上的-π/T到π/T段上,可以通过以下的正切变换实现式中,T仍是采样间隔。当Ω1由-π/T经过0变化到π/T时,Ω由-∞经过0变化到+∞,也即映射了整个jΩ轴。将式(1-9)写成将此关系解析延拓到整个S平面和S1平面,令jΩ=s,jΩ1=s1,则得再将S1平面通过以下标准变换关系映射到Z平面z=es1T从而得到S平面和Z平面的单值映射关系为:2tan21TT2/2/2/2/11112TjTjTjTjeeeeTjTsTsTsTsTsTseeTTsTeeeeTs1111111122tanh2212/2/2/2/o-11Z平面jIm[z]Re[z]/Tj11-/TS1平面S平面joo4这两个关系式是S平面与Z平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换首先,把jwez可得即S平面的虚轴映射到Z平面的单位圆。其次,将jws代入,得因此由此看出,当0时,|z|1;当0时,|z|1。也就是说,S平面的左半平面映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆外,S平面的虚轴映射到Z平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。双线性变换法优缺点:双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S平面与Z平面是单值的一一对应关系。S平面整个jΩ轴单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系重写如下:上式表明,S平面上Ω与Z平面的ω成非线性的正切关系,如图1-4所示。由图1-4看出,在零频率附近,模拟角频率Ω与数字频率ω之间的变换关系接近于线性关系;但当Ω进一步增加时,ω增长得越来越慢,最后当Ω→∞时,ω终止在折叠频率ω=π处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。11112zzTssTsTsTsTz222121jTjeeTsjj2tan2112jTjTz22222222||TTz-o2tan2T=2tan2T5图1-4双线性变换法的频率变换关系但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,图1-4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图1-5所示。图1-5双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。2.数字滤波器设计实现2.1典型模拟滤波器比较1、Butterworth巴特沃斯滤波器:它具有单调下降的幅频特性;即最平幅度。ooo)j(aΩH)(ejHooo)](earg[jH)]j(arg[aΩH62、Chebyshev切比雪夫滤波器:在通带或阻带等波纹,可提高选择性。3、Bessel贝塞尔滤波器:在通带内有较好的线性相位特性。4、Ellipse椭圆滤波器:其选择性相对前三种是最好的。此处选择巴特沃斯主要是想获得最平稳的幅频响应。而不计较相位特性,而用双线性变换法也会将线性相位变为非线性相位。2.2设计步骤高通滤波器设计:根据以上IIR数字滤波器设计方法,下面运用双线性变换法基于MATLAB设计一个IIR高通滤波器。(1)确定性能指标在设计高通滤波器之前,首先根据实际的需要确定滤波器的技术指标:通带截止频率fp=6000Hz;阻带截止频率fs=5000Hz;阻带最小衰减As=70dB和通带最大衰减Ap=1dB(2)把频率转化为数字角频率wp=2*pi*fp/Fs;ws=2*pi*fs/Fs(3)预畸变校正求出相应模拟滤波器模拟角频率指标用Ω=tan(w/2)对模拟滤波器滤波器的数字边界频率预畸变,得到模拟滤波器的边界频率主要是通带截止频率Wp;阻带截止频率Ws的转换。抽样频率Fs=16000Hz。通带截止频率wph=tan(wp/2);阻带截止频率wsh=tan(ws/2);(4)求出模拟滤波器阶数N和截至频率[N,wc]=buttord(wph,wsh,ap,as,'s')(5)求出模拟高通系统函数H(s)的分子分母系数向量B,A[B,A]=butter(N,wc,'high','s')(6)求出模拟高通系统函数H(s)的分子分母系数向量B,A利用双线性变换法将模拟高通滤波器Ha(s)转换成数字高通滤波器H(z)。[Bz,Az]=bilinear(B,A,0.5)7带通滤波器设计:根据以上IIR数字滤波器设计方法,下面运用双线性变换法基于MATLAB设计一个IIR带通滤波器。(1)确定性能指标fs1=1000;fp1=2000;fp2=4000;fs2=5000;Fs=16000;ap=1;as1=65;as2=65;as=65(2)把频率转化为数字角频率wp1=2*pi*fp1/Fs;wp2=2*pi*fp2/Fs;ws1=2*pi*fs1/Fs;ws2=2*pi*fs2/Fs(3)预畸变校正求出相应模拟滤波器模拟角频率指标用Ω=tan(w/2)对模拟滤波器滤波器的数字边界频率预畸变,得到模拟滤波器的边界频率主要是通带截止频率Wp;阻带截止频率Ws的转换。抽样频率Fs=16000Hz。通带截止频率wph1=tan(wp1/2)wph2=tan(wp2/2)阻带截止频率wsh1=tan(ws1/2)wsh2=tan(ws2/2)(4)求出模拟滤波器阶数N和截至频率[N,wc]=buttord(wph,wsh,ap,as,'s')(5)求出模拟带通系统函数H(s)的分子分母系数向量B,A[B,A]=butter(N,wc,'s')(6)求出模拟带通系统函数H(s)的分子分母系数向量B,A利用双线性变换法将模拟带通滤波器Ha(s)转换成数字带通滤波器H(z)。[Bz,Az]=bilinear(B,A,0.5)2.3程序流程图首先确定性能指标,把频率转化为数字角频率,进而在进行频率预畸变,用Ω=tan(w/2)对高(带)通模拟数字滤波器H(z)的数字边界频率预畸变,得到高(带)通模拟滤波器H(s)的边界频率主要是通带截止频率Wp;阻带截止频率Ws的转换。抽样频率Fs=16000Hz。上述准备工作做好之后,最后利用双线性变换法将模拟高(带)通滤波器Ha(s)转换成数字高(带)通滤波器H(z)。开始读入数字滤波器技术指标8图2-1程序流程图2.4音频信号部分程序(1)写入声音信号[y,Fs,bits]=wavread('C:\Users\pc-admin\Desktop\Êý×ÖÐźÅʵÑé11\µ÷ºÃƵÂʵÄÒôƵ.wav');n=length(y);t=(0:n-1)/Fs;Y=fft(y,n);k=1:n/2;Y=Y(1:n/2,:);2.5仿真结果2.5.1滤波器性能对数字高通滤波器的性能仿真如下:模拟高(带)通滤波器转换成数字高(带)通滤波器结束将指标转换成归一化模拟高(带)通滤波器的指标设计归一化的模拟高(带)通滤波器阶数N和3db截止频率900.10.20.30.40.50.60.70.80.91-300-200-1000100高通滤波器w幅度(dB)01000200030004000500060007000800000.511.5高通滤波器Hz幅度00.10.20.30.40.50.60.70.80.91-1500-1000-5000500NormalizedFrequency(rad/sample)Phase(degrees)00.10.20.30.40.50.60.70.80.91-300-200-1000100NormalizedFrequency(rad/sample)Magnitude(dB)对数字带通滤波器的性能仿真如下:1000.10.20.30.40.50.60.70.