算法学习 - 模拟滤波器(巴特沃斯、贝塞尔、切比雪夫、椭圆)及IIR滤波器设计

摘要:
在进行信号处理算法的嵌入式代码实现时,经常需要设计滤波器来对信号进行预处理或者后处理。常用的有IIR滤波器和FIR滤波器。虽然IIR滤波器在稳定性和相位响应上比FIR滤波器较差,但是在相同滤波需要下IIR的MIPS和内存要求要少很多。本文将从工程实践的角度来讲解IIR滤波器的设计。本文采用间接法设计数字滤波器:先设计模拟低通滤波器在通过双线性变换法得到数字低通、高通、带通、带阻滤波器。
先介绍几种模拟滤波器及其特性,方便根据实际需求来选择滤波器类型。
1. 巴特沃斯 Butterworth

也被称作最大平坦滤波器。巴特沃斯滤波器的特点是通频带内的频率响应曲线最大限度平坦,没有纹波。
一阶巴特沃斯滤波器的衰减率为每倍频6分贝,每十倍频20分贝。二阶巴特沃斯滤波器的衰减率为每倍频12分贝、三阶巴特沃斯滤波器的衰减率为每倍频18分贝、如此类推。巴特沃斯滤波器的振幅对角频率单调下降,并且也是唯一的无论阶数,振幅对角频率曲线都保持同样的形状的滤波器。只不过滤波器阶数越高,在阻频带振幅衰减速度越快
MATLAB Butterwirth滤波器设计函数:
[b,a] = butter(n,Wn,‘ftype’)
[z,p,k] = butter(n,Wn,‘ftype’)
[A,B,C,D] = butter(n,Wn,‘ftype’)
n-滤波器阶数
‘ftype’ Wn归一化频率[0,1]
‘high’ 高通截断频率Wn
‘low’ 低通截断频率Wn
‘stop’ 带阻频率Wn = [w1 w2]
‘bandpass’ 带通频率Wn = [w1 w2]
z是零点响应矢量,p是极值响应矢量,k是gain值。
b,a 为IIR直接型的分子分母参数:

  • 2
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值