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

一阶巴特沃斯滤波器的衰减率为每倍频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),其在通带内的性能更好。

设计一个三阶巴特沃斯滤波器_巴特沃斯滤波器matlab实现相关推荐

  1. 设计一个三阶巴特沃斯滤波器_二、三阶巴特沃斯滤波器电路设计—电路精选(47)...

    巴特沃斯滤波器是电子滤波器的一种.这种滤波器最先由英国工程师斯替芬·巴特沃斯(Stephen Butterworth)在1930年发表在英国<无线电工程>期刊的一篇论文中提出的.巴特沃斯滤 ...

  2. python设计一个学生类求最高分_设计一个学生类班级类

    第一题 设计一个学生类 属性:姓名.学号.年龄.成绩 设计一个班级类要求:实现向班级中添加学生.删除学生.查看学生.按照指定条件排序 属性:班级代号,所有学生 需要使用 calss, __int__, ...

  3. 设计一个简单分页存储管理系统_【系统架构】如何设计一个简单灵活的收银系统?看这里!(1)...

    在电商项目中,收银系统是一个不可或缺的功能,因为你不仅要通过它来进行收款.退款,而且也要通过它进行财务的对账.报税等.因此,如何设计一个简单灵活的收银系统,对于开发电商项目来说非常重要. 那如何设计一 ...

  4. 设计一个分步式登录系统_分布式系统:何时构建它们以及如何扩展。 分步指南。

    设计一个分步式登录系统 It always strikes me how many junior developers are suffering from impostor syndrome whe ...

  5. 卡尔曼滤波器_使用卡尔曼滤波器和路标实现机器人定位

    本文为 AI 研习社编译的技术博客,原标题 : Robot localization with Kalman-Filters and landmarks 作者 | Jannik Zürn 翻译 | 郭 ...

  6. 能使曲线变平滑的一维滤波器_音响电源滤波器有什么作用?有人说能提升音质!你信不信?...

    我们日常使用音响听音乐,讨论了很多关于喇叭.箱体.音源等影响音质的话题.今天我们来谈谈音响电源滤波器,可能有些人还很陌生,它到底有什么作用?其实,音响电源滤波器在音响系统里面发挥着非常重要的角色. 现 ...

  7. 设计一个三阶巴特沃斯滤波器_巴特沃斯滤波器频率设计及增益多项式方程

    在之前的滤波器教程中,我们研究了简单的一阶型低通和高通滤波器,它们的RC滤波器电路设计中只包含一个电阻器和一个无功元件(电容器). 在使用滤波器对信号的频谱进行整形的应用中,例如在通信或控制系统中,滚 ...

  8. 设计一个三阶巴特沃斯滤波器_设计巴特沃斯滤波器只需要确定两个参数,是什么?...

    buttord (1)[N,wc]=buttord(wp,ws,αp,αs) 用于计算巴特沃斯数字滤波器的阶数N和3dB截止频率wc. 调用参数wp,ws分别为数字滤波器的通带.阻带截止频率的归一化值 ...

  9. 设计一个三阶巴特沃斯滤波器_设采样频率 ,用脉冲响应不变法设计一个三阶巴特沃斯数字低通滤波器。截止频率为 。并画出该滤波器的结构...

    匿名用户 1级 2011-01-05 回答 1-2基于Butterworth模拟滤波器原型,使用双线性状换设计数字滤波器:各参数值为:通带截止频率Omega=0.2*pi,阻带截止频率Omega=0. ...

最新文章

  1. 还是这个序列化的解释比较好懂
  2. Android典型界面设计(8) ——ViewPager+PagerSlidingTabStrip实现双导航
  3. 【Python基础】嵌套 JSON 秒变 Dataframe!
  4. 在Google Cloud platform上创建Kubernetes cluster并使用
  5. jenkins source files 和 Remove Prefix 用户
  6. python还是java好找工作_你觉得学 Python 还是 Java 更好找工作?
  7. 《Unix环境高级编程》学习之Unix标准
  8. 信息系统分析与设计----系统分析概述
  9. Extendsim 系统仿真的强大工具,多方法论模拟--介绍和试用
  10. 条码打印软件之PDF的拆分合并功能
  11. MATLAB伽罗域是什么,利用伽罗华域的运算来计算生成矩阵
  12. 【BZOJ2827】千山鸟飞绝 hash+堆+SBT
  13. 解决问题“The App ID ‘XXXXX‘ appears to be in use by the App Store, so it can not be removed at this ti”
  14. 广德现场:夜山明·潮牌酒倾情助阵第七届国际山地自行车开赛!
  15. 玩转STM32F0 Value Line Discovery 之 时钟配置工具
  16. 图片无损放大,让图片放大不模糊不失真
  17. stm32F103RCT6串口ttl烧录代码手把手教学
  18. 前端在线预览 tiff 格式的图片
  19. JAVA给你讲它的故事
  20. 数据分析人必看,分享一个完整的数据分析流程

热门文章

  1. 智能穿戴手表/手环的应用方案说明
  2. 利用opencv进行圆形标志提取和质心计算
  3. TESTmain.c:(.text+0x15): undefined reference to `TESTscan‘
  4. MS Learn 学堂|借用 Power Apps 搭建用章申请与管理平台
  5. 入门 labelImg 数据标注
  6. 数据库 左连接 右连接 全连接用法小结
  7. eclipse的使用心得
  8. TextView使用drawable属性
  9. 数学建模论文写作学习——问题重述与问题分析写作规范
  10. 三角函数和指数函数图像