常见三种陷波滤波器(Notch Filter)的离散化设计

为了学习陷波器,几乎把全网的陷波器有关文章都看了一遍,整理下,加深印象,也给后来的朋友作参考,文章内容大部分直接复制过来,但是所有内容代码我都测试了一遍,其中有些错误之处,也作了修改。

陷波滤波器形式有很多种,一般简单的形式传递函数为:

在这里插入图片描述

这种形式滤波器陷波深度不可调

陷波滤波器差分方程推导(双线性变换法)

以100hz陷波频率为例,matlab代码如下:

f = 100;          % Hz
w = 2*pi*f;       % rad/s
zeta = 0.707;
num = [1 0  w*w];
den = [1 2*zeta*w w*w];
G = tf(num, den);
bode(G);
grid on;

从bode图中可以看出
a. 信号在100Hz处急速衰减
b. 调整阻尼比ζ,可以调节100Hz处的衰减特性

离散形式代码,很简单,我就不传了。

二参数陷波滤波器:

 这种形式滤波器可以直接调节陷波带宽,缺点:陷波深度不可调

可参考这篇文章,推导很详细,代码可用:

https://blog.csdn.net/u013581448/article/details/116743786

三参数陷波滤波器:

这种滤波器陷波深度与带宽可调,传递函数:

 

wn:陷波频率;
k1:陷波因子1;
k2:陷波因子2;


采用双线性变换,其本质是一种数值积分法,采用梯形方法来近似计算积分。经过简要推导可以得到:

 

 将式(2)带入式(1)可得,
在这里插入图片描述
将式(3)利用字符进行替换可得,
在这里插入图片描述
其中,
在这里插入图片描述
利用z变换的信号滞后特点可以得到以下形式:
在这里插入图片描述


最终可以得到离散形式如下:
在这里插入图片描述
通过式(7)的就可以得到输入信号经过陷波滤波器后的输出信号的完整离散形式。

式(6)(7)有误,稍改正如下,感谢网友指出:

 

陷波器的三个重要指标:

Wn:陷波中心频率

depth:陷波深度(中心频率处的衰减倍数)

Wb:陷波带宽(衰减到-3db时频率差值)

陷波器陷波系数K1,K2推导如下:

                设陷波器的基本传递函数为:

①:将s域传递函数转化到G[jw](直接将s换为jw即可)

 ②:利用中心频率计算ζ1、ζ2之间的关系:(将w=wn带入方程求模)

 由定义可知以下公式:

③:利用W1 W2的定义求解ζ1与陷波器指标的关系

因为

所以 

即可得到公式: 

 由此我们得出两个重要公式:

      k1=

      k2=depth*k1

      其中:B=2*pi*Wb

至此可求出离散化陷波滤波器6个系数,a1,a2,a3,b1,b2,b3,带入(7)式中可得差分方程。 

至此只需要输入wn、depth、Wb通过关系式即可设计出一个陷波器。

 

设计了一个三参数滤波器,陷波频率100HZ,带宽40HZ,陷波幅度衰减100倍,matlab运行结果如下:

总结: 

以上就是常见三种陷波滤波器离散化设计,前两种缺点已在文中说明,第三种是最值得使用的,matlab代码测试完美,有需要的请移步:

https://download.csdn.net/download/qczhao_10/87189346

博主花费了不少时间调试,感谢支持!

  • 71
    点赞
  • 307
    收藏
    觉得还不错? 一键收藏
  • 26
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值