matlab c语言 iir,IIR数字滤波器的实现(C语言)

经典滤波器和数字滤波器

一般滤波器可以分为经典滤波器和数字滤波器。

经典滤波器:假定输入信号中的有用成分和希望去除的成分各自占有不同的频带。如果信号和噪声的频谱相互重迭,经典滤波器无能为力。比如 FIR 和 IIR 滤波器等。

现代滤波器:从含有噪声的时间序列中估计出信号的某些特征或信号本身。现代滤波器将信号和噪声都视为随机信号。包括 Wiener Filter、Kalman Filter、线性预测器、自适应滤波器等

Z变换和差分方程

在连续系统中采用拉普拉斯变换求解微分方程,并直接定义了传递函数,成为研究系统的基本工具。在采样系统中,连续变量变成了离散量,将Laplace变换用于离散量中,就得到了Z变换。和拉氏变换一样,

对于一般常用的信号序列,可以直接查表找出其Z变换。相应地,也可由信号序列的Z变换查出原信号序列,从而使求取信号序列的Z变换较为简便易行。

7ffc96a2a2f8b9c0dab81f484e9b7f5c.png

Z变换有许多重要的性质和定理:

线性定理

设a,a1,a2为任意常数,连续时间函数f(t),f1(t),f2(t)的Z变换分别为F(z),F1(z),F2(z),则有

Z[af(t)]=aF(z)Z[af(t)]=aF(z)

Z[a1f1(t)+a2f2(t)]=a1F1(z)+a2F2(z)Z[a1f1(t)+a2f2(t)]=a1F1(z)+a2F2(z)

滞后定理

设连续时间函数在t<0时,f(t)=0,且f(t)的Z变换为F(z),则有

Z[f(t−kT)]=z−kF(z)Z[f(t−kT)]=z−kF(z)

应用Z变换求解差分方程的一个例子:已知系统的差分方程表达式为y(n)−0.9y(n−1)=0.05u(n)y(n)−0.9y(n−1)=0.05u(n),若边界条件y(−1)=1y(−1)=1,求系统的完全响应。

解:方程两端取z变换

Y(z)−0.9[z−1Y(z)+y(−1)]=0.05zz−1Y(z)=0.05z2(z−1)(z−0.9)+0.9y(−1)zz−0.9Y(z)−0.9[z−1Y(z)+y(−1)]=0.05zz−1Y(z)=0.05z2(z−1)(z−0.9)+0.9y(−1)zz−0.9

可得

Y(z)z=A1zz−1+A2zz−0.9Y(z)z=A1zz−1+A2zz−0.9

其中A1=0.5,A2=0.45,于是y(n)=0.5+0.45×(0.9)n(n≥0)y(n)=0.5+0.45×(0.9)n(n≥0)

IIR数字滤波器的差分方程和系统函数

I

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值