利用Matlab的filterbuilder生成IIR滤波器参数如下:
>> filterbuilder
The variable 'Hlp' has been exported to the workspace.
>> Hlp
Hlp =
FilterStructure: 'Direct-Form II, Second-Order Sections'
Arithmetic: 'double'
sosMatrix: [13x6 double]
ScaleValues: [0.465985780077502;1;1;1;1;1;1;1;1;1;1;1;1;1]
OptimizeScaleValues: true
PersistentMemory: false
有用信息为 sosMatrix和ScaleValue。利用fdatool向外导出的也是这两个参数。
sosMartrix为一系列二阶滤波的参数,这些滤波器串联即为当前的IIR滤波器;而ScaleValues则是sosMartrix这些滤波器的增益。
>> Hlp.sosMatrix
ans =
0.3523 0.7046 0.3523 1.0000 -0.1806 0.5304
0.3724 0.7449 0.3724 1.0000 -0.1369 0.1602
0.2986 0.5971 0.2986 1.

本文介绍了如何在Matlab中使用filterbuilder生成IIR滤波器参数,重点是理解sosMatrix和ScaleValues。sosMatrix包含了二阶滤波器段的信息,它们串联构成IIR滤波器;ScaleValues则表示各段滤波器的增益。通过fvtool和sos2tf函数可以观察和转换滤波器参数,实现频率响应的分析。
最低0.47元/天 解锁文章
4247

被折叠的 条评论
为什么被折叠?



