0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

探究数字滤波器matlab辅助设计

jf_78858299 来源:面包板社区 作者:southcreek 2023-02-10 16:57 次阅读

仍然使用FDATOOL设计滤波器,当前设计一个数字带通滤波器。至于用的是冲击响应不变法,还是其它的方法。暂时不考虑。FIR 需要的阶数太多,也不考虑。使用IIR滤波,线性相位就不要想了。可以选巴特沃兹(最大平整度),或切比雪夫(最大陡降特性。)发现在相同的性能下切比雪夫需要的阶数少。

生成的传递函数是按照多个二阶单元级联。系统提供 SOS(Second Order Section)也可以称为“救命”矩阵。其思路是将高阶传递函数分解为多个稳定的二阶函数级联,保持系统稳定。因为使用的是IIR (无限冲击响应)构成,注定其是非线性相位。会导致滤波后的信号波形畸变。导出滤波器参数文件.

poYBAGPmBqWAAPXSAABvMEGoMH0507.png

每个SOS参数可以使用直接II型,实现如下:

pYYBAGPmBp-AIb9FAABlomb7rqQ823.pngpoYBAGPmBpiAVmFJAACHe1BCUW8353.png

编写一段代码测试一下。

pYYBAGPmBpKAJx77AADgPuS3nCA066.pngpoYBAGPmBo2AULV4AAASE4EmFyQ438.pngpoYBAGPmBoWARu8ZAACbDmx6wAI280.png

待滤波信号的频谱特性

poYBAGPmBoCAHKmRAAFjMdkAcIg434.png

可以看到org 信号上有噪声,有直流偏置和低频交流干扰。经过带通滤波后,去除了直流,去除了噪声,基本还原原始信号signal。刚开始时并不稳定需要等一段时间才能达到稳定。

可见,此段代码可以将一个输入序列x 转换为一个输出序列 y,完成对x序列的滤波。

按照生成的结构图,编写m文件的解释:

poYBAGPmBnmABEjVAADwWSJ0Rdo916.pngpoYBAGPmBnOAeSP9AAA8lbDmkT8336.png

每采集到一个数据时,以输入数据作为参数,调用BandPassFilter(),得到一个滤波输出。相当于实时处理。

poYBAGPmBmKAdQctAACOhPIEPxY289.png

经过滤波后的信号

pYYBAGPmBlyAGIelAACIL_NJL0A272.png

经过滤波+陷波后的信号

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 滤波器
    +关注

    关注

    158

    文章

    7426

    浏览量

    175610
  • FIR
    FIR
    +关注

    关注

    4

    文章

    138

    浏览量

    32829
  • IIR
    IIR
    +关注

    关注

    1

    文章

    57

    浏览量

    22763
收藏 人收藏

    评论

    相关推荐

    IIR数字滤波器Matlab和FPGA实现

    本帖最后由 eehome 于 2013-1-5 10:01 编辑 IIR数字滤波器Matlab和FPGA实现
    发表于 08-20 22:16

    中频滤波器数字滤波器

    通过数字滤波器可以获得很窄的带宽。和模拟滤波器相比,理想的高斯滤波器可以实 现。数字滤波器在可接受的价格内有更好的选择性,如5级电路模拟滤波器
    发表于 10-13 09:22

    如何设计数字滤波器

    在信息信号处理过程中,如对信号的过滤、检测、预测等,,都要使用到滤波器数字滤波器数字信号处理中使用最广泛的一种方法,常用的数字滤波器有无限长单位脉冲响应(IIR)
    发表于 10-11 07:45

    请问如何去设计IIR数字滤波器

    滤波器MATLAB怎么去设计?编写VHDL语言代码有哪些注意事项?一般IIR数字滤波器该怎么去设计?以低通滤波器为例,请问如何去设计IIR数字滤波
    发表于 04-14 06:22

    怎么实现基于Matlab的IIR数字滤波器设计?

    实现数字滤波器的方法有哪几种?IIR数字滤波器的设计具体步骤是怎样的?
    发表于 05-31 06:30

    数字滤波器Matlab设计与应用

    :数字滤波数字信号处理中占有极其重要的地位,并且被广泛应用。研究了在Madal〕环境下FIR数字滤波器的设计方法以及FIR滤波器在信号去噪方面的应用。
    发表于 01-06 17:05 30次下载

    数字滤波器MATLAB设计与DSP上的实现

    以窗函数法设计线性相位FIR 数字滤波器为例,介绍用MATLAB 工具软件设计数字滤波器的方法和在定点D S P 上的实现。实现时,先在C C S 5 0 0 0 仿真开发, 然后将程序加载到TMS320VC5409
    发表于 04-16 09:39 41次下载

    数字滤波器MATLAB 设计与DSP 上的实现

    以窗函数法设计线性相位FIR 数字滤波器为例,介绍用MATLAB 工具软件设计数字滤波器的方法和在定点D S P 上的实现。实现时,先在C C S 5 0 0 0 仿真开发, 然后将程序加载到TMS320VC5409
    发表于 05-15 14:30 39次下载

    MATLAB辅助设计IIR数字滤波器

    MATLAB辅助设计IIR数字滤波器摘 要:论述了用MATLAB求解IIR数字滤波器系数的原理和函数以及这些函数的使用方法,并给出设计实例
    发表于 05-14 14:08 76次下载

    数字滤波器的设计实验

    数字滤波器的设计实验 一. 数字滤波器设计:(1) 数字滤波器设计步骤:a. 整理给定的滤波器设计要求
    发表于 10-30 13:34 5588次阅读
    <b class='flag-5'>数字滤波器</b>的设计实验

    什么是数字滤波器

    什么是数字滤波器 数字滤波器(digital filter)是由数字乘法器、加法器
    发表于 06-30 12:37 3850次阅读
    什么是<b class='flag-5'>数字滤波器</b>

    数字滤波器MATLAB与DSP上设计实现

    数字滤波器MATLAB与DSP上设计实现 概述:以窗函数法设计线性相位FIR数字滤波器为例,介绍用MATLAB工具软件设计数字滤波器的方
    发表于 04-12 09:32 1805次阅读
    <b class='flag-5'>数字滤波器</b>的<b class='flag-5'>MATLAB</b>与DSP上设计实现

    基于Matlab/Simulink的FIR数字滤波器的设计与实现

    基于Matlab/Simulink的FIR数字滤波器的设计与实现。
    发表于 01-15 15:16 39次下载

    Matlab辅助DSP实现FIR数字滤波器

    Matlab辅助DSP实现FIR数字滤波器
    发表于 10-20 09:34 6次下载
    <b class='flag-5'>Matlab</b><b class='flag-5'>辅助</b>DSP实现FIR<b class='flag-5'>数字滤波器</b>

    基于matlab数字滤波器的设计及数字滤波器基本结构

    本文主要介绍了基于matlab数字滤波器的设计及数字滤波器基本结构。
    发表于 06-05 08:00 27次下载