滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf

上传人:tbuqq 文档编号:5210222 上传时间:2020-02-21 格式:PDF 页数:16 大小:1.96MB
返回 下载 相关 举报
滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf_第1页
第1页 / 共16页
滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf_第2页
第2页 / 共16页
滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf_第3页
第3页 / 共16页
滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf_第4页
第4页 / 共16页
滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf》由会员分享,可在线阅读,更多相关《滤波器设计分析工具FDATool和滤波器可视化工具FVTool要点.pdf(16页珍藏版)》请在三一文库上搜索。

1、1 讲座 13 滤波器设计分析工具FDATool 和滤波器可视化工具FVTool 13.1简介 FDATool (Filter Design and Analysis Tool) 是一个功能强大的数字滤波器分析设计工 具。它的主要功能如下: (1)设计参考滤波器 所谓参考滤波器就是不考虑所有量化效应而采用双精度浮点数据格式、在通用计算机 上实现的滤波器。 FDATool 涵盖了信号处理工具箱中所有的滤波器设计方法。利用它可以方 便地设计出满足各种性能指标(或直接指定滤波器系数)的滤波器, 并且可以查看该滤波器 的各种分析图形(例如滤波器的模频特性、相频特性、群时延、令极点图等)。待设计出满 意

2、的滤波器后,还可以将其系数直接导出为Matlab 变量、文本文件或C 语言头文件等。 (2)仿真和分析量化滤波器的性能 参考滤波器是一种不考虑数据量化的理想滤波器。实际滤波器则使用一定的量化器, 把滤波器从双精度浮点格式转换为定点或变精度浮点格式。这样的滤波器称为量化滤波器。 量化滤波器的频率特性往往与原来的滤波器不一致,有时甚至会使一个稳定的滤波器变得不 稳定。滤波器量化效应与滤波器的运算结构密切相关。为了仿真和分析量化滤波器的性能, 滤波器设计工具箱提供了一整套定义在量化对象基础上的量化函数。图 13.1.1 示出量化对象 的层次结构。 图 13.1.1 滤波器设计工具箱中的量化对象 FV

3、Tool (Filter Visual Tool ) 是附属于 FDATool 的工具。可以在 Matlab 的工作区或在.M. 文件调用这两种工具。本讲座将介绍这两种调用方法。 本讲座只介绍用FDATool 设计参考滤波器。关于用FDATool 仿真和分析量化滤波器 的问题,读者可参阅 Matlab 6.5 及其在数字信号处理中的应用(王宏著,清华大学出版社,2004 年) 数字信号处理原理、实现与应用(高西全著,电子工业出版社,2006 年) 13.2 FDATool 的界面 在 Matlab 的命令窗键入FDATtool 命令,就可以进入滤波器仿真和分析环境,得到 2 图 13.2.1

4、所示的界面。 图 13.2.1 FDATtool 的起始界面 图 13.2.2 示出 FDATool 的主菜单和工具条。其中,钮对用户学习FDATool 的使 用很有帮助。用户可先用鼠标点击该钮,然后点击界面上某个需要提供帮助的区域。这时, Matlab 便将该区域用黑色粗线圈起,并给出详细的说明。 图 13.2.2 FDATool 的主菜单和工具条 FDATool 的工作区大致上可以分为图13.2.1 所示的 5 个区域。 区域 1 显示当前滤波器的信息。 区域 2 有 5 个可供选择的按钮,如图13.2.3 所示。 区域 3 显示滤波器的模频特性容限图以及设计所得滤波器的模频特性、相频特性

