博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FIR滤波器设计
阅读量:4552 次
发布时间:2019-06-08

本文共 926 字,大约阅读时间需要 3 分钟。

FIR滤波器的优越性:

相位对应为严格的线性,不存在延迟失真,仅仅有固定的时间延迟;

因为不存在稳定性问题,设计相对简单;

仅仅包括实数算法,不涉及复数算法,不须要递推运算,长度为M,阶数为M-1,计算值约为M/2。

关于FIR滤波器的幅频特性和相频特性。在人们不关心相位时,能够让幅频特性常为正,原来为负的部分仅仅需相位加上pi来补偿。

但当相位非常重要,不同意随便增减时,幅频特性就必须区分正负。我们这里称为符幅特性。

符幅特性负值部分向上反褶就和我们平时看到的幅频特性一样,还是满足对称性的。

4类FIR的比較(摘自百度文库):

     

不同类型要注意他们在w=0和pi时的取值是否为0,对滤波器选型有影响。

另外要注意到FIR极点在原点,零点则是成对出现,并且极点数等于零点数。

实际中用窗函数截断法设计FIR滤波器。

矩形窗缺点:

突然截断引起吉布斯效应,由于矩形窗在频谱上的旁瓣相对幅度过大,导致滤波器波动大。

因此要採用平滑截断的窗,旁瓣相对小。但平滑窗主瓣宽度大,主瓣宽度是决定过渡带的关键因素。因此用提高阶数的方法解决。

matlab中各种窗函数:

wd = boxcar(N);%矩形窗

wd = triang(N);%三角窗

wd = hanning(N);&汉宁窗

wd = hamming(N);%汉明窗

wd = blackman(N);%布莱克曼窗

wd = kaiser(N,beta);%凯泽-贝塞尔窗,最优的窗结构之中的一个,对于给定的波动,提供最小的主瓣宽度。

另外有个现成的设计函数:

b = fir1(M,wn,'type',window);

b为待设计的滤波器系数向量,长度为N = M+1;

M为阶数;

wn为滤波器给定的边缘频率,标量或数组;

type滤波器类型,低通,高通……

window为窗函数类型,默认汉明窗。

比如b = fir1(32,0.7,high',kaiser(33,4));

注意0.7是指边界数字频率0.7*pi。

滤波器设计也能够利用matlab的fdatool工具设计,更为直观。

转载于:https://www.cnblogs.com/blfshiye/p/4039925.html

你可能感兴趣的文章
WIFI密码破解全攻略
查看>>
c++string各种函数
查看>>
errno.h含义
查看>>
字典树(模型体)
查看>>
盒模型详解
查看>>
bzoj2157 旅游
查看>>
bzoj5016 [Snoi2017]一个简单的询问
查看>>
poj2417 bzoj3239 Discrete Logging(bsgs)
查看>>
UVa10054 - The Necklace(欧拉回路【输出带来的麻烦)
查看>>
string和stringbuffer的区别 集合的作用 ArrayList vector linklist hashmap hashtable collection和collections...
查看>>
6月27日 ajax
查看>>
iOS开发之画图板(贝塞尔曲线)
查看>>
4嵌入式作业io
查看>>
IntelliJ Idea编译报错:javacTask: 源发行版 1.7 需要目标发行版 1.7
查看>>
Cognos中新建SQLserver数据源的步骤
查看>>
HttpClient连接超时及读取超时
查看>>
SQL优化方法
查看>>
SEO必须掌握的高级搜索指令
查看>>
生产者消费者模型
查看>>
ORACLE 字符串超长问题解决方案
查看>>