当前位置:文档之家› 基于matlab的低通滤波器毕业设计(论文)

基于matlab的低通滤波器毕业设计(论文)

基于mat lab的低通滤波器摘要:调用MA TLAB信号处理工具箱中滤波通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。

应用最广泛的是双线性变换法。

基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MA TLAB信号处理工具箱中的各种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 设计原理:低通滤波器的技术要求用图形表示如下:1通带 过渡带 阻带如上图表示了一个频域设计、一维低通滤波器的技术要求图。

ws 和wp 分别称为通带截止频率和阻带截止频率。

通带频率范围为0≤w≤wp ,阻带频率范围ws≤w≤π。

从wp 到ws 称为过渡带,用Δw 表示,在过渡带里,幅频特性单调下降。

在通带和阻带内的衰减一般用数 dB 表示,通带内允许最大衰减是αs ,阻带内允许最小衰减是αp 。

定义分别为:Matlab信号处理工具箱中提供了设计巴特沃思模拟滤波器的函数buttord 、 buttap 和butter ,格式如下:[,](,,,,C P S P S N W buttord W W R R s ='')用于计算巴特沃思模拟低通滤波器的阶N 和3dB 截止频率Wc (即本书中的符号c Ω)。

其中,Wp 和Ws 分别是滤波器的通带截止频率p Ω和阻止截止频率s Ω,单位为rad/s ;Rp 和Rs 分别是通带最大衰减系数p α和阻带最小衰减系数s α,单位为dB 。

[,,]()z p G buttap N =用于计算N 阶巴特沃思归一化(c Ω=1)模拟低通滤波器系统函数的零、极点和增益因子,返回长度为N 的向量z 和p 分别给出N 个零点和极点,G 是滤波器增益。

得到的滤波器系统函数形式如下:1212()()()()()()()()()a N a a N Q s s z s z s z H s GP s s p s p s p ---==---其中,k z 和k p 分别是向量z 和p 的第k 个元素。

如果要从零、极点得到系统函数的分子和分母多项式系数向量B 和A ,可以调用结构转换函数:[,]2(,,)B A zp tf z p G = 结构转换后系统函数的形式为:111111()()()M M Ma N N Nb s b s b B s H s A s a s a s a ----+++==+++ 其中,M 是向量B 的长度,N 是向量A 的长度,k k b a 和分别是向量B 和A 的第k 个元素。

[,](,,,)C B A butter N W ftype s =''''用于计算巴特沃什模拟滤波器系统函数中分子和分母多项式系数向量B 和A ,其中N 和C W 分别是滤波器的阶和3dB 截止频率c Ω,返回向量B 和A 中的元素k a 和k b 分别是上面的()a H s 表示式中的分母和分子系数。

ftype 缺省时,设计低通滤波器,S 缺省时,设计数字滤波器。

3.1.3 设计程序如下:(1)巴特沃思模拟低通滤波器设计指标如下: wp=0.4*pi, ws=0.45*pi, Rp=5,Rs=10; 实验所用到的程序如下p j0p j (e )20lg (e )H H ωα=sj0s j (e )20lg (e )H H ωα=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 控制窗口上显示如下结果:(2)为了方便观察故设计了不同阶次N 的滤波器,即Butterworth 模拟原型低通滤波器,其程序代码如下:n=0:0.01:2; for ii=1:4 switch iicase 1,N=2; case 2,N=5; case 3,N=10; case 4,N=20;end [z,p,k]=buttap(N); [b,a]=zp2tf(z,p,k); [H,w]=freqs(b,a,n); magH2=(abs(H)).^2; hold on ;123456-60-50-40-30-20-10010频率/(rad/s)幅度/d B巴特沃什模拟低通滤波器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)利用冲激响应不变法,把系统函数为651)(2+++=s s s s H a 的模拟滤波器变换成等价的数字滤波器,采样间隔T=1S 。

先经过计算得到:2132651)(2+++=+++=s s s s s s H a ,则有如下式子 21112130067.01851.012209.00000.1112)(-------+---=---==zz z z e T z e T z H T T Matlab 实验参考程序如下:B=[1,1]; A=[1,5,6]; T=1; Fs=1/T;[Bz,Az]=impinvar(B,A,Fs); %用冲激响应不变法将模拟滤波器变换成数字滤波器0.20.40.60.81 1.2 1.4 1.6 1.8200.20.40.60.811.21.4w/wc|H (j w )|2Butterworth 模拟原型滤波器运行结果: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设计步骤:用MA TLAB 进行典型的数字滤波器的设计,一般步骤如下:(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 。

相关主题