基于Matlab/Simulink的滤波器设计仿真技术的实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:wodetiantian3321
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:建立滤波器设计系统的Simulink仿真模型,进行仿真分析,实现滤波器设计仿真技术。本文主要介绍使用Matlab的Signal Processing Toolbox工具箱中可视化滤波器集成设计环境—滤波器设计及分析工具(Filter Design and Analysis Tool) ,借助于FDATool强大的交互式图形用户界面,可以直接设置滤波器的性能指标、直接赋值滤波器系数来进行滤波器设计,然后用Simulink对系统进行可视化建模及仿真。
  关键词:Simulink;工具箱;FIR滤波器;Matlab
  中图分类号:TP18 文献标识码:A文章编号:1009-3044(2007)04-11086-02
  
  1 引言
  计算机仿真技术是应用电子计算机对研究对象的数学模型进行计算和分析的方法。安装了Simulink的计算机就如真正的建模和系统分析实验室一样,在这个实验室中,可以使用Simulink创建模型并寻找解决实际问题的方法,可以用它轻松地搭建一个系统模型,并设置模型参数和仿真参数。由于Simulink是交互式的应用程序,因此在仿真过程中,可以在线修改仿真参数,并立即观察到改变后的仿真结果。
  
  2 Simulink仿真应用简介
  Simulink是一个进行动态系统建模、仿真和综合分析的集成软件包,它可以处理线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统等。在MATLAB7.0中,可直接在Simulink环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP、电力系统等诸多领域。
  Simulink是Matlab中的一个建立系统方框图并在方框图基础上进行系统仿真的环境,是一个对动态系统进行建模、仿真并对仿真结果进行分析的软件包。使用Simulink可以更加方便地对系统进行可视化建模及仿真。
  2.1 Simulink及Signal ProcessingToolbox工具箱
  Simulink和Matlab的无缝结合使得用户可以利用Matlab丰富的资源,建立仿真模型,监控仿真过程,分析仿真结果。基于Matlab的Signal ProcessingToolbox工具箱允许Matlab/Simulink使用实用的图形技术,使得用户能直接将仿真结果以虚拟现实的形式显示出来。可以说,对虚拟现实技术的支持使得Matlab/Simulink在系统仿真领域的应用上了一个新的台阶[1]。
  
  3 基于滤波器设计及分析工具(FDATool)的设计技术
  Matlab在信号处理工具箱(Signal Processing Toolbox)中提供了一个先进的可视化滤波器集成设计环境—滤波器设计及分析工具(Filter Design and Analysis Tool ,FDATool)。借助于FDATool强大的交互式图形用户界面,可以用多种方式,通过直接设置滤波器的性能指标、直接赋值滤波器系数或直接从Matlab工作空间导入滤波器参数设计滤波器。FDATool还提供了一组滤波器分析工具用于频率响应、零—极点图、冲激响应、阶跃响应、群延迟等的分析。如果安装了信号处理工具箱,就可以用FDATool代替滤波器设计函数,进行高效率的滤波器分析和设计。图1是FDATool的交互式图形用户界面。
  图1 FDATool 交互式图形用户界面
  FDATool提供如下功能:
  滤波器类型选择,可选择低通、高通、带通、带阻和其它类型;
  滤波器设计方法选择,包括IIR和FIR两类;
  滤波器设计指标设定;
  滤波器系数计算;
  滤波器分析;
  滤波器结构转换;
  导入滤波器设计;
  导出滤波器设计。
  
  4 建立滤波器系统的Simulink模型并进行仿真分析
  4.1 实现滤波器系统的仿真模型描述
  本文将介绍在Simulink+DSP Blockset环境下应用数字滤波器设计模块进行信号处理(滤波)的可视化设计技术。由于调用了Matlab高度集成化和可视化的计算机仿真环境,用户可以不用编写任何程序语句,仅仅通过鼠标拖放和点击操作,就可完成复杂的数字滤波器的设计工作。下面通过一个应用示例介绍这种基于可视化的信号滤波技术,用数字滤波器设计模块(Digital Filter Design Block)设计、分析和实现滤波器。
  示例的内容及任务是:一个均匀的随机信号经高通滤波器后产生高频噪声,与正弦波信号叠加生成含噪声正弦波信号,再用一个低通滤波器滤除该信号中高频噪声。图2给出一个用数字滤波器设计模块设计、分析和实现这个低通和高通滤波器系统的例子。为比较方便起见,仿真系统用向量示波器显示原始正弦波信号、含噪声正弦波信号和滤波处理后的正弦波信号。
  4.2 建立用数字滤波器设计模块实现滤波器系统的仿真模型
  在建立系统模型之前,首先给出建立模型所需的主要系统模块:
  (1)filtering->filter Designs子库模块库中的Digital Filter Design滤波器设计模块:一个用来产生高频噪声信号,另一个用来对高频噪声信号进行低通滤波。
  (2)Signal Processing Sources信号源模块库中的Random source、 Sine wavey 模块:用来分别产生噪声信号和正弦波信号。
  (3)Signal ProcessingSinks模块库中的Vector Scope显示模块:向量示波器显示模块可以用不同颜色和线形显示三种波形。
  (4)Math Operations模块库中的Matrix Concatenation子系统模块:用来对高频噪声正弦波信号、原始正弦波信号和经低通滤波器滤波后的正弦波信号进行矩阵叠加连接运算。
  图2 用数字滤波器设计模块实现滤波器系统
  4.2.1 系统模块参数设置
  4.2.1.1 设计高通滤波器并且选择滤波器的结构
  (1)双击图2 Digital Filter Desig2模块,打开滤波器设计和分析工具图形用户界面(FDATool GUI),如图1所示。
  (2)在Edit菜单中通过选择Convert Structure …项设置滤波器的结构为Direct form FIR(直接型)。 在Responsetype设置为Haghpass , 在Filter组合框里选择Minimum单选纽,在Frequency组合框里选择Normalizd(0 to 1), wstop = 0.2, wpass=0.5。在Magnitude组合框里选择Astop为80,Apass为1。该高通滤波器将通过大于或等于50%Nyquist频率的信号,并且滤除小于或等于20% Nyquist频率的信号。
  (3)参数设置好后,点击GUI底部的Design Filter 按钮开始设计滤波器。
  (4)点击GUI图形上方的Magnitude Response 按钮,即可获得如图4所示的滤波器幅度响应 (FDATool GUI 工具栏中的其他按钮则提供了采样响应、阶跃响应、群延迟、频率响应、滤波器系数、滤波器指标和零、极点图等)。如图3所示。
  4.2.1.2 设计低通滤波器并且选择滤波器的结构
  (1)双击图2 Digital Filter Desig模块,打开滤波器设计和分析工具图形用户界面(FDATool GUI),如图1所示;
  图3 FDATool(设计高通滤波器并且选择滤波器的结构)
  (2)在Edit菜单中通过选择Convert Structure …项设置滤波器的结构为Direct form FIR(直接型)。Response type 设置为lowpass , 在Filter组合框里选择Minimum单选纽,在Frequency组合框里选择Normalizd(0 to 1),当给定wpass=0.2和wstop = 0.5时,该低通滤波器将通过大于或等于20%Nyquist频率的信号,并且滤除小于或等于50% Nyquist频率的信号;
  (3)参数设置好后点击GUI底部的Design Filter 按钮开始设计滤波器;
  (4)点击GUI图形上方的Magnitude Response 按钮,即可获得如图4所示的滤波器幅度响应 (FDATool GUI 工具栏中的其他按钮则提供了采样响应、阶跃响应、群延迟、频率响应、滤波器系数、滤波器指标和零、极点图等)。如图4所示。
  图4 FDATool(设计低通滤波器并且选择滤波器的结构)
  4.2.1.3 设计其他模块的参数:按表1设置其他模块参数,表中未列出的参数均取模块默认值。
  表1中第一行参数设置:双击 Matrix Concatenation模块,打开图5所示图形界面,对照参数设置表进行设置。表里其他模块参数设置方法大致相同,这里就不一一介绍了。
  (参数设置表) 表1 其他模块参数表
  在建立系统模型之后,按照系统的要求设置系统模块参数。
  图5 表1中第一行Matrix Concatenation模块参数设置
  4.2.2 系统仿真参数的设置
  设计仿真参数:点击模型菜单中的Simulation菜单,如图6所示,并且选择Configuration parameters……打开仿真参数对话框。设置Solver页的参数如图7所示。
  图6 打开设置仿真参数下拉式菜单
  图7 设置仿真参数
  在Simulationtime组合框中选择start time :0.0,stoptime2.0,在solver options 组合框中选择type 为Fixed –step。
  4.3 系统仿真与分析
  在对系统模块参数与仿真参数设置之后,可进行系统仿真分析。在仿真进程中可以随时改变滤波器参数,及时对滤波器的设计指标进行调整。
  例如调整设计低通滤波器并且选择滤波器的结构:
  双击图2 Digital Filter Desig模块,打开滤波器设计和分析工具图形用户界面(FDATool GUI),如图1。
  (1)在Edit菜单中通过选择Convert Structure …项设置滤波器的结构为Direct form FIR(直接型)。Response type 设置为lowpass , 在Filter组合框里选择Minimum单选纽,在Frequency组合框里选择Normalizd(0 to 1),当给定wpass=0.1和wstop = 0.6时,该低通滤波器将通过大于或等于10%Nyquist频率的信号,并且滤除小于或等于60% Nyquist频率的信号;
  (2)参数设置好后点击GUI底部的Design Filter 按钮开始设计滤波器;
  (3)点击GUI图形上方的Magnitude Response 按钮,即可获得滤波器幅度响应(FDATool GUI 工具栏中的其他按钮则提供了采样响应、阶跃响应、群延迟、频率响应、滤波器系数、滤波器指标和零、极点图等)。由于篇幅的限制图略。
  从仿真结果分析:对于低通滤波器而言,降低wpass或增加wstop指标,可以增大低通滤波器的滤波范围。
  
  5仿真结果的演示
  5.1 Simulink下滤波器设计技术应用
  5.1.1 点击菜单栏中的Simulation 菜单,点选Start开始仿真。或者单击菜单栏中小黑箭头即可运行仿真。
  5.1.2 设置向量示波器显示模式:运行仿真后若要修饰示波器显示图形,则向量示波器显示模块可以用不同颜色和线形显示噪声正弦波信号,滤波后的正弦波信号和原始正弦波信号如图8所示.其中右上角图例中的CH1(Channel 1)显示噪声正弦波信号,CH2(Channei2)显示滤波后的正弦波信号,并且CH3(Channel3)显示原始正弦波信号。
  图8 向量示波器显示模式修饰后的信号波形
  
  6 结论
  6.1 基于Matlab/Simulink的仿真技术为能在一个建模环境中进行可视化操作和与动态系统(用Matlab和Simulink描述)进行交互提供了一种有效的解决方案,拓展了Matlab和Simulink在数字信号处理系统中的应用能力。
  6.2 通过对设计滤波器系统的计算机仿真,全面展示了Simulink下滤波器设计技术应用,利用Simulink模型产生的高频噪声信号经低通滤波器滤波后信号更逼真。仿真结果证明,尝试是成功的,有助于研究工作的进一步展开。
  参考文献:
  [1]薛定宇,陈阳泉.基于Matlab/Simulink的系统仿真技术及应用[M].北京:清华大学出版社,2002.
  [2]姚俊,马松辉.Simulink建模与仿真[M].西安:西安电子科技出版社,2002.
  本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:为了较好的解决分散用户对校园网的远程访问,在介绍了VPDN技术的基础上,提出了一种VPDN在校园网上的应用方案。  关键词:VPDN;L2TP;校园网   中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)04-10967-02     1 引言  随着校园网络的发展,校园网内信息资源日益丰富。河北大学的办公区域、学生宿舍、集中的家属区都可以通过专线直接访问校园网。
