死磕陷波器

死磕陷波器

陷波器传递函数

陷波器的传递函数是:
h ( s ) = s 2 + w o 2 s 2 + 2 w s + w o 2 h(s)=\frac{s^{2}+w_{o}^{2}}{s^{2}+2 w_{} s+w_{o}^{2}} h(s)=s2+2ws+wo2s2+wo2
其中, w o w_{o} wo是所谓“中心频率”,也就是你想要“陷掉”的频率。而 w w w则是“陷阱”的宽度。

陷波器的伯德图

设定“中心频率”为50Hz,宽度为3Hz。用matlab绘制伯德图,如下:
在这里插入图片描述
可见,在50Hz附近的幅值增益很小,说明其对50Hz的抑制作用很强。

离散化

Z变换

利用Z变换可以离散化。也可以利用matlab对S函数进行Z变换,选定离散时间Ts=0.0001,则其Z变换如下:
F ( z ) = Z 2 − 1.999 z + 1 Z 2 − 1.993 Z + 0.9937 Z F(z) = \frac{Z^{2}-1.999 z+1}{Z^{2}-1.993 Z+0.9937 Z} F(z)=Z21.993Z+0.9937ZZ21.999z+1

差分方程

Y X = 1 − 1.999 Z − 1 + Z − 2 1 − 1.993 Z − 1 + 0.9937 Z − 2 \frac{Y}{X}=\frac{1-1.999 Z^{-1}+ Z^{-2}}{1-1.993 Z^{-1}+0.9937 Z^{-2}} XY=11.993Z1+0.9937Z211.999Z1+Z2
Y = X − 1.999 X k − 1 + X k − 2 + 1.993 Y k − 1 − 0.9937 Y k − 2 Y=X-1.999 X_{k-1}+X_{k-2}+1.993 Y_{k-1}-0.9937 Y_{k-2} Y=X1.999Xk1+Xk2+1.993Yk10.9937Yk2

有了差分方程,写程序就很简单了。

Simulink仿真结果

利用Sum模块将50Hz、5Hz正弦波,直线信号三个相加,得到一组带有谐波的信号注入到陷波器。如下图所示:
在这里插入图片描述
从仿真结果可以看到:滤波后,50Hz的波形被滤除干净。而且其相位基本没有延迟,可见,陷波器对于滤除指定次的谐波有很好的作用。
在这里插入图片描述

傅里叶分析

略。

参考文献

陷波器及其算法(基于C语言)https://blog.csdn.net/qq_34473360/article/details/103172281.
基于matlab用c语言实现传递函数https://blog.csdn.net/arris1992/article/details/81013519.

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值