- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?
用Matlab的FDAtool生成IIR滤波器参数
2013-06-08 08:59?8519人阅读?评论(1)?收藏?举报
?分类:
?
matlab(3)??数字信号处理(7)?
MATLAB IIR数字滤波器设计
?
首先我们要明白相关的概念。
数字滤波器设计采用角频率,如何与实际信号频率对应?
角频率w,采样频率fs?,实际信号频率f的转换关系为:
???????W = 2*pi* f /?fs
采样频率的角频率为??2 *pi.
数字滤波器的指标,以低通为例【见下图】:
???
?
?
当我们设计的滤波器是带通的时候。其通带截止频率有两个,阻带截止频率也有两个。截止频率还有另外一个称谓,即边沿频率。
FIR?滤波器可以设计为线性相位,并且总是稳定的。在多数情况下,FIR滤波器的阶数?NFIR?显著大于具有等效幅度响应的IIR滤波器阶数NIIR。NFIR/NIIR?通常为10的量级或更高. IIR?滤波器通常计算更简便。?在很多应用中,并不要求滤波器具有严格的线性相位,在这些情况下,通常会因计算简便而选择IIR滤波器。例如在很多语音编码当中的滤波器很多都是IIR滤波器,均衡器一般也用IIR滤波器。也就是说对实时性要求不是很高的场合可以考虑使用FIR滤波器,当FIR滤波器阶数较长时,可以考虑用FFT去计算。
在设计IIR滤波器时,通常将数字滤波器的设计指标转化成模拟低通原型滤波器的设计指标,从而确定满足这些指标的模拟低通滤波器的传输函数Ha(s),然后再将它变换成所需要的数字滤波器传输函数G(z)。
上述滤波器设计的过程只需要了解其原理。借助于MATLAB强大的工具,滤波器的设计变得比较简单了。
在MATLAB命令窗口中键入fdatool,?你将启动滤波器设计的图形界面。你可以从simulink中直接选择数字滤波器控件而启动。
本文主要讲述IIR数字滤波器设计的方法。
对从麦克风进来的信号滤波。
假定我们要把50hz的电频干扰去掉,同时人说话的频率一般不会超过3400hz。我们设计一个带通滤波器,通带为【80-3200】,采样率为8k。
?
?
根据上面的需求,我们把相关的参数改成下面的界面:
?
?
单击?Design Filter,数秒之后显示如下:
?
可以看出:滤波器的阶数是36,还有一个?sections: 18.?由于在具体实现时一般是以2阶的级联或并联去实现的。所以实际上分为18个2阶节去实现。
36阶是系统计算出的满足需求的最小阶了。我们也可以自己事先制定阶数,参数如下:
?
这时,截止频率衰减参数已经没法选了,被固定为3分贝:
?
最终计算的幅度响应如下:
我们需要把设计的滤波器系数保存下来,以供其它程序调用。
MATLAB提供了直接导出系数的方法。
?
【targets】-【generate C header】
?
可以修改如下,选择【Generate】
?
?
?
在MATLAB工作目录下可以找到你生成的系数文件,大概是下面这个样子的:
?
?
这个文件让人看的不太懂。返回fdatool设计界面选择【Analysis-Filter coeffcients】:
?
?
?
系数界面与这个文件里面的数据是一致的。
?
认真观察上面这个界面里的数据,我们发现,文件里面的系数,实际上把它分成两个2阶节相乘的形式,其中还有增益。增益的目的是为了保证计算的精度和系统的稳定性。
选择【edit】-【convert to single section】,这时候系数变成我们熟悉的形式:
?
生成的系数C头文件如下:
?
?
指定阶数为2,重复上述步骤生成的IIR滤波器系数文件如下:
文档评论(0)