基于MATLAB做巴特沃斯低通滤波器
- 格式:pdf
- 大小:4.18 MB
- 文档页数:30
龙源期刊网
基于Matlab的巴特沃斯滤波器设计
作者:王大伟贾荣丛王划一
来源:《现代电子技术》2012年第21期
摘要:为了得到较纯净的真实信号,对巴特沃斯模拟滤波器的幅频特性、设计方法及设计步骤进行了研究,利用Matlab程序,设计了巴特沃斯模拟滤波器,给出了Matlab设计程序,并分析了巴特沃斯模拟滤波器的幅频特性。
利用Matlab程序绘制了巴特沃斯模拟滤波器的幅频特性曲线,并利用Matlab实现了模拟滤波器原型到模拟低通、高通、带通、带阻滤波器的转换。
由模拟滤波器原型设计模拟高通滤波器的实例说明了滤波器频率转换效果。
关键词:模拟滤波器;巴特沃斯滤波器; Matlab;幅频特性
滤波器是一种允许某一特定频带内的信号通过,而衰减此频带以外的一切信号的电路,处理模拟信号的滤波器称为模拟滤波器。
在现代通信系统中,滤波是最常用的一种信号处理技术,一般用来衰减信号频谱中需要消除的部分,得到较纯净的真实信号。
三峡大学课程设计报告专业班级 20091421课程数字信号处理课程设计学号 2009142116 学生姓名姜祥奔指导教师王露2012年 5 月平时成绩(20%)报告成绩(40%)答辩成绩(40%)总成绩数字信号处理课程设计实验一:用双线性变换法和脉冲响应不变法设计IIR 数字滤波器采用双线性变换法设计一个巴特沃斯数字低通滤波器,要求:通带截止频率100Hz ,阻带截止频率200Hz ,通带衰减指标Rp 小于2dB ,阻带衰减Rs 大于15dB ,滤波器采样频率Fs=500Hz 。
绘制频率响应曲线。
理论部分:(原理及设计过程)第一步:论ω和f 的关系及数字域性能的公式表示。
模拟频率与数字频率之间为线性关系,T f T fT T s,101,24-===Ω=πω为抽样周期,故 ππω4.0500110021=⨯⨯==c c kHz f 对应于 修正后)2t a n (21c T ω=Ω ππω8.0500120021=⨯⨯==st st kHz f 对应于 修正后)2tan(21st T ω=Ω按衰减的定义2)()(log 204.0010≤πj j e H e H 15)()(log 208.0010≥πj j e H e H 设0=ω处频率响应幅度归一化为1,即1)(0=j e H ,则上两式变成2)(log 204.010-≥πj e H (1)15)(log 208.010-≤πj e H (2)这就是数字滤波器的性能指标的表达式。
2 下面把数字低通滤波器的性能要求转变为“样本”模拟低通滤波器的性能要求。
由T Ω=ω,按修正式)()(Tj H e H a j ωω≈,设没有混叠效应(即混叠效应设计完成后再进行校验) 则有πωωω≤Ω==),()()(j H TjH eH a a j (3)利用(3)式,由(1)、(2)式可写出模拟低通滤波器的指标为2)102(log 20)4.0(log 2021010-≥⨯=ππj H TjH a a …….(4) 15)104(log 20)8.0(log 2021010-≤⨯=ππj H TjH a a …(5) 3 计算“样本”模拟低通滤波器所需的阶数N 及3dB 截止频率C Ω。
利用MATLAB设计巴特沃斯低通数字滤波器引言数字滤波器是数字信号处理中的重要组成部分,可以用于去除信号中的噪音和不需要的频率成分。
巴特沃斯滤波器是一种常见的数字滤波器,被广泛应用于信号处理领域。
本文将介绍如何利用MATLAB设计巴特沃斯低通数字滤波器,并给出详细的步骤和示例代码。
设计步骤利用MATLAB设计巴特沃斯低通数字滤波器主要包括以下步骤:1.设计滤波器的参数2.计算滤波器的传递函数3.绘制滤波器的幅频响应曲线4.通过频域图像观察滤波器的性能下面将分别介绍每个步骤的详细操作。
设计滤波器的参数巴特沃斯低通数字滤波器的参数包括截止频率和阶数。
截止频率决定了滤波器的通频带,阶数决定了滤波器的陡峭程度。
通过MATLAB的butter()函数可以方便地设计巴特沃斯低通数字滤波器。
该函数的参数为滤波器的阶数和截止频率。
示例代码如下:order = 4; % 阶数cutoff_freq = 0.4; % 截止频率[b, a] = butter(order, cutoff_freq);计算滤波器的传递函数通过设计参数计算得到滤波器的传递函数。
传递函数是一个复数,包括了滤波器的频率响应信息。
使用MATLAB的freqz()函数可以计算滤波器的传递函数。
该函数的参数为滤波器的系数b和a,以及频率取样点的数量。
示例代码如下:freq_points = 512; % 频率取样点数量[h, w] = freqz(b, a, freq_points);绘制滤波器的幅频响应曲线经过计算得到的传递函数能够提供滤波器的幅频响应信息。
通过绘制幅频响应曲线,可以直观地观察滤波器的频率特性。
使用MATLAB的plot()函数可以绘制滤波器的幅频响应曲线。
该函数的参数为频率点和传递函数的幅值。
示例代码如下:magnitude = abs(h); % 幅值plot(w/pi, magnitude);xlabel('归一化频率');ylabel('幅值');title('巴特沃斯低通数字滤波器幅频响应');通过频域图像观察滤波器的性能通过绘制滤波器的频域图像,可以直观地观察滤波器对不同频率的信号的响应情况。
基于MATLAB的低通巴特沃斯滤波器仿真作者:刘凌云赵鹏宇弓美桃来源:《数字技术与应用》2013年第02期摘要:本文介绍了低通巴特沃斯滤波器的原理,分析了低通巴特沃斯滤波器的特性,然后用MATLAB对低通巴特沃斯滤波器进行了仿真。
关键词:低通巴特沃斯滤波器 MATLAB 仿真中图分类号:TN911.7 文献标识码:A 文章编号:1007-9416(2013)02-0124-011 巴特沃斯滤波器原理巴特沃斯滤波器是电子滤波器的一种,这种滤波器由英国工程师斯替芬·巴特沃斯(Stephen Butterworth)在1930年提出,它的特点是通频带内的频率响应曲线最大限度平坦,没有起伏,而在阻频带则逐渐下降为零。
可以构成低通、高通、带通和带阻四种组态,是目前最为流行的一类数字滤波器,经过离散化可以作为数字巴特沃思滤波器,较模拟滤波器具有精度高、稳定、灵活、不要求阻抗匹配等众多优点,因而在语音、图像、通信、雷达等众多领域得到了广泛应用,是一种具有最大平坦幅度响应的低通滤波器。
2 MATLAB简介MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案。
MATLAB主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
在信号处理中低通巴特沃斯滤波器常用的函数包括:2.1 buttord函数[N,wn]=buttord(wp,ws,rp,rs,'s')用于计算巴特沃斯数字滤波器的阶数N和3dB截止频率wn。
其中,调用参数wp,ws分别为数字滤波器的通带、阻带截止频率的归一化值,要求:0≤wp≤1,0≤ws≤1(1表示数字频率pi)。
⽤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设计巴特沃斯低通滤波器课程设计专业: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 的信号处理工具箱提供的函 数设计了巴特沃斯低通滤波器,使得巴特沃斯滤波器的设计变得更加简单、快捷、直观。
巴特沃斯(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。
fp=0.2*pi;fs=0.3*pi;Rp=1;Rs=15;Fs=1000;Wp=2*pi*fp;Ws=2*pi*fs;Nn=256;n=(0:100-1);[N,Wn]=buttord(Wp,Ws,Rp,Rs,'s'); [b,a]=butter(N,Wn,'s');w=linspace(1,300,100)*2*pi;H=freqs(b,a,w);figure(1);plot(w/(2*pi),20*log10(abs(H)));title('巴特沃斯模拟滤低通波器幅频特性'); xlabel('频率/Hz');ylabel('幅度/db');[bz,az]=impinvar(b,a,Fs);figure(2);zplane(bz,az);title('冲击响应不变法零极点分布图') figure(3)Subplot(2,1,1);freqz(bz,az,Nn,Fs);grid on;title('巴特沃斯数字滤波器幅频特性'); xlabel('幅度/Hz');ylabel('频率/db'); Subplot(2,1,2);title('巴特沃斯数字滤波器相频特性'); xlabel('幅度/Hz');ylabel('频率/db');grid on;ws1=0.2*pi;wp1 = 0.35*pi;wp2 = 0.65*pi;wc = [wp1/pi,wp2/pi];B=wp1-ws1;N = ceil(8/0.15);n=0:N-1;%%rectangle窗window=rectwin(N);[h1,w]=freqz(window,1);subplot(121);stem(window);xlabel('n');title('rectangle窗函数');hn = fir1(N-1,wc,Boxcar(N));[h2,w]=freqz(hn,1,512);figure(1)subplot(122);plot(w/pi,20*log(abs(h2)/abs(h2(1)))); grid;xlabel('w/pi');ylabel('幅度(dB)');title('rectangle滤波器的幅度特性'); ;%%blackman窗window=hamming(N);[h1,w]=freqz(window,1);figure(2)subplot(121);stem(window);xlabel('n');title('hamming窗函数');hn = fir1(N-1,wc,hamming(N));[h2,w]=freqz(hn,1,512);subplot(122);plot(w/pi,20*log(abs(h2)/abs(h2(1)))); grid;xlabel('w/pi');ylabel('幅度(dB)');title('hamming滤波器幅度特性'); %%hanning窗window=hanning(N);[h1,w]=freqz(window,1);figure(3)subplot(121);stem(window);xlabel('n');title('blackman窗函数');hn = fir1(N-1,wc,hanning(N));[h2,w]=freqz(hn,1,512);subplot(122);plot(w/pi,20*log(abs(h2)/abs(h2(1))));grid;xlabel('w/pi');ylabel('幅度(dB)');title('hanning滤波器的幅度特性'); %%blackman窗window=blackman(N);[h1,w]=freqz(window,1);figure(4)subplot(121);stem(window);xlabel('n');title('blackman窗函数');hn = fir1(N-1,wc,blackman(N));[h2,w]=freqz(hn,1,512);subplot(122);plot(w/pi,20*log(abs(h2)/abs(h2(1)))); grid;xlabel('w/pi');ylabel('幅度(dB)');title('blackman滤波器的幅度特性'); 第四题第五题。
分类号编号烟台大学毕业论文基于MATLAB设计巴特沃斯低通滤波器The Design of Butterworth Low-passing Filter Based on MA TLAB申请学位:院系:专业:姓名:学号:指导老师:2011年05 月26日烟台大学基于MA TLAB设计巴特沃斯低通滤波器姓名:导师:2011年05月26日烟台大学烟台大学毕业论文任务书院(系):光电信息科学技术学院[摘要]滤波器设计是数字信号处理的重要内容。
在MATLAB软件中有丰富的滤波器设计的相关命令,掌握相关的方法后可以提高我们的工作效率。
首先对巴特沃斯低通滤波器的特性进行研究,然后用MATLAB信号处理工具箱提供的函数设计出巴特沃斯低通滤波器模型,并对具体实例进行分析,使得巴特沃斯滤波器的设计更加快捷、直观、简单。
[关键词]巴特沃斯低通滤波器; MATLAB仿真;[Abstract]First,analyse the characteristics of Butterworth low-pass filter, second use MATLAB signal processing toolbox design the mode of Butterworth low - pass filter ,to study it though an explme. The method makes the design of Butterw orth filter quicklier ,more intuitively,and simp -lier.[Keywords] Butterworth low-pass filter; MATLAB simulation;目录1 绪论 (1)1.1 引言 (1)1.2 数字滤波器的设计原理 (1)1.3数字滤波器的应用 (2)1.4MATLAB的介绍 (3)1.5本文的工作及安排 (3)2 滤波器分类及比较 (5)2.1滤波器的设计原理 (5)2.2 滤波器分类 (5)2.3四种类型模拟滤波器的比较 (9)3巴特沃斯低通滤波器 (11)3.1巴特沃斯低通滤波器的设计原理 (11)4 MATLAB仿真及分析 (15)4.1 MATLAB工具箱函数 (15)4.2 巴特沃斯低通滤波器的MATLAB仿真 (15)5 结论与展望 (19)5.1 总结 (19)5.2 展望 (19)致谢 (20)参考文献 (21)1 绪论1.1 引言凡是有能力进行信号处理的装置都可以称为滤波器。