matlab中⼯具箱⽣成的SE3,基于Matlab中FDATool⼯具箱的滤
波器设计及相关。。。
btdcw/btd-8290f34c5f0e7cd1842536d9-1.html
⼀、摘要
除了采⽤编程的⽅法实现滤波器之外,Mat l ab中⾃带⼯具箱FDATool 也能很⽅便快速的
实现滤波器的设计。另外FPGA、DS P等实现数字滤波器算法时,经常要⽤到滤波器系数,采
⽤FDATool ⼯具箱也能快速的得到滤波器系数。
⼆、实验平台
Mat l ab7.1
三、实现步骤
3.1 滤波器指标
若需要设计⼀个16阶的FIR滤波器(h(0)=0),给定的参数如下:
(1) 低通滤波器
(2) 采样频率F
s 为48kHz ,滤波器F
c为10.8kHz
(3) 输⼊序列位宽为9位(最⾼位为符号位)
在此利⽤MATLAB来完成FIR滤波器系数的确定。
3.2 打开MATLAB的FDATool
MATLAB集成了⼀套功能强⼤的滤波器设计⼯具FDATool (Fi l t er Desi g n  & An al y si s Tool ),可
以完成多种滤波器的设计、分析和性能评估。
单击MATLAB主窗⼝下⽅的“St art ”按钮,如图B.1所⽰,选择菜单“Tool Box ” →“Fi l t er Desi g n ”
→“Fi l t er Desi g n  & An al y si s Tool (FDATool )”命令,打开FDATool ,另外,在MATLAB主命令窗⼝内键⼊“fdat ool ”,同样可打开FDATool 程序界⾯。
如图B.2所⽰。
3.3 选择Des ign Filter
FDATool 界⾯左下侧排列了⼀组⼯具按钮,其功能分别如下所述:
● 创建多速率滤波器(Cr eat e a Mul t i r at e Fi l t er )
● 滤波器转换(Tr ans For m Fi l t er )
● 设置量化参数(S et  Quant i zat i on Par amet er s)
● 实现模型(Real i ze Model )
● 零极点编辑器(Pol e-zer o Edi t or )
● 导⼊滤波器(Impor t  Fi l t er )
● 设计滤波器(Des i gn Fi l t er )
选择其中的按钮,进⼊设计滤波器界⾯,进⾏下列选择,如图B.3所⽰
● 滤波器类型(Fi l er  Type)为低通(Low Pass)
● 设计⽅法(Des i gn Met hod)为FIR,采⽤窗函数法(Wi ndow)
● 滤波器阶数(Fi l t er order)定制为15
● 窗⼝类型为Kai ser,Bet a为0.5
● F
s 为48kHz ,F
c为10.8kHz
最后单击Des i gn Fi l t er 图标,让MATLAB计算FIR滤波器系数并作相关分析。
其系统函数H(z)可⽤下式来表⽰:
H(z)=
tool工具箱
显然上式可以写成:
H(z)=
即可以看成是⼀个15阶的FIR滤波器的输出结果经过了⼀个单位延时单元,所以在FDATool 中,
把它看成15阶FIR滤波器来计算参数。
因此,设置滤波器阶数时,要⽐要求的⼩1 。
3.4 滤波器分析
计算完FIR滤波器系数以后,往往需要对设计好的FIR滤波器进⾏相关的性能分析,以便了解该
滤波器是否满⾜设计要求。分析操作步骤如下:
选择FDATool 的菜单“An al y si s”→“Mag n i t u de Respon se”,启动幅频响应分析如图B.4所⽰,x 轴为频率,y 轴为幅度值(单位为dB)。
在图的左侧列出了当前滤波器的相关信息:
● 滤波器类型为Di rect  Form  FIR(直接I型FIR滤波器)
● 滤波器阶数为15
选择菜单“An al y si s”→“Ph ase Respon se”,启动相频响应分析,如图B.5所⽰。由该图可以看到
设计的FIR滤波器在通带内其相位响应为线性的,即该滤波器是⼀个线性相位的滤波器
图B.6显⽰了滤波器幅频特性与相频特性的⽐较,这可以通过菜单“An al y si s”→“Mag n i t u de an d Ph ase Respon se”来启动分析。
选择菜单“An al y si s”→“Grou p Del ay  Respon se”,启动时延分析。
FDATool 还提供了以下⼏种分析⼯具:
● 时延响应分析。
● 冲激响应分析(Im pu l se Respon se),如图B.7所⽰。
● 阶跃响应分析(St ep Respon se),如图B.8所⽰。
● 零极点图分析(Pol e/Zero Pl ot),如图B.9所⽰。
求出的FIR滤波器的系数可以通过选择菜单“An al y si s”→“Fi l t er Coef f i ci en t s”来观察。如图B.10
所⽰,图中列出了FDATool 计算的15阶直接I型FIR滤波器的部分系数。
3.5 量化
可以看到,FDATool 计算出的值是⼀个有符号的⼩数,如果建⽴的FIR滤波器模型需要⼀个整
数作为滤波器系数,就必须进⾏量化,并对得到的系数进⾏归⼀化。为此,单击FDATool 左下
侧的⼯具按钮进⾏量化参数设置。量化参数有三种⽅式:双精度、单精度和定点。在使⽤定点
量化前,必须确保MATLAB中已经安装定点⼯具箱并有相应的授权。
3.6 导出滤波器系数
为导出设计好的滤波器系数,选择FDATool 菜单的“Fi l e”→“Ex port”命令,打开Ex port(导
出)对话框,如图B.11所⽰。
在该窗⼝中,选择导出到⼯作区(Workpl ace)。这时滤波器系数就存⼊到⼀个⼀维变量Nu m 中 了。不过这时Nu m 中的元素是以⼩数形式出现的: Num= Col umns  1 t hr ough 9 -0.0369  0.0109  0.0558  0.0054  -0.0873  -0.0484  0.1805  0.4133  0.4133 Col umns  10 t hr ough 16 0.1805  -0.0484  -0.087
3  0.0054  0.0558  0.0109  -0.0369    由此,可以得到低通滤波器的系数。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。