基于matlab的切比雪夫及巴特沃斯低通、高通滤波器的设计
[Matlab]切比雪夫Ⅰ型滤波器设计:低通、高通、带通和带阻
[Matlab]切⽐雪夫Ⅰ型滤波器设计:低通、⾼通、带通和带阻切⽐雪夫Ⅰ型滤波器特点:1、幅度特性是在⼀个频带内(通带或阻带)范围内具有等波纹特性;2、Ⅰ型在通带范围内是等波纹的,在阻带范围内是单调的。
测试代码:% Cheby1Filter.m% 切⽐雪夫Ⅰ型滤波器的设计%clear;close all;clc;fs = 1000; %Hz 采样频率Ts = 1/fs;N = 1000; %序列长度t = (0:N-1)*Ts;delta_f = 1*fs/N;f1 = 50;f2 = 100;f3 = 200;f4 = 400;x1 = 2*0.5*sin(2*pi*f1*t);x2 = 2*0.5*sin(2*pi*f2*t);x3 = 2*0.5*sin(2*pi*f3*t);x4 = 2*0.5*sin(2*pi*f4*t);x = x1 + x2 + x3 + x4; %待处理信号由四个分量组成X = fftshift(abs(fft(x)))/N;X_angle = fftshift(angle(fft(x)));f = (-N/2:N/2-1)*delta_f;figure(1);subplot(3,1,1);plot(t,x);title('原信号');subplot(3,1,2);plot(f,X);grid on;title('原信号频谱幅度特性');subplot(3,1,3);plot(f,X_angle);title('原信号频谱相位特性');grid on;%设计⼀个切⽐雪夫低通滤波器,要求把50Hz的频率分量保留,其他分量滤掉wp = 55/(fs/2); %通带截⽌频率,取50~100中间的值,并对其归⼀化ws = 90/(fs/2); %阻带截⽌频率,取50~100中间的值,并对其归⼀化alpha_p = 3; %通带允许最⼤衰减为 dbalpha_s = 40;%阻带允许最⼩衰减为 db%获取阶数和截⽌频率[ N1 wc1 ] = cheb1ord( wp , ws , alpha_p , alpha_s);%获得转移函数系数[ b a ] = cheby1(N1,alpha_p,wc1,'low');%滤波filter_lp_s = filter(b,a,x);X_lp_s = fftshift(abs(fft(filter_lp_s)))/N;X_lp_s_angle = fftshift(angle(fft(filter_lp_s)));figure(2);freqz(b,a); %滤波器频谱特性figure(3);subplot(3,1,1);plot(t,filter_lp_s);grid on;title('低通滤波后时域图形');subplot(3,1,2);plot(f,X_lp_s);title('低通滤波后频域幅度特性');subplot(3,1,3);plot(f,X_lp_s_angle);title('低通滤波后频域相位特性');%设计⼀个⾼通滤波器,要求把400Hz的频率分量保留,其他分量滤掉wp = 350/(fs/2); %通带截⽌频率,取200~400中间的值,并对其归⼀化ws = 380/(fs/2); %阻带截⽌频率,取200~400中间的值,并对其归⼀化alpha_p = 3; %通带允许最⼤衰减为 dbalpha_s = 20;%阻带允许最⼩衰减为 db%获取阶数和截⽌频率[ N2 wc2 ] = cheb1ord( wp , ws , alpha_p , alpha_s);%获得转移函数系数[ b a ] = cheby1(N2,alpha_p,wc2,'high');%滤波filter_hp_s = filter(b,a,x);X_hp_s = fftshift(abs(fft(filter_hp_s)))/N;X_hp_s_angle = fftshift(angle(fft(filter_hp_s)));figure(4);freqz(b,a); %滤波器频谱特性figure(5);subplot(3,1,1);plot(t,filter_hp_s);grid on;title('⾼通滤波后时域图形');subplot(3,1,2);plot(f,X_hp_s);title('⾼通滤波后频域幅度特性');subplot(3,1,3);plot(f,X_hp_s_angle);title('⾼通滤波后频域相位特性');%设计⼀个带通滤波器,要求把50Hz和400Hz的频率分量滤掉,其他分量保留wp = [65 385 ] / (fs/2); %通带截⽌频率,50~100、200~400中间各取⼀个值,并对其归⼀化ws = [75 375 ] / (fs/2); %阻带截⽌频率,50~100、200~400中间各取⼀个值,并对其归⼀化alpha_p = 3; %通带允许最⼤衰减为 dbalpha_s = 20;%阻带允许最⼩衰减为 db%获取阶数和截⽌频率[ N3 wn ] = cheb1ord( wp , ws , alpha_p , alpha_s);%获得转移函数系数[ b a ] = cheby1(N3,alpha_p,wn,'bandpass');%滤波filter_bp_s = filter(b,a,x);X_bp_s = fftshift(abs(fft(filter_bp_s)))/N;X_bp_s_angle = fftshift(angle(fft(filter_bp_s)));figure(6);freqz(b,a); %滤波器频谱特性figure(7);subplot(3,1,1);plot(t,filter_bp_s);grid on;title('带通滤波后时域图形');subplot(3,1,2);plot(f,X_bp_s);title('带通滤波后频域幅度特性');subplot(3,1,3);plot(f,X_bp_s_angle);title('带通滤波后频域相位特性');%设计⼀个带阻滤波器,要求把50Hz和400Hz的频率分量保留,其他分量滤掉wp = [65 385 ] / (fs/2); %通带截⽌频率?,50~100、200~400中间各取⼀个值,并对其归⼀化ws = [75 375 ] / (fs/2); %阻带截⽌频率?,50~100、200~400中间各取⼀个值,并对其归⼀化alpha_p = 3; %通带允许最⼤衰减为 dbalpha_s = 20;%阻带允许最⼩衰减为 db%获取阶数和截⽌频率[ N4 wn ] = cheb1ord( wp , ws , alpha_p , alpha_s);%获得转移函数系数[ b a ] = cheby1(N4,alpha_p,wn,'stop');%滤波filter_bs_s = filter(b,a,x);X_bs_s = fftshift(abs(fft(filter_bs_s)))/N;X_bs_s_angle = fftshift(angle(fft(filter_bs_s)));figure(8);freqz(b,a); %滤波器频谱特性figure(9);subplot(3,1,1);plot(t,filter_bs_s);grid on;title('带阻滤波后时域图形');subplot(3,1,2);plot(f,X_bs_s);title('带阻滤波后频域幅度特性');subplot(3,1,3);plot(f,X_bs_s_angle);title('带阻滤波后频域相位特性');效果:原始信号:⽣成的低通滤波器和滤波后的效果:⽣成的⾼通滤波器和滤波后的结果:⽣成的带通滤波器和滤波后的结果:⽣成的带阻滤波器和滤波后的结果:。
基于matlab的切比雪夫及巴特沃斯低通高通滤波器的设计
巴特沃斯低通、切比雪夫低通、高通IIR滤波器设计05941401 1120191454 焦奥一、设计思路IIR滤波器可以分为低通、高通、带通、带阻等不同类型的滤波器,而以系统函数类型又有巴特沃斯、切比雪夫等滤波器。
其中巴特沃斯较为简单,切比雪夫较为复杂;低阶比高阶简单,但却有着不够良好的滤波特性。
在满足特定的指标最低要求下,低阶、巴特沃斯滤波器能更大程度地节省运算量以及复杂程度。
滤波器在不同域内分为数字域和模拟域。
其中数字域运用最广泛。
在设计过程中,一般是导出模拟域的滤波器,之后通过频率转换变为数字域滤波器,实现模拟域到数字域的传递。
在针对高通、带通、带阻的滤波器上,可以又低通到他们的变换公式来进行较为方便的转换。
综上,IIR滤波器的设计思路是,先得到一个满足指标的尽可能简单的低通模拟滤波器,之后用频域变换转换到数字域。
转换方法有双线性变换法、冲激响应不变法等。
虽然方法不同,但具体过程有很多相似之处。
首先将数字滤波器的指标转换为模拟滤波器的指标,之后根据指标设计模拟滤波器,再通过变换,将模拟滤波器变换为数字滤波器,是设计IIR滤波器的最基本框架。
以下先讨论较为简单的巴特沃斯低通滤波器。
二、巴特沃斯低通滤波假设需要一个指标为0~4hz内衰减小于3db、大于60hz时衰减不小于30db的滤波器。
其中抽样频率为400hz。
以双线性变换方法来设计。
首先将滤波器转换到模拟指标。
T =1f f ⁄=1400Ωf ′=2ff f =8ff f =Ωf ′f =0.02fΩf ′=2ff f =120ff f =Ωf ′f =0.3f根据双线性变换Ω=2f tan (f 2) 得到Ωf =25.14Ωf =407.62这就得到了模拟域的指标。
由巴特沃斯的方程Α2(Ω)=|f f (f Ω)|2=11+(ΩΩf )2f20ff |f f (f Ω)|=−10ff [1+(ΩΩf)2f] {20ff |f f (f Ωf )|≥−320ff |f f (f Ωf )|≤−30ff得到{ −10ff [1+(Ωf Ωf)2f ]≥−3−10ff [1+(Ωf Ωf )2f]≤−30当N取大于最小值的整数时,解出N=2,因此为二阶巴特沃斯低通滤波器。
matlab 切比雪夫带通滤波器实现
matlab 切比雪夫带通滤波器实现
本文将介绍如何使用MATLAB实现切比雪夫带通滤波器。
切比雪夫带通滤波器是一种数字滤波器,用于将一定范围内的频率信号从输入信号中滤除。
使用 MATLAB 对信号进行数字滤波可以得到更加精确的结果,并且可以方便地进行可视化分析。
步骤:
1. 定义需要滤波的信号。
可以使用 MATLAB 自带的信号生成函数,如 sin、cos 等,也可以导入自己的信号数据。
2. 定义切比雪夫带通滤波器的参数。
主要包括通带频率、阻带频率、通带最大衰减、阻带最小衰减等。
3. 使用 MATLAB 自带的函数 butter 设计数字滤波器。
其中,第一个参数为滤波器的阶数,第二个参数为通带或阻带的频率,第三个参数为滤波器类型,可以选择带通、带阻、低通或高通等。
4. 使用设计好的滤波器对输入信号进行滤波。
可以使用MATLAB 自带的函数 filter 实现。
5. 对滤波后的信号进行可视化展示。
可以使用 MATLAB 自带的绘图函数 plot 进行绘制。
6. 分析滤波效果。
通过观察滤波后的信号波形和频谱图,可以评估滤波器的效果是否符合要求。
总之,使用 MATLAB 实现切比雪夫带通滤波器可以帮助我们更加精确地处理信号,并且可以通过可视化手段来分析滤波效果。
- 1 -。
用matlab编程设计切比雪夫低通滤波器
目录1摘要 (3)2设计原理 (4)2.1 切比雪夫滤波器介绍 (4)2.2滤波器的分类 (5)2.3 模拟滤波器的设计指标 (6)3切比雪夫I型滤波器 (7)3.1 切比雪夫滤波器的设计原理 (7)3.2切比雪夫滤波器的设计步骤 (10)3.3 用matlab编程设计切比雪夫低通滤波器 (11)4 总结 (18)5 参考文献 (18)摘要随着信息和数字时代的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。
在现代通信系统中,由于信号中经常混有各种复杂成分,因此很多信号的处理都是基于滤波器而进行的。
所以,数字滤波器在数字信号处理中起着举足轻重的作用。
而数字滤波器的设计都要以模拟滤波器为基础的,这是因为模拟滤波器的理论和设计方方法都已发展的相当成熟,且有典型的模拟滤波器供我们选择。
,如巴特沃思滤波器、切比雪夫滤波器等。
本次课程设计将运用MATLAB设计一个基于切比雪夫低通滤波器,并出所设计滤波器的幅度及幅度衰减特性。
关键词:滤波切比雪夫模拟低通1切比雪夫滤波器介绍在巴特沃兹滤波器中,幅度响应在通带和阻带内都是单调的。
因此,若滤波器的技术要求是用最大通带和阻带的逼近误差来给出的话,那么,在靠近通带低频端和阻带截止频率以上的部分都会超出技术指标。
一种比较有效的途径是使逼近误差均匀地分布于通带或阻带内,或同时在通带和阻带内都均匀分布,这样往往可以降低所要求的滤波器阶次。
通过选择一种具有等波纹特性而不是单调特性的逼近方法可以实现这一点。
切比雪夫型滤波器就具有这种性质:其频率响应的幅度既可以在通带中是等波纹的,而在阻带中是单调的(称为I 型切比雪夫滤波器),也可以在通带中是单调的,而在阻带中是等波纹的(称为II 型切比雪夫滤波器),其中切比雪夫II 型滤波器又称为逆切比雪夫滤波器。
I 型切比雪夫滤波器的幅度平方函数是2|)(|Ωj H C =)/(1122c N C ΩΩ+ε (2.1) 其中ε是一个小于1的正数,它与通带波纹有关,ε越大,波纹也越大,式中为N 阶切比雪夫多项式,定义为)cos cos()(1x N x C N -= (2.2) 当N 大于或等于1时,从定义切比雪夫多项式可以直接得出由)(x C N 和)(1x C N -求)(1x C N +的递推公式。
用MATLAB设计巴特沃斯低通滤波器
⽤MATLAB设计巴特沃斯低通滤波器⽤MATLAB 设计巴特沃斯低通滤波器1 巴特沃斯低通滤波器的特性⼀个理想低通滤波器的幅频特性如图3-80的阴影部分所⽰。
为了实现这个理想低通特性,需要在从0~ωC 的整个频带内增强增益,在ω>ωC 增益要降到0。
实际上,理想滤波器是不可能实现的。
图3-78是实际滤波器的幅频特性。
但是实际滤波器的特性愈接近理想特性愈好,巴特沃斯(Butterworth )滤波器就是解决这个问题的⽅法之⼀。
巴特沃斯滤波器以巴特沃斯函数来近似滤波器的系统函数,巴特沃斯的低通模平⽅函数为:221|()|1,2,,1(/)NC H j N j j ωωω==+ (3-138)式中以C ω是滤波器的电压-3dB 点或半功率点。
不同阶次的巴特沃斯滤波器特性如图3-79(a)所⽰。
4阶巴特沃斯滤波器的极点分布如图3-79(b)所⽰。
巴特沃斯滤波器幅频响应有以下特点:最⼤平坦性:在0=ω附近⼀段范围内是⾮常平直的,它以原点的最⼤平坦性来逼近理想低通滤波器。
通带、阻带下降的单调性。
这种滤波器具有良好的相频特性。
3dB 的不变性:随着N 的增加,频带边缘下降越陡峭,越接近理想特性。
但不管N 是多少,幅频特性都通过-3dB 点。
极点配置在半径为ωC 的圆上,并且均匀分布。
左半平⾯上的N 个极点是)(s H 的极点,右半平⾯上的N 个极点是)(s H -的极点。
2 巴特沃斯低通滤波器的实现为使巴特沃斯滤波器实⽤,我们必须能够实现它。
⼀个较好的⽅法是将巴特沃斯滤波器函数化成若⼲⼆阶节级联,其中每⼀节实现⼀对共轭复极点。
通过将极点以共轭复数的形式配对,对所有的每⼀个⼆阶节都具有实系数。
1图3-78 低通滤波器的幅频特性图3-80所⽰运算放⼤器电路为实现⼀对共轭极点提供了很好的⽅法。
电路的系统函数为202202121121122121)(1)11(1)(ωωω++=+++=s Qs C C R R s C R C R s C C R R s H (3-139)式中,ω0是S 平⾯原点与极点之间的距离,Q 被称为电路的“品质因数”,它提供了对响应峰值尖锐程度的⼀种度量。
数字信号处理课程设计-基于MATLAB的巴特沃斯低通滤波器以切贝雪夫低通滤波器的设计
各专业全套优秀毕业设计图纸吉首大学信息科学与工程学院课程设计报告书课程:数字信号处理教程_______________________课题:基于MATLAB的巴特沃斯低通滤波器以切贝雪夫低通滤波器的设计姓名: _________________________学号:—专业:通信工程___________________________________年级:2012 级 __________________________________________指导教师: _______________________________________基地指导教师: _________________________________________2014年12 月一、项目介绍与设计目的1. 通过实验加深对巴特沃斯低通滤波器以及切贝雪夫低通滤波器基本原理的理解。
2. 学习编写巴特沃斯低通滤波器和切比雪夫的MATLA仿真程序。
3. 滤波器的性能指标如下:通带截止频率fp=3kHz,通带最大衰减Rp=2dB阻带截止频率fst=6kHz,阻带最小衰减As=30db二、设计方案1. 项目环境要求MATLAB软件2. 设计内容一.理论设计:模拟巴特沃思低通滤波器的设计1.有技术指标可求的设计参数Q p=6000 n rad/s; Q st=12000n rad/s;Rp=2db; As=30 db2■求N;2 1g(Q p/QJ=5.369 取N=63■确定参数=1971.114. 求系统函数Han( s) =1/(1+3.8637033S+7.4641016S A2+9.141620S A3+7.4641016S A4+3.8637033S A5+S A6) 5. 去归一化(I严叶_]严xlabel( 'f(kHz)' );ylabel( 'dB' );axis([-1,12,-55,1])set(gca, 'xtickmode' , 'manual' ,‘xtick' ,[0,1,2,3,4,5,6,7,8,9,10]); Set(gca, 'ytickmode' , 'maunal' , 'ytick' ,[-50,-40,-30,-2,-10,0]);grid;输出结果N=6b=5.8650e+25a=1 7.5158e+04 2.9000e+09 7.0010e+13 1.1267e+18 1.1496e+22 5.8650e+25dbHx=2.0000 33.7692在matlab 中显示如下:a =L De+025 *0.0000 0.0000 0. 0000 0. 0000 0. 0000 0. 0011 b =5.86505.8650e+025dbHx =2.0000 33.7962程序运行结果如下故系统函数为:Ha(s)=5.8650*10A25/(s A6+7.6158*10A4s A5+2.9000*10A9s A4+7.0010*10A13s A3+1.1267*10*18 s A2+1.1496*10A32s+5.8650*10A25)(2)切贝雪夫型低通滤波器程序:clc , clear all ;OmegaR=2*pi*3000;OmegaS=2*pi*6000;Rp=2;As=30; g=sqrt((10A(As/10)-1”(10A(Rp/10)-1)); OmegaR=OmegaS/OmegaPN=ceil(log10(g+sqrt(g*g-1))/log10(OmegaR+sqrt(OmegaR*OmegaR-1)))OmegaC=OmegaS;[zO,pO,kO]=cheb2ap(N,As);aO=real(poly(pO))aNn=aO(N+1);p=pO*OmegaC;a=real(poly(p))aNu=a(N+1);bO=real(poly(zO));M=le ngth(bO);bNn=bO(M);z=zO*OmegaC;b=real(poly (z));bNu=b(M);k=k0*(aNu*b Nn )/(a Nn *bNu);b=k*bwO=[OmegaP,OmegaS];[H,w]=freqs(b,a);Hx=freqs(b,a,wO);dbHx=-20*log10(abs(Hx)/max(abs(H))) plot(w/(2*pi)/1000,20*log10(abs(H)));xlabel( 'f(kHz)' );ylabel( 'dB' );axis([-1,12,-55,1])set(gca, 'xtickmode' , 'manual' , 'xtick' ,[0,1,2,3,4,5,6,7,8,9,10]);Set(gca, 'ytickmode' , 'maunal' , 'ytick' ,[-50,-40,-30,-20,-10,0]);grid;输出结果:N=4b=0.0316 0 3.5954e+08 0 5.1099e+17A=1 6.6533e+04 2.2247e+09 4.3659e+13 5.1099e+17程序运行结果如下图此低通滤波器的系统函数为:Ha(s)=0.0316s A4+3.5954*10A8S A2+5.1099*10A17/(S A4+6.6533*10A4S A3+2.2247*10A9S A2+4.3659*10A13S+5.1099*10A17)三、总结和分析通过本次butterworth低通滤波器的设计,使我对低通数字滤波器的工作原理和特性有了深刻的认识和了解,实验主要用到了matlab软件。
基于MATLAB的切比雪夫I型模拟低通滤波器设计
基于MATLAB的切比雪夫I型模拟低通滤波器设计课程设计名称:数字信号处理课程设计专业班级:电信0604学生姓名:学号:20064300430指导教师:课程设计时间:2009. 6. 8-2009. 6. 14数字信号处理专业课程设讣任务书学生姓名专业班级电信0604学号20064300430题U基于MATLAB的切比雪夫I型模拟低通滤波器设讣课题性质其他课题来源自拟课题指导教师同组姓名根据已学的知识并结合MATLAB来设计一个切比雪夫I型模拟低通滤波器,技术指标如下:R, ldB通带截止频率:fp二1000Hz,通带最大衰减:p主要内容A,25 dB阻带截止频率:fs二1500Hz,阻带最小衰减:s画出滤波器的幅频、相频特性曲线。
1(写出设计原理和设计思路,画出程序流程图2(用MATLAB画出幅频特性图任务要求3(用MATLAB画出相频特性图4(用MATLAB画出零极点图1(程佩青著,《数字信号处理教程》,清华大学出版社,20012 (Sanjit K. Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB 参考文献版)》,电子工业出版社,2003年1月3(郭仕剑等,《MATLAB 7. x数字信号处理》,人民邮电出版社,2006年指导教师签字:审查意见教研室主任签字:年月日说明:本表由指导教师填写,山教研室主任审核后下达给选题学生,装订在设计(论文)首页内容包括:一设计内容与技术要求设计一个切比雪夫I型模拟低通滤波器,满足指标如下:通带截止频率:R, ldBfp二1000Hz,通带最大衰减:,阻带截止频率:fs=1500Hz,阻带最小pA, 25 dB衰减:,写出设汁原理和设计思路,画出程序流程图,用MATLABs编写程序并画出幅频特性图,相频特性图和零极点图。
二设计原理及设计思路1设计原理Chebyshev滤波器是在通带或阻带上频率响应幅度等波纹波动的滤波器。
在通带波动的为“ChebyshevI型滤波器”,在阻带波动的为“ChebyshevI I滤波器”。
基于MATLAB的巴特沃斯切比雪夫滤波器设计
滤波器的幅频响应基本上都是理想状态,在现
作用。通过运算的方式使得信号中频率成分达到所 实情况下是无法实现的。在实际当中,我们自行设
设定的比例或直接滤掉一些频率成分的器件。数字、 计的滤波器都是在规定的基本原则下相对理想滤波
模拟滤波在理论概念上是相同的,只是对进来信号 器较为相近,这样就确保了滤波器在物理层面上是
一 滤波器的基本概念
(一) 什么是滤波器
response digital filter, 简称 IIR 滤波器)和有限冲激(脉 冲)响应数字滤波器(Finite impulse response digital filter, 简称 FIR 滤波器)两种形式。
滤波器,顾名思义,其作用是过滤信号波形的
过滤的方法以及滤波信号的形式不同。数字滤波器 可以实现并且具有较高的稳定性能。
相对来说精度方面比较高,便于携带,滤波功能比 二 模拟原型滤波器
较强大。
课 程
Байду номын сангаас
模拟滤波器只能用硬件来实现,其元件是电阻、
本节介绍常用的模拟原型滤波器的主要特点及
与
电容、电感及运算放大器等。数字滤波器实现滤波 其 MATLAB 实 现, 包 括 Butterworth、Chebyshev I,
关键词:滤波器;Matlab;巴特沃斯;切比雪夫
在无线电通信、非电量及微弱信号检测、数字 信号进行频谱分析的软件,其中的工具箱更是将复
信号处理、自动控制等电路中所能接收到的信号通 杂的设计程序简化为简单的函数调用模式,设定正
常都是很微弱的,且其中还掺杂有无用或有害的信 确的参数后,就会得到所要的结果,使用起来非常
教 学
的形式大致分为两种,一是通过编写所需要的程序 ChebyshevII, 原型低通滤波器的设计。模拟原型滤波
基于MATLAB做巴特沃斯低通滤波器
基于MATLAB设计巴特沃斯低通滤波器课程设计专业:XXXXXX姓名:XXX学号: XX指导老师:XXX2011年11 月26日通信系统仿真课程设计任务书院(系):电气信息工程学院目录1 绪论 (1)1.1 引言 (1)1.2 数字滤波器的设计原理 (1)1.3 数字滤波器的应用 (2)1.4 MATLAB的介绍 (3)1.5 本文的工作及安排 (3)2 滤波器分类及比较 (4)2.1 滤波器的设计原理 (4)2.2 滤波器分类 (4)2.3 两种类型模拟滤波器的比较 (6)3 巴特沃斯低通滤波器 (7)3.1 巴特沃斯低通滤波器简介 (7)3.2 巴特沃斯低通滤波器的设计原理 (7)4 MATLAB仿真及分析 (11)4.1 MATLAB工具箱函数 (11)4.2 巴特沃斯低通滤波器的MATLAB仿真 (11)另附程序调试运行截图: (13)5.1 总结 (13)5.2 展望 (13)1 绪论1.1 引言凡是有能力进行信号处理的装置都可以称为滤波器。
滤波器在如今的电信设备和各类控制系统里面应用范围最广、技术最为复杂,滤波器的好坏直接决定着产品的优劣。
自60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。
使以数字滤波器为主的各种滤波器得到了飞速的发展,到70年代后期,数字滤波器的单片集成已被研制出来并得到应用。
80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。
90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。
当然,对数字滤波器本身的研究仍在不断进行。
[1]滤波器主要分成经典滤波器和数字滤波器两类。
从滤波特性上来看,经典滤波器大致分为低通、高通、带通和带阻等。
本文主要对低通数字滤波器做主要研究。
1.2 数字滤波器的设计原理所谓数字滤波器,是指输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。
简述基于MATLAB设计巴特沃斯低通滤波器
基于MATLAB 设计巴特沃斯低通滤波器摘 要: 首先分析了巴特沃斯低通滤波器的特性。
然后用MATLAB 的信号处理工具箱提供的函 数设计了巴特沃斯低通滤波器,使得巴特沃斯滤波器的设计变得更加简单、快捷、直观。
巴特沃斯(Butterworth)滤波器是一种具有最大平坦幅度响应的低通滤波器,它在通信领域里已有广应用,在电测中也具有广泛的用途,可以作检测信号的滤波器。
MATLAB 语言是一种面向科学与工程计算的语言。
它编程效率高,测试程序手段丰富,扩展能力强,内涵丰富。
它的信号处理工具箱(Signal Processing Toolbox)提供了设计巴特沃斯滤波器的函数,本文充分利用这些函数,进行了巴特沃斯滤波器的程序设计,并将其作为函数文件保存,可方便地进行调用。
1. 巴特沃斯低通滤波器的特性巴特沃斯低通滤波器的平方幅度响应为: n c j H 22)(11)(ωωω+=其中,n 为滤波器的阶数,ωc 为低通滤波器的截止频率。
该滤波器具有一些特殊的性质:① 对所有的n ,都有当 ω=0时,|H(j0)|2 =1;② 对所有的n ,都有当ω=ωc 时,|H(j ωc )|2 =0.5 ,即在ωc 处有3dB 的衰减;③|H(j ω)|2 是ω的单调递减函数,即不会出现幅度响应的起伏;④ 当n →+∞时,巴特沃斯滤波器趋向于理想的低通滤波器;⑤ 在ω=0处平方幅度响应的各级导数均存在且等于0,因此|H(j ω)|2 在该点上取得最大值,且具有最大平坦特性。
图l 展示了2阶、4阶、8阶巴特沃斯低通滤波器的幅频特性。
可见阶数n 越高,其幅频特性越好,低频检测信号保真度越高。
巴特沃斯与贝塞尔(Besse1)、切比雪夫(Cheby.shev)滤波器的特性差异如图2所示。
从图2可以看出,巴特沃斯滤波器在线性相位、衰减斜率和加载特性三个方面具有特性均衡的优点,因此在实际使用中,巴特沃斯滤波器已被列为首选。
2 .巴特沃斯低通滤波器的MATLAB实现MATLAB的信号处理工具箱提供了有关巴特沃斯滤波器的函数buttap、buttord、butter。
基于切比雪夫I型的高通滤波器设计Matlab
图1-1 LSI 系统若y(n)、x(n)的傅立叶变换存在,则输入输出的频域关系是:Y()()*()j j j e X e H e ωωω= (B.7)当输入信号x(n)通过滤波器系统h(n)后,其输入y(n)中不再具有|ω|<c ω的频率域成分,仅使|ω|>c ω的信号成分通过。
因此,滤波器的形状不同,其滤波后的信号也不同样。
若滤波器的输入、输出都是离散时间信号,那么该滤波器的单位冲激响应h(n)也必然是离散的,这种滤波器称为为数字滤波器(DF, Digital Filter )。
当用硬件实现一个DF 时,所需的元件是延迟器、乘法器和加法器:而运用MATLAB 软件时,它仅需线性卷积程序便可以实现。
众所周知,模拟滤波器(AF, Analog Filer)只能用硬件来实现,其元件是电阻R ,电感L ,电容C 及运算放大器等。
因此DF 的实现要比AF 容易得多,且更容易获得较抱负的滤波性能。
滤波器的种类滤波器的种类很多,分类方法也不同,可以从功能上分,也可以从实现方法上分,或从设计方法上分等。
但总的来说,滤波器可分为两大类,即经典滤波器和现代滤波器。
经典滤波器是假定输入信号x(n)中的有用成分和无用成分(如噪声)各自占有不同的频带,当x(n)通过滤波器后可将无用成分有效滤去。
假如信号中的有用成分和无用成分的频带互相重叠,那么经典滤波器将无法滤除信号中的无用成分。
现代滤波器理论研究的重要内容是从具有噪声的数据记录(又称为时间时间系列)中估计出信号的某些特性或信号自身。
一旦信号被估计出,那么估计出的信号与原信号相比较高的信噪比。
现代滤波器把信号和噪声都视为随机信号,运用它们的记录特性(如自相关函数、功率谱等)推导出一套最佳的估值算法,然后用硬件或软件予以实现。
现在滤波器理论源于维纳在20世纪40年代及其以后的工作,因此维纳滤波器便是这一类滤波器的典型代表。
此外,尚有卡尔曼滤波器、线性预测滤波器、自适应滤波器等。
基于MATLAB的巴特沃斯低通滤波器的设计
H (s)
1
(s p(1))( s p(2))(s p(n))
所以事实上 z 为空阵。上述零极点形式可以化为:
H (s)
sn
k bni s n1
b1s b0
其中 b0
n c
,令
c
1rad / s ,得到巴特沃斯滤波器归一化结果,如表
1
所示。
表 1 n 1 ~ 8阶的巴特沃斯滤波器系数
h(n)= ha(nT) 其中 T 是抽样周期。 如果令 Ha(s)是 ha(t)的拉普拉斯变换,H(z)为 h(n)的 z 变换,利用 抽样序列的 z 变换与模拟信号的拉普拉斯变换的关系,得:
X (z) zesT
1 T
Xa
k
(s
jks )
1 T
k
X
a
s
姓名: 班级: 学号: 时间:2011 年 6 月
设计题目
基于 MATLAB 的巴特沃斯低通滤波器的设计
设计要求
1. 通过实验加深对巴特沃斯低通滤波器基本原理的理解。 2.学习编写巴特沃斯低通滤波器的 MATLAB 仿真程序 3. 滤波器的性能指标如下:通带截止频率 fp=5kHz,通带最大衰减 p =2dB,阻带截止频率 fs=12kHz,阻带最小衰减 s =30dB
滤波器的性能指标如下:通带截止频率 fp=5kHz,通带最大衰减 p =2dB,
阻带截止频率 fs=12kHz,阻带最小衰减 s =30dB
3.1MATLAB 中所需函数
ATLAB 的信号处理工具箱提供了滤波器的函数 buttap、buttord、butter。 由[z,p,k] = buttap(n)函数可设计出 n 阶巴特沃斯低通滤波器原型,其传递函数 为
高通滤波器(matlab编写)切比雪夫
设计一个高通滤波器,并检验它的性能采样率为10kHZ阻带边缘为1.5Khz,衰减为40bB通带边缘为2kHz,波纹为3Db采用切比雪夫2型滤波器Fs=1e4 ; fs=1.5e3; fp=2e3; As=40; Rp=3 ;wp=2*fp/Fs; ws=2*fs/Fs;用MA TLAB工具:设计的滤波器性能>>Fs=1e4;>>fs=1.5e3;>>fp=2e3;>>As=40;>>Rp=3;>>wp=2*fp/Fs;>>ws=2*fs/Fs;>>[N,wn]=cheb2ord(wp,ws,Rp,As);>>[b,a]=cheby2(N,As,wn,'high');>>[db,mag,pha,grd,w]=freqz_m(b,a);>> subplot(2,2,1);plot(w/pi,mag);>> axis([0,1,0,1]);>> setX([0 0.3 0.4 1]);>>setY([0.01 0.7279 1])>> title('Magnitude Response');>> subplot(2,2,2);plot(w/pi,db);>> axis([0 1 -70 0])>> setX([0 0.3 0.4 1])>> setY([-40 -2.7589])>> title('Magnitude Response in dB');输入信号x=cos(0.6*pi*n); 取200个抽样值,为了便于观看,在画图是裁剪掉100个值不直观,直接做频谱图为了说明该滤波器的性能,做一组对比。
换上另一种频率的信号x=cos(0.2*pi*n);由上图可以看到该信号完全被滤去了可以看出在20和180点的信号几乎淹没了。
DSP课程设计 MATLAB实现切比雪夫滤波器的分析与设计
目录1 课题综述 (1)1.1 课题来源 (1)1.2预期目标 (1)1.3 面对的问题 (1)1.4 需要解决的关键技术 (1)2 系统分析 (2)2.1 涉及的基础知识 (2)2.2 解决的基本思路 (2)2.3 总体方案 (2)2.4 功能模块框图 (2)3 详细设计 (3)3.1 巴特沃斯低通滤波特性(MATLAB) (3)3.2 巴特沃斯高通滤波特性(MATLAB) (4)3.3 切比雪夫低通滤波特性(MATLAB) (4)3.4 切比雪夫高通滤波特性(MATLAB) (4)4 程序调试 (5)4.1 巴特沃斯低通滤波特性 (5)4.2 巴特沃斯高通滤波特性 (6)4.3 切比雪夫低通滤波特性 (8)4.4 切比雪夫高通滤波特性 (9)5 运行与测试 (10)5.1 选择音频文件(WAV) (10)5.2 滤波后音频特点 (10)6 全文代码设计 (10)总结 (14)致谢 (15)参考文献 (16)1 课题综述1.1 课题来源随着数字集成电路,设备和系统技术的快速进步,通过数字方法进行信号处理已变得越来越有吸引力。
大规模一般用途的计算机和特殊用途硬盘的高效性,已使得实时滤波既实用又经济。
目前主要有两类滤波器,模拟滤波器和数字滤波器,它们在物理组成和工作方式上完全不同,而模拟滤波器的技术发展已相当成熟,所以研究的重点基本上放在了数字滤波器上。
滤波器的功能是用来移除信号中不需要的部分,比如随机噪声;或取出信号中的有用部分,如位于某段频率范围内的成分。
目前随着计算机技术和数字信号处理器芯片的发展,使我们更为便利地识别和提取各种各样的信号。
因此研究不同数字滤波器的设计原理和稳定性分析对于满足军事、航空、民营等等各个领域的信号处理要求具有十分重要的意义。
1.2 预期目标能够理解并掌握无限脉冲响应数字滤波器(IIR)的机理,分析IIR滤波器的结构特性,观察IIR滤波器的频域特性。
能够通过MATLAB实现巴特沃斯,切比雪夫的高通低通滤波器的幅频响应,相频响应,以及零极点的图像的勾画。
基于MATLAB的巴特沃思和切比雪夫低通滤波器的设计
第一章数字滤波器及MATLAB语言概述数字滤波是语音和图像处理、模式识别、谱分析等应用中的一个基本处理算法,在数字信号处理中占有极其重要的地位。
研究基于Matlab 环境下的IIR数字滤波器的设计与实现,给出了相应的Matlab函数命令,并将滤波器应用于图像噪声的去除,取得了不同的效果,就其结果做出了进一步的解释和说明。
数字滤波器是具有一定传输选择性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性不变离散系统。
它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号输出分量。
MATLAB是美国MathWorks公司推出的一套用于工程计算的可视化高性能语言与软件环境。
MATLAB为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。
它以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。
MATLAB推出的工具箱使各个领域的研究人员可以直观方便地进行科学研究、工程应用,其中的信号处理(signalproeessing)、图像处理(imageproeessing)、小波(wavelet)等工具箱为数字滤波研究的蓬勃发展提供了有力的工具。
数字滤波器与模拟滤波器相比,具有精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及能实现模拟滤波器无法进行的特殊滤波等优点。
本文主要介绍有限冲激响应数字滤波器(FIR)和无限冲激响应数字滤波器(IIR)的设计原理、方法、步骤以及在MATLAB中的实现,并以实例形式列出设计程序和仿真结果。
第二章 方案提取和技术要求第一节 方案提取IIR 数字滤波器是一种离散时间系统,其系统函数为假设M ≤N ,当M >N 时,系统函数可以看作一个IIR 的子系统和一个(M-N)的FIR 子系统的级联。
IIR 数字滤波器的设计实际上是求解滤波器的系数和 ,它是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。
数字信号处理课程设计-基于MATLAB的巴特沃斯低通滤波器以切贝雪夫低通滤波器的设计
各专业全套优秀毕业设计图纸吉首大学信息科学与工程学院课程设计报告书课程:数字信号处理教程课题:基于MATLAB的巴特沃斯低通滤波器以切贝雪夫低通滤波器的设计姓名:学号:专业:通信工程年级: 2012级指导教师:基地指导教师:2014年12 月一、项目介绍与设计目的1.通过实验加深对巴特沃斯低通滤波器以及切贝雪夫低通滤波器基本原理的理解。
2.学习编写巴特沃斯低通滤波器和切比雪夫的MATLAB仿真程序。
3.滤波器的性能指标如下:通带截止频率fp=3kHz,通带最大衰减Rp=2dB,阻带截止频率fst=6kHz,阻带最小衰减As=30db二、设计方案1.项目环境要求MATLAB 软件2.设计内容一.理论设计:模拟巴特沃思低通滤波器的设计1.有技术指标可求的设计参数Ωp=6000πrad/s; Ωst=12000πrad/s;Rp=2db; As=30 db2.求N;=5.369取N=63.确定参数=1971.114.求系统函数Han(s)=1/(1+3.8637033S+7.4641016S^2+9.141620S^3+7.4641016S^4+3.8637033S^5+S^6)5.去归一化H(s)=Han(s/Ωc)=0.7648/(0.7648+3.0910s^5+6.2424s^4+7.9947S^3+6.6300S^2+0.6949)化简可得Ha(s)=5.8650*10^25/(s^6+7.6158*10^4s^5+2.9000*10^9s^4+7.0010*10^13s^3+1.12 67*10*18s^2+1.1496*10^32s+5.8650*10^25)切比雪夫低通滤波器1.由技术指标可得ε=1/(10^0.1As)=0.031N>=arcch[]/arch()取N=4系统函数为:Ha(s)=0.0316s^4+3.5954*10^8S^2+5.1099*10^17/(S^4+6.6533*10^4S^3+2.2247*10^9S^2+4.365 9*10^13S+5.1099*10^17)二.程序设计(1)巴特沃斯低通滤波器程序:clc,clear all;OmegaP=2*pi*3000;OmegaS=2*pi*6000;Rp=2;As=30;N=ceil(log10((10^(As/10)-1)/(10^(Rp/10)-1))/(2*log10(OmegaS/OmegaP)))OmegaC=OmegaP/((10^(Rp/10)-1)^(1/(2*N)));[z0,p0,k0]=buttap(N);p=p0*OmegaC;a=real(poly(p))k=k0*OmegaC^N;b0=real(poly(z0));b=k*b0w0=[OmegaP,OmegaS];[H,w]=freqs(b,a);Hx=freqs(b,a,w0);dbHx=-20*log10(abs(Hx)/max(abs(H)))plot(w/(2*pi)/1000,20*log10(abs(H)));xlabel('f(kHz)');ylabel('dB');axis([-1,12,-55,1])set(gca,'xtickmode','manual','xtick',[0,1,2,3,4,5,6,7,8,9,10]);Set(gca,'ytickmode','maunal','ytick',[-50,-40,-30,-2,-10,0]);grid;输出结果N=6b=5.8650e+25a=1 7.5158e+04 2.9000e+09 7.0010e+13 1.1267e+18 1.1496e+22 5.8650e+25 dbHx=2.0000 33.7692在matlab中显示如下:程序运行结果如下故系统函数为:Ha(s)=5.8650*10^25/(s^6+7.6158*10^4s^5+2.9000*10^9s^4+7.0010*10^13s^3+1.12 67*10*18s^2+1.1496*10^32s+5.8650*10^25)(2)切贝雪夫型低通滤波器此低通滤波器的系统函数为:Ha(s)=0.0316s^4+3.5954*10^8S^2+5.1099*10^17/(S^4+6.6533*10^4S^3+2.2247*10^9S^2+4.365 9*10^13S+5.1099*10^17)。
用matlab编程设计切比雪夫低通滤波器教材
目录1摘要 (3)2设计原理 (4)2.1 切比雪夫滤波器介绍 (4)2.2滤波器的分类 (5)2.3 模拟滤波器的设计指标 (6)3切比雪夫I型滤波器 (7)3.1 切比雪夫滤波器的设计原理 (7)3.2切比雪夫滤波器的设计步骤 (10)3.3 用matlab编程设计切比雪夫低通滤波器 (11)4 总结 (18)5 参考文献 (18)摘要随着信息和数字时代的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。
在现代通信系统中,由于信号中经常混有各种复杂成分,因此很多信号的处理都是基于滤波器而进行的。
所以,数字滤波器在数字信号处理中起着举足轻重的作用。
而数字滤波器的设计都要以模拟滤波器为基础的,这是因为模拟滤波器的理论和设计方方法都已发展的相当成熟,且有典型的模拟滤波器供我们选择。
,如巴特沃思滤波器、切比雪夫滤波器等。
本次课程设计将运用MATLAB设计一个基于切比雪夫低通滤波器,并出所设计滤波器的幅度及幅度衰减特性。
关键词:滤波切比雪夫模拟低通1切比雪夫滤波器介绍在巴特沃兹滤波器中,幅度响应在通带和阻带内都是单调的。
因此,若滤波器的技术要求是用最大通带和阻带的逼近误差来给出的话,那么,在靠近通带低频端和阻带截止频率以上的部分都会超出技术指标。
一种比较有效的途径是使逼近误差均匀地分布于通带或阻带内,或同时在通带和阻带内都均匀分布,这样往往可以降低所要求的滤波器阶次。
通过选择一种具有等波纹特性而不是单调特性的逼近方法可以实现这一点。
切比雪夫型滤波器就具有这种性质:其频率响应的幅度既可以在通带中是等波纹的,而在阻带中是单调的(称为I 型切比雪夫滤波器),也可以在通带中是单调的,而在阻带中是等波纹的(称为II 型切比雪夫滤波器),其中切比雪夫II 型滤波器又称为逆切比雪夫滤波器。
I 型切比雪夫滤波器的幅度平方函数是2|)(|Ωj H C =)/(1122c N C ΩΩ+ε (2.1) 其中ε是一个小于1的正数,它与通带波纹有关,ε越大,波纹也越大,式中为N 阶切比雪夫多项式,定义为)cos cos()(1x N x C N -= (2.2) 当N 大于或等于1时,从定义切比雪夫多项式可以直接得出由)(x C N 和)(1x C N -求)(1x C N +的递推公式。
基于MATLAB的切比雪夫低通滤波器设计_王建行
2011 年 12 月 Dec. 2011
基于 MATLAB 的切比雪夫低通滤波器设计
王建行,姚齐国
(浙江海洋学院 机电工程学院,浙江 舟山 316000)
摘 要: 讨论了 IIR 数字滤波器的设计思想,以切比雪夫低通滤波器的设计为例,讨论了用 MATLAB 软件 的设计过程,并通过与理想滤波效果比较,展示了在 MATLAB 环境下设计数字滤波器的可靠性和高效性 . 关键词: 数字滤波器; MATLAB;无限脉冲响应;仿真与分析 中图分类号: TP301.6 文献标志码: A 文章编号: 1674–3326(2011) 06–0531–03
2 ( )]1/ 2 ,其中 <1(正数 ),它与通带波 切比雪夫 I 型滤波器平方幅度响应函数为: | G ( j ) | [1 2 C N 2
纹有关, 越大,波纹也越大;CN ( ) 是切比雪夫多项式,它被定义为: C N ( ) cos(N arccos( )), | | 1,
2
MATLAB 软件简介
MATLAB 是用于数值计算和图形处理的数学计算环境,在 MATLAB 环境下,用户可集成程序设计、
数值计算、图形绘制、输入输出、文件管理等 . MATLAB 系统最初由 Cleve Moler 用 FORTRAN 语言设计, 现在的 MATLAB 程序是由 MathWorks 公司用 C 语言开发的 . 经过多年改进,不断升级,它的工具箱功能 越来越强,应用越来越广泛 . MATLAB 语言的特点可归纳如下 [5]:1)简单易学 . MATLAB 不仅是一个开发软 件,也是一门编程语言,其语法规则与结构化高级编程语言 (如 C 语言等 )大同小异,使用更为简便 . 2)计算
MATLAB 提供功能强大的、交互式的二维和三维绘图功能,可供用户绘制富有表现力的彩色图形,可
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
求低通原型 Ω������������ = ������1 cot
求阶次 N ε= N≥ ������������������������������
1 ε
100.1������ 1 − 1 = 100.1������ 2 − 1
٠������������ ٠������
100.3 − 1 = 1 ������������������������������4.91 2.27 = = 1.97 ������������������������������1.89 1.25
100.3 − 1 = 1
求N N≥ ������������������������������ 100.1������ 2 − 1
٠������ ٠������
������������������������������
=
������������������������������ ������������������������������
������������������������������
=
则 N=2,系统函数(因为Ω������ 为 1,故系统函数即原型函数) 0.50 + 0.64������ + 0.71
得到结果 bz = 0.0009 0.0019 az = 1.0000 -1.9114 0.9152 0.0009
bz 为分母,az 为分子,从左到右分别为 1、负一次方、负二次方。
验证表示结果正确。
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 -60 0.1 0 -70
DB值
代入求得数值 ������������ ������ = 632.02 ������ 2 + 32.45������ + 632.02
这样便得到了模拟滤波器的函数,利用双线性变换的公式转换到数字域 s= 2 1 − ������ −1 ������ 1 + ������ −1
得到数字域滤波器
������ ������ =
焦奥
根据双线性变换 Ω= 2 ������ tan ������ 2 得到 Ω������ = 25.14 Ω������ = 407.62 这就得到了模拟域的指标。 由巴特沃斯的方程 Α2 Ω = ������������ ������Ω
2
= 1+
1
٠٠������ 2������
20������������ ������������ ������Ω
Wc=203.81; b=[0 0 0.5*Wc^2];
a=[1 0.64*Wc 0.71*Wc^2]; [bz,az]=bilinear(b,a,200) w=[0:500]*pi/500; [H,w]=freqz(bz,az); f=200*w/(2*pi); subplot(121); plot(f,abs(H),'k'); xlabel('频率'); ylabel('幅值'); axis([0 50 0 1]); subplot(122); plot(f,20*log10(abs(H)),'k'); xlabel('频率'); ylabel('DB值'); axis([0 95 -50 1]); hold on plot([0 30],[-3 -3],'r'); hold on plot([30 30],[-180 -3],'r'); hold on text(30,-3,'30hz£¬3db'); text(40,-48,'90hz,´óÓÚ40db');
巴特沃斯低通、切比雪夫低通、高通 IIR 滤波器设计
05941401 1120141454
一、设计思路 IIR 滤波器可以分为低通、高通、带通、带阻等不同类型的滤波器,而以系统 函数类型又有巴特沃斯、切比雪夫等滤波器。其中巴特沃斯较为简单,切比雪夫 较为复杂;低阶比高阶简单,但却有着不够良好的滤波特性。在满足特定的指标 最低要求下,低阶、巴特沃斯滤波器能更大程度地节省运算量以及复杂程度。 滤波器在不同域内分为数字域和模拟域。其中数字域运用最广泛。在设计过 程中,一般是导出模拟域的滤波器,之后通过频率转换变为数字域滤波器,实现 模拟域到数字域的传递。在针对高通、带通、带阻的滤波器上,可以又低通到他 们的变换公式来进行较为方便的转换。 综上, IIR 滤波器的设计思路是, 先得到一个满足指标的尽可能简单的低通模 拟滤波器,之后用频域变换转换到数字域。 转换方法有双线性变换法、冲激响应不变法等。虽然方法不同,但具体过程 有很多相似之处。 首先将数字滤波器的指标转换为模拟滤波器的指标,之后根据 指标设计模拟滤波器, 再通过变换, 将模拟滤波器变换为数字滤波器, 是设计 IIR 滤波器的最基本框架。 以下先讨论较为简单的巴特沃斯低通滤波器。 二、巴特沃斯低通滤波 假设需要一个指标为 0~4hz 内衰减小于 3db、大于 60hz 时衰减不小于 30db 的滤波器。其中抽样频率为 400hz。 以双线性变换方法来设计。 首先将滤波器转换到模拟指标。 1 T = 1 ������ = ������ 400 Ω������ ′ = 2������������ ������ = 8������ ������������ = Ω������ ′������ = 0.02������ Ω������ ′ = 2������������ ������ = 120������ ������������ = Ω������ ′������ = 0.3������
0.0859
0.1719 az =
0.0859
1.0000
-1.0801
0.5682
数值正确。 以下设计切比雪夫高通滤波器 四、切比雪夫高通滤波器 求高通滤波器的常用方法是模拟低通转化为数字高通。 指标:通带截止频率 3khz,衰减不大于 3db;阻带上限截止频率 2khz, 衰减不小于 14db。抽样频率 10khz。 1 T = 1 ������ = ������ 10������ Ω������ ′ = 2������������ ������ = 6������������ ������������ = Ω������ ′������ = 0.6������ Ω������ ′ = 2������������ ������ = 4������������ ������������ = Ω������ ′������ = 0.4������ 根据双线性变换,并令Ω������ = 1 ������1 = Ω������ tan ������������ = 1.38 2 ������������ = 1.89 2
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
DB值 幅值
0 30hz , 3db -5 -10 -15 -20 -25 -30 -35 -40 -45 90hz, 大 于 40db 0 10 20 30 频率 40 50 -50 0 20 40 60 频率 80
满足指标要求。 bz =
0.00095 + 0.0019������ −1 + 0.00095������ −2 1 − 1.91������ −1 + 0.91������ −2 至此,设计完成。
接下来用 matlab 实现上述变换设计。
b=[0 0 632.02]; a=[1 35.45 632.02]; [bz,az]=bilinear(b,a,400) w=[0:500]*pi/500; [H,w]=freqz(bz,az); f=400*w/(2*pi); subplot(121); plot(f,abs(H),'k'); xlabel('频率'); ylabel('幅值'); axis([0 50 0 1]); subplot(122); plot(f,20*log10(abs(H)),'k'); xlabel('频率'); ylabel('DB值'); axis([0 100 -70 2]); holdon plot([0 4],[-3 -3],'r'); holdon plot([4 4],[-180 -3],'r'); hold on plot([60 60],[-180 -48.5],'b'); hold on plot([0 60],[-48.5 -48.5],'b'); plot([0 200],[-30 -30],'g'); text(6,-3,'6hz,3db'); text(60,-45,'60hz,大于30db'); text(60,-30,hz , 3db -10
-20
-30
30db
幅值
-40 60hz, 大 于 30db -50
0
10
20 30 频率
40
50
0
50 频率
100
因为 N 取了 2,取为整数,大于计算的值,所以在 60hz 时,衰减超出指标。 以下讨论切比雪夫滤波器。 三、切比雪夫滤波器 切比雪夫滤波器是另一种滤波器,使用较为广泛的是低通滤波器,也能够通 过变换转化为其他滤波类型的滤波器。 以下设计切比雪夫低通滤波器,仍用双线性变换法。频率脉冲响应法与双线 性变换法的区别仅仅在于两个域的转换方面,在设计模拟滤波器的方面,是没有 影响的。频率脉冲法计算更加复杂,而且有混叠效应;双线性法通过预畸减小了 误差,并且没有混叠。 给出指标: 0~30hz 内衰减小于 3db、 大于 90hz 时衰减不小于 40db 的滤波器。 其中抽样频率为 200hz。 1 T = 1 ������ = ������ 200 Ω������ ′ = 2������������ ������ = 60������ ������������ = Ω������ ′������ = 0.3������ Ω������ ′ = 2������������ ������ = 180������