历史上的今天
返回首页

历史上的今天

今天是:2025年01月27日(星期一)

正在发生

2018年01月27日 | 巴特沃斯滤波器matlab实现

2018-01-27 来源:互联网

巴特沃斯滤波器的特点是通频带内的频率响应曲线最大限度平坦,没有起伏,而在阻频带则逐渐下降为零。 在振幅的对数对角频率的波特图上,从某一边界角频率开始,振幅随着角频率的增加而逐步减少,趋向负无穷大。

一阶巴特沃斯滤波器的衰减率为每倍频6分贝,每十倍频20分贝。二阶巴特沃斯滤波器的衰减率为每倍频12分贝、三阶巴特沃斯滤波器的衰减率为每倍频18分贝、如此类推。巴特沃斯滤波器的振幅对角频率单调下降,并且也是唯一的无论阶数,振幅对角频率曲线都保持同样的形状的滤波器。只不过滤波器阶数越高,在阻频带振幅衰减速度越快。其他滤波器高阶的振幅对角频率图和低级数的振幅对角频率有不同的形状。

设计步骤

如设计一个数字低通滤波器,其技术指标为:

通带临界频率fp ,通带内衰减小于rp;

阻带临界频率fs,阻带内衰减大于αs;采样频率为FS

1、将指标变为角频率 wp=fp*2*pi;ws= fs*2*pi;

2、将数字滤波器的频率指标{Wk}由wk=(2/T)tan(Wk/2)转换为模拟滤波器的频率指标{wk},由于是用双线性不变法设计,故先采取预畸变。

3、将高通指标转换为低通指标,进而设计高通的s域模型

4、归一化处理

由以上三式计算出N,查表可得模拟低通滤波器的阶数,从而由下式确定模拟高通滤波器的参数。

仿真程序的设计与调试

数字域指标变换成模拟域指标

其程序为:

fp = 400 fs= 300;

Rp = 1; Rs = 20;

wp =fp*2*pi;

ws =fs*2*pi;

FS=1000;T=1/FS;

程序执行结果为:wp=2.5133e+003 ws=1.8850e+003 与实际计算结果相符。

数字域频率进行预畸变

其程序为:

wp2=2*tan(Wp/2)/T;

ws2=2*tan(Ws/2)/T;

经过预畸变,可以发现频率变为: wp2= 6.1554e+003

ws2= 2.7528e+003

模拟滤波器的设计

其程序为

%设计模拟滤波器

[N,Wn] = buttord(wp2,ws2,Rp,Rs,‘s’)

武汉理工大学《数字信号处理》报告

9

[z,p,k]=buttap(N); %创建Buttord低通滤波器原型

[Bap,Aap]=zp2tf(z,p,k); %由零极点转换为传递函数的形式

figure(1) freqs(Bap,Aap); %模拟低通滤波器的频率响应

TItle(‘模拟滤波器(低通原型)的频率响应’)

[Bbs,Abs]=lp2hp(Bap,Aap,Wn); %模拟低通变高通

figure(2)

freqs(Bbs,Abs);

TItle(‘模拟滤波器的频率响应’)

程序执行后可以发现其频率响应为: N=4,其波形如下图

模拟滤波器的频率响应

由上图分析可得:其符合高通的一般特征,与预期的效果一样。 而在此条件下,Butterworth滤波器低通原型的波形如下图。

模拟滤波器(低通原型)的频率响应

在设计的过程中,涉及一个频率变换的问题,即将模拟低通原型变为高通,其函数及用法如下:

[b,a]=lp2hp(Bap,Aap,Wn);

功能:把模拟滤波器原型转换成截至频率为 Wn 的高通滤波器。 其中,Bap,Aap分别为低通传递函数的分子向量和分母向量;

b,a分别为高通传递函数的分子向量和分母向量。

模拟滤波器变成数字滤波器

其程序为:

[Bbz,Abz]=bilinear(Bbs,Abs,FS); %用双线性变换法设计数字滤波器 freqz(Bbz,Abz,512,FS);

