资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第七章,Simulink,仿真环境,7.1,Simulink,的工作环境,7.2,Simulink,的基本模块,7.3,模型文件的创建和仿真,7.4,子系统的封装,过程,7.1,Simulink,的工作环境,7.1.1,Simulink,简介,Simulink,中的“,Simu,”,一词表示可用于计算机仿真,而“,Link”,一词表示它能进行系统连接,即把一系列模块连接起来,构成复杂的系统模型。作为,MATLAB,的一个重要组成部分,,Simulink,由于它所具有的上述的两大功能和特色,以及所提供的可视化仿真环境、快捷简便的操作方法,而使其成为目前最受欢迎的仿真软件。,SIMULINK,是,MATLAB,软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与,MATLAB,语言的主要区别在于,其与用户交互接口是基于,Windows,的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。,所谓模型化图形输入是指,SIMULINK,提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以,.,mdl,文件进行存取),进而进行仿真与分析。,7.1.2,Simulink,的启动,Simulink,的启动方法有下列几种:,1),在,MATLAB,的命令窗口输入语句,simulink,,,即可启动,Simulink,。,Simulink,启动后会显示,Simulink,模块库浏览器,(,Simulink,Library Browser),窗口。,2),单击,MATLAB,主窗口工具栏上的,Simulink,命令按钮。,3),在,MATLAB,主窗口,File,菜单中选择,New,菜单项下的,Model,命令,在出现,Simulink,模块库浏览器窗口的同时,还会出现一个名字为,untitled,的模型编辑窗口。,Simulink,的模型编辑窗口由菜单、工具栏、模型框图窗口和状态栏等组成。,其中菜单提供了模型建立和仿真的几乎全部功能。工具栏是模型建立和仿真过程中常用功能的命令按钮,模型框图窗口是模型编辑区,状态栏是仿真过程中的状态信息。,7.1.3,模型编辑窗口,File,的常用菜单项功能,菜单项 功能,Model properties,模型属性,Print,打印模型,Preferences,SIMULINK,界面的默认设置选项,Close,关闭当前,Simulink,窗口,Edit,的常用菜单项功能,菜单项 功能,Create subsystem,创建子系统,Mask subsystem,封装子系统,Look under mask,查封装子系统的内部结构,Update diagram,更新模型框图的外观,View,的常用菜单项功能,菜单项,功能,Go to parent,显示当前系统的父系统,Model browser options,模型浏览器设置,Block data tips options,鼠标位于模块上方时显示 模块内部数据,Library browser,库浏览器,Model explorer,模型浏览器,Zoom in/Zoom out,放大,/,缩小,Fit system to view,自动选择最合适的显示比例,Normal,正常比例,(100%),显示模型,Simulation,的常用菜单项功能,菜单项,功能,Start/Stop,启动,/,停止仿真,Configuration Parameters,设置仿真参数,Normal,普通,Simulink,模型,Accelerator,产生加速,Simulink,模型,Format,的常用菜单项功能,菜单项,功能,Text alignment,标注文字对齐工具,Enable,tex,commands,使,tex,命令有效,Filp,name,翻转模块名,Filp,block/Rotate Block,翻转,/,旋转模块,Show name,显示模块的名字,Show port labels,显示端口标签,Foreground color,前景色,Background color,背景色,Screen color,屏幕颜色,Port/signal displays,端口,/,信号显示,Block displays,显示模块,Tools,的常用菜单项功能,菜单项 功能,Simulink,debugger,Simulink,调试器,Fixed_point settings,浮点设置,Model advisor,模型咨询,Lookup table editor,查表编辑,Data class designer,用户定义数据类型设计器,Bus editor,线路编辑,Signal&scope manager,信号和示波器管理器,Real_time workshop,实时工作平台,External mode control panel,外部的模式控制平台,Control design,控制设计,Parameter,estination,参数估计,Report,genetor,报告生成器,7.2,Simulink,的基本模块,7.2.1,基本模块库,:,常用的模块子库(,Commonly Used Blocks,),连续模块子库(,Continuous,),离散模块子库(,Discrete,),逻辑和位操作模块子库(,Logic and Bit operation,),查表函数模块子库(,Lookup Tables,),数学操作子库(,Math Operations,),端口与子系统子库(,Ports&Subsystems,),信号和系统模块(,Signals&Systems,),接收器子库(,Sinks,),输入源子库(,Sources,),Sources,(,输入源模块),sources.mdl,Constant,:,常数信号。,Clock,:,时钟信号。,From Workspace,:,来自,MATLAB,的工作空间。,From File(.mat),:,来自数据文件。,Pulse Generator,:,脉冲发生器。,Repeating Sequence,:,重复信号。,Signal Generator,:,信号发生器,可以产生正弦、方波、锯齿波及随意波。,Sine Wave,:,正弦波信号。,Step,:,阶跃波信号。,Math,(,数学模块),math.mdl,Abs,:取绝对值,Sign,:符号函数,Sum,:加减运算,Product,:乘运算,Dot Product,:点乘运算,Gain,:增益模块,Math Function,:包括指数函数、对数函数、求平方、开根号等常用数学函数,Trigonometric Function,:三角函数,包括正弦、余弦、正切等,MinMax,:最值运算,Sinks,(,接收器模块),sinks.mdl,Display,:输入数据显示,Scope,:,示波器。,XY Graph,:,显示二维图形。,To Workspace,:,将输出写入,MATLAB,的工作空间。,To File(.mat),:,将输出写入数据文件。,其他模块,Signal,Routing.mdl,和,Continuous.mdl,Mux,:,信号汇总器,Demux,:信号分路器,Derivative:,数值微分器,Integrate,:积分器,State-Space:,状态空间方程,Transfer,Fcn,:,传递函数,7.3.1,模块的操作,模块的选定,模块的选定有三种方式:,1),选定单个模块,选定对象只要在模块上单击鼠标,被选定的对象的四角处会出现小黑块编辑框。,2),选定多个模块,如果选定多个模块,可以按下,Shift,键,然后再单击所需选定的模块;或者用鼠标拉出矩形虚线框,将所有待选模块框在其中,则矩形框中所有的模块均被选中。,3),选定所有模块,如果要选定所有模块,可以选择菜单,Edit,Select all,。,7.3,模型文件的创建和仿真,模块的复制,模块的复制有两种方式:,1),不同模型窗口,(,包括模型库窗口,),之间的模块复制,选定模块,用鼠标将其拖到另一模型窗口。,选定模块,使用菜单和工具栏中的,Copy,和,Paste,命令。,2),在同一模型窗口内的复制模块,选定模块,按下鼠标右键,拖动模块到合适的地方,释放鼠标。,选定模块,按住,Ctrl,键,再用鼠标拖动对象到合适的地方,释放鼠标。,使用菜单和工具栏中的,Copy,和,Paste,命令。,模块的移动,模块的移动有两种方式:,1),在同一模型窗口移动模块,选定需要移动模块,用鼠标将模块拖到合适的地方。,2),在不同模型窗之间移动模块,在不同模型窗之间移动模块,在用鼠标移动的同时按下,Shift,键。当模块移动时,与之相连的连线也随之移动。,模块的删除,要删除模块,应选定删除模块,按,Delete,键。,选定待删除模块后,用菜单和工具栏的,Edit,Cut,。,模块的缩放,选定需要改变大小的模块,出现小黑块编辑框后,用鼠标拖动编辑框,可以实现放大或缩小。,使用菜单,view,中的,Zoom in/Zoom out,。,模块的翻转,选定模块,选择菜单,Format,Flip,Block,可以将模块旋转,180,度。,选定模块,选择菜单,Format,Rotate,Block,可以将模块旋转,90,度。,编辑和修改模块名,单击模块下面或旁边的模块名,出现虚线编辑框就可对模块名进行编辑、修改。选定模块,选择菜单,Format,Font,,打开字体对话框设置字体。,7.3.2,信号线的操作,信号线的操作,是,创建模型文件时连接模块的,操作,,常用的信号线的操作如下:,模块间连线,先将光标指向一个模块的输出端,待光标变为十字符后,按下鼠标左键并拖动,直到另一模块的输入端。,信号线的分支和折线,1),分支的产生,将光标指向信号线的分支点上,按鼠标右键,光标变为十字符,拖动鼠标直到分支线的终点,释放鼠标;或者按住,Ctrl,键,同时按下鼠标左键拖动鼠标分支线的终点。,2),信号线的折线,选中已存在的信号线,将光标指向折点处,按住,Shift,键,同时按下鼠标左键,当光标变成小圆圈时,用鼠标拖动小圆圈将折点拉至合适处,释放鼠标。,添加,注释,双击信号线后出现矩形文本输入框,可以添加文本注释,(label),。,7.3.3Simulink,的文件操作,新建文件,新建仿真模型文件有以下三种方法:,1),在,MATLAB,的命令窗口选择菜单,File,New,Model,。,2),在,Simulink,模块库浏览器窗口选择菜单,File,New,Model,,,或者单击工具栏的图标。,3),在,Simulink,模型窗口选择菜单,File,New,Model,,,或者单击工具栏的图标,。,编辑文件,创建模型文件时只需用鼠标右键单击,Simulink,模块库浏览器,(,Simulink,Library Browser),窗口中相应的模块,选择其下拉菜单的第一项,填加到已创建的模型文件中,通过信号线连接各模块即可。,保存文件,模型创建完成后,从模型编辑窗口的,File,菜单项中选择,Save,或,Save As,命令,或者单击工具栏的图标,可以将模型以模型文件的格式,(,扩展名为,.,mdl,),存入磁盘。,例,7.1,建立仿真模型,1),模块的属性设置 每个模块的属性对话框的内容都相同。属性名及其含义如下:,a,说明,(Description),对模块在模型中用法的注释,b,优先级,(Priority),规定该模块在模型中相对于其它模块执行的优先顺序,c,标记,(Tag),用户为模块添加的文本格式标记,d,调用函数,(Open function),当用户双击该模块时调用的,MATLAB,函数,e,属性格式字符串,(Attributes format string),指定在该模块的图标下显示模块的哪个参数和格式。,2),选择,filesave,as,以,first.mdl,保存上述模型。,3),选择,simulationstart,或工具栏的仿真按钮,仿真,first.mdl,模型,双击示波器按钮,将显示波形结果,7.4,子系统的封装,过程,7.4.1,子系统建立的方法,Simulink,允许建立类似于,MATLAB,的函数文件功能的子系统。建立子系统有两种方法:,1,对已存在的模型的某些部分或全部使用菜单命令,EditCreate Subsystem,,,封装为子系统。,2,使用,Ports&Subsystems,模块库中的,Subsystem,模块直接创建子系统。,把已存在的,Simulink,模型中的某个部分封装为子系统是建立子系统的重要方法,步骤如下:,1),用矩形框选择要封装的部分,包括模块和信号线。,2),在模块窗口菜单选项中选择菜单,Edit,Create subsystem,,,出现封装后的子系统。子系统有一个默认的输入端口和输出端口,默认名为,In1,和,Out1,。,若查看子系统的内容或对子系统进行再编辑,可以双击子系统模块,则会显示子系统内容的新窗口。在窗口内,除原始的模块外,,Simulink,自动添加了输入和输出模块,分别代表子系统的输入端口和输出端口。,3),选择,Edit,Edit,Mask,设置封装参数,主要有,Icon,,,Parameters,,,Initialization,和,Documentation,四个选项卡。,Icon,选项卡用于设定封装模块的名字和外观。,Parameters,选项卡用于输入变量名称和相应的提示。,Initialization,选项卡用于初始化封装子系统。,Documentation,选项卡用于编写与该封装模块对应的,Help,和说明文字,分别有,Mask type,、,Mask Description,和,Mask help,栏。,设置参数设置对话框中的,Apply,按钮用于将修改的设置应用于封装模块;,Unmask,按钮用于将封装撤销,则双击该模块就不会出现定制的对话框。,例,7.2,7.5,命令窗口创建,Simulink,模型,7.5.1,Simulink,模型文件操作命令,在命令窗口中常用的,Simulink,模型文件操作有三种:创建新模型、打开模型和保存模型。,创建新模型,new_system,命令用来在,MATLAB,的工作空间创建一个空白的,Simulink,模型,调用格式为:,new_system(newmodel,option,),其中,newmode1,为模型名;,option,选项可以是,library,和,model,两种,也可以省略,默认为,model,。,打开模型,open_system,命令用来打开逻辑模型,在,Simulink,模型窗口显示该模型,调用格式为:,open_system(model),其中,model,为模型名。,例如在命令窗口输入语句,open_system(L7_2),,,打开已建立的,L7_2,模型文件。,保存模型,save_system,命令用来保存模型为模型文件,扩展名为,mdl,调用格式为:,save_system(model,文件名,),其中,model,为模型名可省略,如果不给出模型名,则自动保存当前的模型;文件名指保存的文件名,是字符串,也可省略,如果不省略则保存为新文件。,7.5.2,Simulink,模型文件编辑命令,Simulink,模型文件编辑过程只需添加,/,删除模块和信号线即可。,添加模块,使用,add_block,命令在打开的模型窗口中添加新模块,调用格式为:,add_block,(,源模块名,,,目标模块名,属性名,1,属性值,1,,,属性名,2,属性值,2,),其中源模块名为一个已知的库模块名,或在其它模型窗口中定义的模块名,,Simulink,自带的模块为内在模块。,例如正弦信号模块为,built-in/Sine Wave,,,目标模块名为在模型窗口中使用的模块名。,添加信号线,模块需要用信号线连接起来,添加信号线使用,add_line,命令,add_line,命令的调用格式为:,add_line,(,模块名,起始模块名,/,输出端口号,终止模块名,/,输入端口号,),add_line,(,模块名,m),其中模块名为在模型窗口中的模块名;,m,为有两列元素的矩阵,每列给出一个转折点坐标。,删除模块,使用,delete_block,命令在打开的模型窗口中删除指定的模块,调用格式为:,delete_block,(,源模块名,),其中源模块名为一个已知的库模块名,或在其它模型窗口中定义的模块名。,删除信号线,删除信号线使用,delete_line,命令,调用格式为:,delete_line,(,模型名,终止模块名,/,输入端口号,起始模块名,/,输出端口号,),其中模型名为在模型窗口中的模型名。,谢谢!,
展开阅读全文