5、、 群时 延特性、零极点分布、滤波器系数等。如果用户选用图13.2.3 中的“滤波器设计” (设计不 考虑量化效应的滤波器),则区域 3 所显示的内容由用户从主菜单的Analysis 项的子菜单中 选择。图13.2.4 示出这个子菜单。 3 图 13.2.3 工作选择按钮 图 13.2.4 “ Analysis” 项的子菜单 区域 4 的具体内容取决于用户所选的工作状态(图13.2.3) 。例如,用户若选滤波器设 计,则这个区域的内容如图13.2.1 所示。这时, Matlab 需要用户确定对滤波器的技术要求。 区域 5 有命令钮 Design Filter。当这个命令钮的字样从灰色变为黑色时

6、,按下它就进行 滤波器设计。 下面举例说明用FDATool 设计参考滤波器的方法。 13.3 FIR 滤波器设计 13.3.1 设计低通滤波器 启动 FDATool 后,如果要创建新的滤波器,可用图13.3.1 所示的 New | Session 命令 得到图 13.3.2 所示的界面。 图中右上方显示低通滤波器的模频特性容限图。用户可在图13.3.2 的左方选择所需滤波器的型式(FIR、IIR 、低通、高通、带通、 等) 。如果设计一个新的 FIR 低通数字滤波器, 则应在 FIR 下拉菜单中, 选择所需的算法, 例如 Equiripple(等波纹), 4 并在输入设计要求和技术指标后,点击

7、Design Filter 按钮,就可以得到所需滤波器。 图 13.3.1. 主菜单选项File 的子菜单 现在选用图13.3.2 原有技术指标设计FIR 等波纹低通滤波器。所得滤波器的模频特性 示于该图的上方。 图 13.3.2 低通 FIR 滤波器的模频特性 在图 13.3.2 所显示的特性曲线上,用户点击任何点,就会出现一个文本框,标出该点的 横、纵坐标值,如图13.3.3 所示。这样的标志点可以设置多个。以鼠标右键点击该框,从跳 出的现场菜单,可改变框中的字体大小、框的位置等,也可以撤销该框。 5 图 13.3.3 带标志点的特性曲线 从图 13.2.4 所示 Analysis 项的子

8、菜单可以做出选择,以显示滤波器的模频特性、相频 特性、合在一起的模频特性和相频特性、群时延特性、冲激响应、阶跃响应、零极点分布和 滤波系数, 分别如图13.3.3 13.3.10 所示。此外,还可以显示噪声加载方法,这里不作介绍。 图 13.3.4 FIR 低通滤波器的相频特性 图 13.3.5 FIR 低通滤波器的模频特性和相频特性 图 13.3.6 FIR 低通滤波器的群时延特性 6 图 13.3.7 FIR 低通滤波器的冲激响应 图 13.3.8 FIR 低通滤波器的阶跃响应 图 13.3.9 FIR 低通滤波器的零极点分布 图 13.3.10 FIR 低通滤波器的滤波系数 在图 13.

9、2.4 中,若点击Analysis 项子菜单中的Full View Analysis (全景分析 )选项,则 滤波器特性将在一个单独的图中显示出来,如图13.3.11所示。 7 图 13.3.11 低通 FIR 滤波器的模频特性 Analysis 项子菜单中有Analysis Parameters 选项。点击这个选项,出现图13.3.12 的 对话框。 通过该对话框上方的列表框Range, 可以选择频率坐标的范围:s0,s/2,0FF和 s/2s/2,FF。 例如,若选频率范围为s/2s/2,FF, 则滤波器器的模频特性将如图13.3.13 所示。 图 13.3.12 ” Analysis P

