测量小百科|IIR滤波器简介

简仪科技 简仪科技 昨天

全文字数895 | 阅读需要3分钟


关键词:IIR滤波器、系统函数、双线性变换法、MATLAB


导读:

IIR(Infinite Impulse Response)滤波器是无限长冲击响应滤波器【1】【2】。IIR滤波器的设计主要是利用模拟滤波器成熟的设计理论来进行设计的,因而保留了一些典型模拟滤波器优良的幅度特性,特别是双线性变换法没有频率混叠,效果很好【3】【4】。

图 1 IIR滤波器的幅频响应


IIR滤波器的特点

IIR滤波器有以下几个特点【3】:

  1. 系统的单位冲击响应h(n)无限长。

  2. 系统函数H(z)在有限z平面(0<|z|<∞)上有极点存在。

  3. 存在输出到输入的反馈,递归型结构。


IIR滤波器的结构类型

IIR滤波器的系统函数为【5】:


IIR滤波器有四种基本结构,直接I型、直接II型、级联型、并联型结构【3】。本章节简单介绍一下直接I型、直接II型和级联型。

  • 直接I型:假设M=N,将H(z)转换为H1(z)和H2(z)的级联,得到直接I型结构【5】:

图 2 直接I型结构


  • 直接II型:对于一个线性非移变系统,若交换其级联子系统的次序,系统函数不变。将直接I型结构的H1(z)和H2(z)交换级联次序并合并延时器就可以得到直接II型结构【5】:

图 3 直接II型结构


  • 级联型:将系统函数做一点变换,拆开每项系数,可以表示成多个实系数的二阶子系统Hi(z)的连乘积形式【5】:

可以得到级联型结构:

图 4 级联型结构


如何用MATLAB设计IIR滤波器

打开MATLAB,在命令行输入:filterDesigner或者fdatool,就会跳出滤波器设计界面,根据自己的需求配置对应的参数【4】:

图 5 滤波器设计


设计滤波器后,在工具栏文件(File)的下拉菜单选择Export可以导出滤波器系数,得到矩阵SOS(second-order section)和G(Gain),对应于IIR滤波器的级联型结构。通过sos2tf函数可以将级联型结构的滤波器系数转为直接I、II型结构对应的滤波器系数【6】。



参考

  1. FIR滤波器百度百科:

    https://baike.baidu.com/item/FIR%E6%BB%A4%E6%B3%A2%E5%99%A8/1983543?fr=aladdin

  2. FIR滤波器维基百科:

    https://en.wikipedia.org/wiki/Finite_impulse_response

  3. 朱冰莲. 数字信号处理[M]. 北京:电子工业出版社,2010

  4. 如何快速设计一个IIR滤波器

    https://zhuanlan.zhihu.com/p/51097798

  5. IIR滤波器FPGA实现

    https://www.jianshu.com/p/4a51ba7c922d

  6. MATLAB sos2tf函数帮助文档



微信公众号搜索添加:shjianyi

● 长按二维码关注我们

此文章版权归简仪科技所有,

如需转载,请注明出处。