期刊
摘要:本文讨论了车辆导航系统中GPS实时信息在数字地图上的匹配问题。分析了由于GPS精度误差以及道路网复杂等因素而可能造成直接定位不准确问题,提出了基于GPS实时信息的地图匹配算法,一方面考虑了GPS点的轨迹与道路网的相似性,另一方面也充分利用了GPS数据中有关车辆的实时信息,如航向等,提高了定位的准确性。  关键词:全球定位系统;地理信息系统;车辆导航;地图匹配  中图法分类号:TP368 文献
期刊
摘要:Dreamweaver是目前在网站开发中使用最为广泛的一种软件,因其所见即所得的使用方式而大受欢迎。在网页中添加链接是必不可少的,本文就在网页制作过程中会遇到的两种常见难题给出方法以解答之。  关键词:Dreamweaver;页面跳转;框架;框架页  中图分类号:TP319 文献标识码:A文章编号:1009-3044(2007)04-11121-02    1 引言  Dreamweaver
期刊
摘要:AutoCAD被广泛应用于模具、机械等行业,现对AutoCAD进行二次开发,定制用户自定义下拉菜单,并结合Visual LISP 语言实现对模具零件的参数化设计,开发适合本专业的绘图工具,以提高绘图效率。  关键词:AutoCAD;AutoCAD二次开发;Visual LISP;工具条  中图分类号:TP391.72 文献标识码:A文章编号:1009-3044(2007)04-1112-02
期刊
摘要:在数据挖掘中关联规则中是一个重要的研究方向。Apriori算法是关联规则中最著名的算法。本文分析了Apriori算法存在的不足,与可以改进的方向。并提出了一种基于压缩事务项的改进方法,以提高Apriori算法的效率。  关键词:数据挖掘;关联规则;频繁项;Apriori算法  中图分类号:TP301文献标识码:A文章编号:1009-3044(2007)04-11096-01    1 引言 
期刊
摘要:介绍了如何使用Word制作一个教案设计模版。通过这一制作,意在抛砖引玉,帮助广大教员在编写教案过程中,进一步提高Word的应用能力,节时提效,将更多的时间用于教学设计。  关键词:教案模版;宏;菜单  中图分类号:TP311 文献标识码:A文章编号:1009-3044(2007)04-11115-02    1 引言  编写教案是教员备课的重要内容之一,由于教案内容的详实性以及教案格式的复杂
期刊
摘要:C++ Builder 是一个功能齐全的Windows应用程序开发工具.它的应用范围非常广泛.本文主要从四个方面叙述了按钮的制作。  关键字:C++ Builder;按钮;组件  中图分类号:TP311 文献标识码:A文章编号:1009-3044(2007)04-11065-02    1 引言  C++ Builder 是一个功能齐全的Windows应用程序开发工具,它的功能很强大,应用范
期刊
摘要:介绍了在VB中调用Bitblt函数和Sleep函数实现图像马赛克效果的方法,并通过一个具体的实例,讲述了其设计过程及程序代码。  关键词:Bitblt;Sleep;马赛克  中图分类号:TP312文献标识码:A文章编号:1009-3044(2007)04-11120-01    1 引言  马赛克效果是用方块填充某一图像框,从而实现图像变换的效果。Bitblt函数是API函数中的位图函数之一
期刊
摘要:本文提出一种新的全向天线信号强度模拟实现方法。文章分析了该方法实现的基本原理,简介了应用的主要技术,阐述了其实现的具体方法,并给出了软件流程图和关键程序代码,最后,对该系统的实际工程中应用做出了评价。   关键词:全向天线;模拟;VB;画图函数  中图分类号:TP337 文献标识码:A文章编号:1009-3044(2007)04-11105-02    1 引言  随着国家经济的发展和信息产
期刊
摘要:本文介绍了在21世纪出现的生物计算机,分子计算机、光计算机、超导计算机和量子计算机,这些新型计算机将对未来产生重大影响的。  关健词:生物计算机;分子计算机;光计算机超导计算机;量子计算机  中图分类号:TP38文献标识码:A文章编号:1009-3044(2007)04-11136-01    1 引言  自从1946年世界上第一台电子计算机诞生以来, 电子计算机已经走过了半个多世纪的历程。
期刊