10、arameters”选项 对话框 图 13.3.13 频率范围为s / 2s/ 2 ,FF时的模频特性 8 下面解释图13.3.6 所示的群时延特性。教材中,第2.8.6 节介绍了群时延的概念。群时 延是相频特性的负斜率, d )(d g n(2.8.32) 第 9.2 节又说明了数字滤波器的群时延用样点数来量度。现在来看看图13.3.14 所示的模频 特性和相频特性。 由图 (b)看出滤波器在通带内具有线性相位特性(线段 ab)。 a 点的坐标为( 0, 0) 。 b 点的横坐标为Hz12000bx,纵坐标为 o -2250by。若 b 点的横坐标用数字频 率表示, 则 s /12000*2

11、f,而用弧度表示时,b 点的纵坐标为180 / *2250p。 由 于 采 样 频 率 为Hz48000 s f, 故 根 据 群 时 延 的 定 义 , 得 群 时 延 为 samples25/p g 。这与图13.3.6 的结果是一致的。 图 13.3.14 FIR 滤波器的模频特性和相频特性 (Hz48000 s f,Hz10800 c f) 13.3.2 FIR 低通滤波器的频率变换 按照上一小节所讲的方法设计好低通滤波器后,就可以通过变换获得另一个低通、高 通、带通、带阻滤波器。方法如下。 按下图 13.2.3 所示的 滤波器变换 钮,得到图 13.3.15 a。该面板适用于低通滤波

12、器 9 作 为 目 标 滤 波 器 。 若 目 标 滤 波 器 是 其 他 类 型 的 滤 波 器 , 则 可 以 通 过 面 板 右 上 角 的 Transformed filter type 列表框来选择。例如,如果选高通滤波器或带通滤波器作为目标滤 波器,则面板右方将分别如图(b ) 和 (c) 所示。面板左方和右方的文本框示出频率变换前 后的对应频率,由用户确定。 图 13.3.15 频率变换面板 图 13.3.16 示出频率变换例子。图(a)是原来设计好的低通滤波器,经变换,可分别得到 图(b)和(c)所示的高通、带通滤波器。 10 图 13.3.16 FIR 滤波器变换 13.4

13、IIR 滤波器设计 也可以用FDATool 工具来设计IIR 滤波器,其方法类似于FIR 滤波器设计。 在设计滤波器时,利用 FDATool 界面左下角的Filter Type 面板, 选择滤波器类型,如 图 13.4.1 所示。该图表示被设计的滤波器是IIR 低通 Chebyshev型滤波器。 设计好低通滤波器后,可以把它变换为其它类型的滤波器。例如, 按照FDATool 原先 已设定的指标设计好图13.4.2 a 所示的低通滤波器,则经过低通-带通和低通 -带阻变换,便 分别得到图(b) 和 (c) 的带通和带阻滤波器。 11 图 13.4.1 滤波器类型面板 (a)低通滤波器(源滤波器)

14、 (b)带通滤波器(目标滤波器) 12 (c)带阻通滤波器(目标滤波器) 图 13.4.2 IIR 滤波器变换 13.5 导入与导出滤波器 本节举例说明怎样将已有的滤波器导入FDATool,或者相反,将已在FDATool 中设计 好的滤波器导出到FDATool 环境以外。 13.5.1 导入滤波器 现在以第二章的程序M020808.M 为例,说明导入滤波器的方法。该程序给出一个FIR 滤波器,演示有弯折和无弯折的滤波器相频特性(对此,读者可参阅第2 章) 。程序文本如 下。程序中, b = 1, 1.5, 2.4, 2.8, 3.2, 3.2, 2.8, 2.4, 1.5, 1 是滤波器系统函

15、数的分子多项式系 数组;对于 FIR 滤波器来说, 系统函数的分母多项式系数组为1。 程序运行结果示于图13.5.1 % M020808 % 解释系统的相频特性和函数unwrap 的用法 % set(gcf, color, w) b = 1, 1.5, 2.4, 2.8, 3.2, 3.2, 2.8, 2.4, 1.5, 1; H, w = freqz(b, 1, 512) subplot(221) plot(w/pi, abs(H); grid subplot(222) plot(w/pi, angle(H); grid subplot(223) plot(w/pi, unwrap(angl

16、e(H); grid subplot(224) plot(w/pi, 20*log10(abs(H); grid 13 图 13.5.1 程序 M020808 的运行结果 下面将这个滤波器导入FDATool。方法如下。 在 FDATool 的菜单中,执行File | Import Filter命令后,在界面的下方出现图13.5.2 的面板。读者可以通过左边的Filter Structure 列表框选用滤波器的结构。对于本例,选直 接型或型结构均可。在标以Numberator (分子)的文本框中键入上述系数组b,而在 标以 Denominator(分母)的文本框中键入系数组a (a = 1),如

17、图 13.5.3 所示。 至此,按下界面上的滤波器导入命令钮,即可将程序M020808.M 中的滤 波器导入到FDATool ,得到如图13.5.4 所示的滤波器特性。显然,子图a 和 b 是分别与图 13.5.1 的子图 b 和 d 完全一致的。 图 13.5.2 用以输入滤波器参数的面板(默认) 图 13.5.3 已经输入滤波器参数的面板 14 图 13.5.4 在 FDATool 中得到的滤波器特性 13.5.2 导出滤波器 可以将 FDATool 中的滤波器参数导出到FDATool 环境之外。 滤波器参数可以有5 个去 向,即: 到 Matlab 的工作区( Workspace) 到

18、SPTool 工具中 形成为 C 语言的头文件 形成文本文件 .txt 形成 Matlab 的.MAT 文件 下面说明怎样将滤波器参数导出到Matlab 的工作区。 在 FDATool 中,执行File | Export 。 。 。 ,得到图 13.5.5。 图 13.5.5 “Export “ 对话框 在对话框的列表框Export To 中,选导出目标是Workspace, 导出对象是Coefficient 15 (系数),导出的变量名是Num (Numerator,,分子多项式系数组)和Den(Denominator , 分母多项式系数组) 。确认后,在Matlab 的工作区得到变量Num

19、 和 Den 如图 13.5.6 所示 。 图 13.5.6 在 Matlab 中的工作区可以访问变量Num 和 Den 在列表框 Export To 中,若选导出目标是Text -file,则在确认后,系统要求用户输入 文件名和路径。如果按照图13.5.7 确定文件名及其路径,则在work 目录中形成名为 untitled.txt 的文本文件,其内容如13.5.8 所示。 图 13.5.7 系统提示用户输入文件名和路径 图 13.5.8 文件 untitled.txt 的内容 16 13.6 用程序调用 FVTool FVTool 是附属于FDATool 的可视化工具。它提供的界面就是图13

20、.3.1 所示的Full View Analysis 界面。在Matlab 的 workspace 键入行命令fvtool(b, a),就可以调用FVTool 工具,显示滤波器的各种特性。行命令中的参数b 和 a分别是滤波器系统函数的分子、分 母多项式的系数组。若执行行命令fdatool,则不论是否带滤波器参数,都只能出现图13.2.1 所示的界面。 下面的程序用来调用FVTool 工具, 显示作为参数的滤波器的特性。程序中, 用 Remez 算法设计两个FIR 滤波器,它们的系统函数分子多项式的系数组分别是b1 和 b2,而分母 多项式系数组为1。指令fvtool(b1,1,b2,1) 使用

21、这两个滤波器的系统函数作为参数。程序运 行后, FVTool 被调用,显示两个滤波器的特性(图13.6.1) 。使用工具条上的按钮,可 以在特性图上标出图例或撤除当前的图例。其它按钮的功能与FDATool 相同。 % 演示滤波器可视化工具FVTool 的用法 % n = 20; % 滤波器阶数 f = 0 0.4 0.5 1; % 边界频率向量 a = 1 1 0 0; % 幅度向量 b1 = remez(n, f, a); % 第一个滤波器,其阶数为20 b2 = remez(n * 2, f, a); % 第二个滤波器,其阶数为2 * 20 = 40 fvtool(b1, 1, b2 , 1); % 以两个滤波器的系统函数作为参数调用FVTool 工具 图 13.6.1 用程序调用FVTool 工具

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1