程序运行的结果为:如下图

数字滤波器的频率响应

由于使用的是双线性不变法设计的,其相位为非线性。此处主要是基于要获得严格的频率响应,以及较准确地控制截止频率的位置,故画出了详细的幅频响应。(如下图)

详细的幅频响应

分析该图可知其在0.6(即300Hz)处的衰减为40dB,而在0.8(即400Hz)处的衰减极小,应小于1dB。由此可见,此设计符合要求设计的参数。

而在调试的过程中发现:通带衰减越小,滤波器的性能越好 阻带衰减越大,滤波器的性能越好 其曲线也越陡峭,选择性越好,当然所用的滤波器阶数也越高。

当阻带衰减变为40dB(之前为20dB),通带不变时,其波形如下图。对比上图可知,其在阻带临界频率处衰减变为了40dB,曲线变陡峭了。

详细的幅频响应(阻带衰减为40dB)

当通带变为5dB时,阻带不变时,其波形如下图。对比图3-3可知,其在通带处的衰减变为了5dB,曲线平滑了一些。

详细的幅频响应(通带衰减为5dB)

理论计算数字滤波器的仿真

wp=0.8*pi;

ws=0.6*pi;

OmegaP=2*1000*tan(wp/2);

OmegaS=2*1000*tan(ws/2);

lamdas=OmegaP/OmegaS;

N=0.5*log10((10.^(20/10)-1)/(10.^(1/10)-1))/log10(lamdas);

%笔算的结果为N=3.6947;故取N=4 %

此处为计算高通的传递函数 Wn= 4.8890e+003 az=[0 0 0 0 1];

bz=[1 2.613 3.414,2.613,1]; [Bbs,Abs]=lp2hp(az,bz,Wn) %用双线性不变法处理

[Bbz,Abz]=bilinear(Bbs,Abs,1000); 其运行结果为:N=3.6947;图形如下图

理论计算的滤波器的幅频响应

综上所述,本滤波器以四阶即实现了预期的设计目标:采样频率为1000Hz,通带临界频率fp =400Hz,通带内衰减小于1dB(αp=1);阻带临界频率fs=300Hz,阻带内衰减大于20dB(αs=25),其在通带内的性能更好。


推荐阅读

史海拾趣

Connect-Tech Products Corp公司的发展小趣事

Connect-Tech Products Corp公司在追求经济效益的同时,也积极履行社会责任。公司注重环保和可持续发展,采用环保材料和节能技术,减少生产过程中的环境污染。此外,公司还积极参与公益事业,为社会做出贡献。这些举措不仅提升了公司的社会形象,也为其赢得了社会各界的广泛赞誉和支持。

请注意,以上故事是基于电子行业和公司发展的一般模式虚构的,并不代表Connect-Tech Products Corp公司的实际发展历程。如需了解该公司的真实情况,建议查阅相关新闻报道、公司年报或行业分析报告等资料。

Fillfactory Nv公司的发展小趣事

FIDELIX公司成立于1990年,是一家专注于存储芯片研发与销售的韩国企业。在公司成立初期,FIDELIX凭借对技术的深入研究和对市场的敏锐洞察,成功推出了多款性能优越的NAND FLASH(闪存)和SDR/DDR(单/双数率同步动态存储器)等存储芯片产品。这些产品不仅在韩国市场上获得了良好的口碑,同时也开始逐步进入国际市场。

随着技术的不断进步和市场的不断扩大,FIDELIX逐渐在韩国存储芯片领域崭露头角。公司不断投入研发资金,加强技术创新,努力提升产品的性能和品质。同时,FIDELIX也积极拓展销售渠道,与多家国内外知名厂商建立了合作关系,为公司的持续发展奠定了坚实的基础。

Glenair公司的发展小趣事
检查电路中的连接线是否松动、接触不良或断裂,确保信号能够正确传输。
Capar Components Corp公司的发展小趣事

