《刘卫国全套配套课件matlab程序设计与应用第3版第12章matlabsimulink系统仿真》由会员分享,可在线阅读,更多相关《刘卫国全套配套课件matlab程序设计与应用第3版第12章matlabsimulink系统仿真(133页珍藏版)》请在金锄头文库上搜索。
1、第12章 MATLAB Simulink系统仿真 12.1 Simulink操作基础 12.2 系统仿真模型的建立 12.3 系统的仿真与分析 12.4 子系统及其封装 12.5 S函数的设计与应用,第12章 MATLAB Simulink系统仿真,12.1 Simulink操作基础,12.1.1 Simulink的启动与退出 1Simulink的启动 在安装MATLAB的过程中,若选中了Simulink组件,则在MATLAB安装完成后,Simulink也就安装好了。如果需要,可以直接启动Simulink,步骤如下: 在MATLAB的命令行窗口输入simulink命令,或选择MATLAB主窗口
2、“主页”选项卡,单击“SIMULINK”命令组中的“Simulink”命令按钮,或选择MATLAB主窗口“主页”选项卡,单击“文件”命令组中的“新建”命令按钮,再从下拉菜单中选择“Simulink Model”命令,这时进入Simulink起始页。 在Simulink起始页单击“Blank Model”按钮,打开一个名为untitled的模型编辑窗口,如图12-1所示。利用模型编辑窗口,可以通过鼠标的拖放操作创建一个仿真模型。,第12章 MATLAB Simulink系统仿真,第12章 MATLAB Simulink系统仿真,在Simulink模型编辑窗口选择FileNewBlank Mode
3、l命令,或按Ctrl+N组合键,或单击工具栏中的命令按钮,又可以打开新的模型编辑窗口。 在Simulink模型编辑窗口单击“Library Browser”按钮,打开如图12-2所示的Simulink Library Browser(Simulink模块库浏览器)窗口。该窗口包含两个窗格,左侧的窗格以树状列表的形式列出了所有模块库。若单击某个模块库,右侧的窗格列出该模块库的子模块库;若单击某个子模块库,右侧的窗格列出该子模块库中的所有模块。,第12章 MATLAB Simulink系统仿真,第12章 MATLAB Simulink系统仿真,在Simulink Library Browser窗口
4、中,单击其工具栏中的按钮或按Ctrl+N组合键,可以打开模型编辑窗口。 模型创建完成后,在Simulink模型编辑窗口选择FileSave命令或Save as命令,或单击模型编辑窗口工具栏中的save命令按钮,将模型以模型文件的格式存盘。MATLAB 2012b以前的版本,模型存储为MDL格式(文件名扩展名为.mdl),后来的版本增加了SLX格式(文件名扩展名为.slx),信息存储使用Unicode UTF-8的XML标准。保存文件的格式与当前系统支持的字符编码有关,如果模型中使用了中文字符,建议使用SLX格式存储。 注意:Simulink不能独立运行,只能在MATLAB环境中运行。,第12章
5、 MATLAB Simulink系统仿真,2模型文件的打开 如果要对一个已经存在的模型文件进行编辑修改,需要打开该模型文件,其方法有: 在MATLAB命令行窗口直接输入模型文件名(不要加扩展名),这要求该模型文件在当前文件夹下或在已定义的搜索路径中。 在Simulink起始页单击“Open file”按钮,然后选择或输入欲编辑模型的名字。或直接选择最近打开过的模型文件打开模型。 在Simulink模型编辑窗口选择FileOpen命令,或按Ctrl+O组合键,或单击工具栏中的Open命令按钮,然后选择或输入欲编辑模型的名字。也可以选择FileOpen Recent命令打开最近打开过的模型文件。
6、在Simulink Library Browser窗口中,单击其工具栏中的Open命令按钮,也能打开已经存在的模型文件。,第12章 MATLAB Simulink系统仿真,3Simulink的退出 要退出Simulink,只要关闭所有模型编辑窗口和Simulink Library Browser窗口即可。,第12章 MATLAB Simulink系统仿真,12.1.2 Simulink仿真初步,1模型元素 典型的Simulink模型包括以下3种元素。 信号源(source)。信号源可以是Constant(常量)、Clock(时钟)、Sine Wave(正弦波)、Step(单位阶跃函数)等。 系
7、统模块。例如,Math Operations模块(数学运算)、Continuous模块(连续系统)、Discrete模块(离散系统)等。 信宿(sink)。信号可以在Scope(示波器)、XY Graph(图形记录仪)上显示,也可以存储到文件(To File)、导出到工作空间(To Workspace)。,第12章 MATLAB Simulink系统仿真,2仿真步骤 利用Simulink进行系统仿真通常包括以下步骤。 建立系统仿真模型,包括添加模块、设置模块参数、进行模块连接等操作。 设置仿真参数。 启动仿真并分析仿真结果。,第12章 MATLAB Simulink系统仿真,3简单实例 下面通
8、过一个简单实例,说明利用Simulink建立仿真模型并进行系统仿真的方法。 例12-1 利用Simulink仿真曲线y(t)=sintsin(4t)(0t)。 正弦信号由Sources模块库(信号源)中的Sine Wave模块提供,求积用Math Operations模块库(数学运算)中的Product模块实现,再用Sinks模块库(信号输出)中的Scope模块(示波器)输出波形,操作过程如下。,第12章 MATLAB Simulink系统仿真, 打开一个名为untitled的模型编辑窗口,创建仿真模型。 打开Simulink Library Browser窗口,将所需模块添加到模型中。在Si
9、mulink Library Browser窗口中展开Simulink模块库,然后单击Sources模块库,在右侧的窗口中找到Sine Wave模块,用鼠标将其拖曳到模型编辑窗口;单击Math Operations模块库,在右侧的窗口中找到Product模块,用鼠标将其拖曳到模型窗口;单击Sinks模块库,在右侧的窗口中找到Scope模块,用鼠标将其拖曳到模型窗口。 用连线将各个模块连接起来组成系统仿真模型,如图12-3所示。大多数模块两边有符号“”,与尖端相连的端表示信号输入端,与开口相连的端表示信号输出端。连线时从一个模块的输出端按下鼠标左键,拖拽至另一模块的信号输入端,松开鼠标左键完成连
10、线操作,连线箭头表示信号流的方向。也可以单击信号流的源模块后,按住Ctrl键,然后单击信号流的目标模块,实现模块连线。,第12章 MATLAB Simulink系统仿真,第12章 MATLAB Simulink系统仿真, 设置模块参数。先双击Sine Wave模块,打开其Block Parameters对话框,如图12-4所示,分别设置Frequency(频率)为1、4*pi,设置Amplitude(幅值)都为1,其余参数不改变。对于求积模块,其参数不改变。,第12章 MATLAB Simulink系统仿真,模型建好后,在模型编辑窗口选择FileSave命令或Save as命令,或单击模型编辑
11、窗口工具栏中的save命令按钮,将模型以模型文件的格式存盘。 设置系统仿真参数。在模型编辑窗口选择SimulationModel Configuration Parameters命令,打开仿真参数设置对话框,在Star time文本框中分别设置起始为0,在Stop time设置终止时间为pi。把Solver options(算法选项)中的Type参数设为Fixed-step(固定步长),并在其右侧的Solver算法编辑框中选择ode5(Dormand-Prince)选项,即5阶Runge-Kutta算法,再把Fixed-step size的值设置为0.001,如图所示。,第12章 MATLAB
12、 Simulink系统仿真,第12章 MATLAB Simulink系统仿真, 仿真操作。在模型编辑窗口选择SimulationRun命令,或单击工具栏中的Run命令按钮,再双击示波器模块,就可在示波器窗口中看到仿真结果,曲线如图12-6所示。,第12章 MATLAB Simulink系统仿真,12.2 系统仿真模型的建立,12.2.1 Simulink的基本模块 模块是构成系统仿真模型的基本单元,用适当的方式把各种模块连接在一起就能够建立动态系统的仿真模型,所以构建系统仿真模型主要涉及Simulink模块的操作。 Simulink的模块库提供了大量模块,大体分为两类:基本模块库和专业模块库。
13、单击Simulink Library Browser窗口中Simulink前面的符号,将看到Simulink模块库中包含的基本子模块库,单击所需要的子模块库,在右边的窗口中将看到相应的模块,选择所需模块,可用鼠标将其拖曳到模型编辑窗口。同样,在Simulink Library Browser窗口左侧的Simulink选项上单击鼠标右键,在弹出的快捷菜单中选择“Open Simulink Libray”命令,将打开Simulink基本模块库窗口,如图12-7所示。双击其中的子模块库图标,打开子模块库,找到仿真所需要的模块。,第12章 MATLAB Simulink系统仿真,第12章 MATLAB
14、 Simulink系统仿真,以Continuous模块库(连续系统)为例,在Simulink基本模块库窗口中双击Continuous模块库的图标即可打开该模块库窗口,也可以在Simulink Library Browser窗口中Simulink下选中Continuous选项,然后在Simulink Library Browser窗口右侧打开连续系统模块库。在连续系统模块库中,包含Integrator(积分环节)、Derivative(微分环节)、State-Space(状态方程)、Transfer Fcn(传递函数)等许多模块,可供连续系统建模使用。,第12章 MATLAB Simulink系
15、统仿真,12.2.2 模块操作,1添加与删除模块 要把一个模块添加到模型中,首先要在Simulink模块库中找到该模块,然后将这个模块拖曳到模型编辑窗口中即可。 要删除模块,需要先选定模块,再按Delete键,或选择EditCut命令或Delete命令。也可以右击需要删除的模块,在弹出的快捷菜单中选择Cut命令或Delete命令。Cut命令将删除的模块送到剪贴板,Delete命令将彻底删除模块。,第12章 MATLAB Simulink系统仿真,2选取模块 要在模型编辑窗口中选择单个模块,只要用鼠标在模块上单击即可,这时模块四周出现深色边框。要选取多个模块,可以在所有模块所占区域的一角按下鼠标
16、左键不放,拖向该区域的对角,在此过程中会出现深色框,当深色框包住了要选的所有模块后,放开鼠标左键,这时所有被选中模块的周围会出现深色边框,表示模块都被选中了。,第12章 MATLAB Simulink系统仿真,3复制模块 在建立系统仿真模型时,可能需要多个相同的模块,这时可采用模块复制的方法。在同一模型编辑窗口中复制模块的方法是:单击要复制的模块,按住鼠标左键并同时按下Ctrl键,移动鼠标到适当位置放开鼠标左键,模块复制以后,会发现复制出的模块名称在原名称的基础上加上了编号,这是Simulink的约定,每个模型中的模块和名称是一一对应的,每一个模块都有不同的名字。 在不同的模型编辑窗口之间复制模块的方法是:首先打开源模块和目标模块所在的窗口,然后单击要复制的模块,按住鼠标左键移动鼠标到相应窗口(不用按住Ctrl键),然后释放鼠标左键,该模块就会被复制过来,而源模块不会被删除。 复制操作还可以在模型编辑窗口选择EditCopy命令和EditPaste命令来完成。