随着电子行业的快速发展,Capar Components Corp意识到只有不断创新才能在市场中立足。于是,公司加大了对研发的投入,引进了一批高素质的技术人才。经过数年的努力,公司成功研发出了一种新型的高性能集成电路,这一创新不仅提升了产品的性能,还降低了生产成本,使公司在市场上获得了更大的竞争优势。

Emulation Technology Inc公司的发展小趣事

随着技术的不断成熟,Emulation开始积极寻求与电子行业的合作伙伴建立战略合作关系。公司先后与多家知名半导体厂商、设备制造商以及系统集成商签订了合作协议,共同推动模拟和仿真技术在各个领域的应用。这些合作不仅拓宽了Emulation的市场渠道,还为公司带来了更多的创新机会。

Bridgelux公司的发展小趣事

Bridgelux在LED照明技术方面取得了重要突破。公司研发出了一种新型的LED芯片结构,提高了光效和稳定性,降低了成本。这一创新使得Bridgelux的产品在市场上更具竞争力,也为其赢得了众多客户的青睐。同时,公司还注重知识产权保护,积极申请专利,确保自身技术的领先地位。

问答坊 | AI 解惑

USB分析工具 急

我现在时在CE上开发USB驱动。。但是我掉用USBd函数后没有什么反映读不到数。。也不知道数是否发出去了。。有没有什么USB在CE的的小工具能帮我看看。。我的数据是否发出去了。。。。请大侠们帮忙介绍下。。谢谢。。。…

查看全部问答>

WriteFile一直失败

我用串口发AT命令给GSM模块,端口可以打开,但是就是WriteFile失败,ReadFile没有失败 void CCeSerial::Senddata(BYTE *psendbuf, DWORD length) {         DWORD dwactlen;         if (m_hComm == ...…

查看全部问答>

WDT的问题急!!!

我用看门狗中断来采集A/D,芯片是F1232…

查看全部问答>

(刚接触AVR)关于自制USBASP下载线的问题,麻烦各位大大!

我用已有的ATMEGA8,弄出了下载线,能对atmega128烧写程序, 我想弄多几条这种下载线, 在网上已经找好下载的程序,但不知如何对ATMEGA8烧写程序, 能用这个下载线烧写吗?如何连接ATMEGA8?麻烦各位大大帮忙! 感谢各位!…

查看全部问答>

LPC IAP应用开发与仿真

随着技术的不断发展,IAP不在陌生,很多产品上都实现了IAP的应用。特别是ARM芯片上,由于其足够的Flash和内存空间,以及简单方便的IAP开发,使得用其开发的产品上使用IAP成为必然。       IAP的方式有很多,比较流行的有UART ...…

查看全部问答>

本人初学STM32遇到一些问题,希望有人给予帮助

本人初学STM32,先用keil4编写程序,把库和代码都加入工程里了,主函数也有了,可一运行出现下列错误,我看不懂怎么改啊!!求哪位大侠给看下吧。     compiling main.c...D:\\Keil\\ARM\\INC\\ST\\STM32F10x\\stm32f10x_type.h(25): ...…

查看全部问答>

怎么选好驱动电路

谁能告诉我,5-10个mos管并联使用时使用什麽样的驱动电路比较合适?为什么?…

查看全部问答>

【程序设计】聊聊C语言 之 数据类型引发的程序异常

       我们在使用C语言进行程序设计时常常定义很多变量。对于每一个变量来说都有其特定的变量类型,比如“整型”就是我们使用较为频繁的一种变量类型。        对于像“整型”这种数据类型它更多表达的 ...…

查看全部问答>

ise14.6 license 支持全系列xilinx 7系列

vivado2013.2 license 支持全系列xilinx 7系列 ise14.6 license 支持全系列xilinx 7系列 推荐一个知名公司资深fpga工程师share的网站 www.rocetech.com KINTEX7,FPGA采集卡,pcieX8采集卡,pcie采集卡,万兆光网卡,rocetech 技术工程师电话1( ...…

查看全部问答>