Simulink仿真软件.ppt
《Simulink仿真软件.ppt》由会员分享,可在线阅读,更多相关《Simulink仿真软件.ppt(69页珍藏版)》请在三一办公上搜索。
1、MATLAB SDU GMLI,1,MATLAB Simulink仿真软件Simulink操作基础系统仿真模型系统的仿真使用命令操作对系统进行仿真子系统及其封装技术S函数的设计与应用,MATLAB SDU GMLI,2,I Simulink操作基础,Simulink简介 Simulink是MATLAB的重要组成部分,提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该系统进行仿真、设置不同的输出方式来观察仿真结果等功能。,MATLAB SDU GMLI,3,Simulink的启动与退出,1Simulink的启动在MATLAB的命令窗口输入simulink或单击MATLAB主窗口工具栏上的
2、Simulink命令按钮即可启动Simulink。Simulink启动后会显示Simulink模块库浏览器(Simulink Library Browser)窗口。,MATLAB SDU GMLI,4,在MATLAB主窗口File菜单中选择New菜单项下的Model命令,在出现Simulink模块库浏览器的同时,还会出现一个名字为untitled的模型编辑窗口。在启动Simulink模块库浏览器后再单击其工具栏中的Create a new model命令按钮,也会弹出模型编辑窗口。利用模型编辑窗口,可以通过鼠标的拖放操作创建一个模型。,MATLAB SDU GMLI,5,模型创建完成后,从模型
3、编辑窗口的File菜单项中选择Save或Save As命令,可以将模型以模型文件的格式(扩展名为.mdl)存入磁盘。如果要对一个已经存在的模型文件进行编辑修改,需要打开该模型文件,其方法是,在MATLAB命令窗口直接输入模型文件名(不要加扩展名.mdl)。在模块库浏览器窗口或模型编辑窗口的File菜单中选择Open命令,然后选择或输入欲编辑模型的名字,也能打开已经存在的模型文件。另外,单击模块库浏览器窗口工具栏上的Open a model命令按钮或模型编辑窗口工具栏上的Open model命令按钮,也能打开已经存在的模型文件。,MATLAB SDU GMLI,6,2Simulink的退出为了退
4、出Simulink,只要关闭所有模型编辑窗口和Simulink模块库浏览器窗口即可。,MATLAB SDU GMLI,7,II 系统仿真模型,Simulink仿真模型概述 Simulink仿真模型(Model)在视觉上表现为直观的方框图,在文件上则是扩展名为.mdl的ASCII代码,在数学上体现了一组微分方程或者是差分方程,在行为上模拟了物理器件构成的实际系统的动态特性。模块(Block)是构成系统仿真模型的基本单元。用适当的方式把各种模块连接在一起就能够建立动态系统的仿真模型。从宏观角度来看,Simulink模型通常包含了3类模块:信源(Source)、系统(System)及信宿(Sink)
5、。,MATLAB SDU GMLI,8,Simulink的模块库提供了大量模块。单击模块库浏览器中Simulink前面的“+”号,将看到Simulink模块库中包含的子模块库,单击所需要的子模块库,在右边的窗口中将看到相应的基本模块,选择所需基本模块,可用鼠标将其拖到模型编辑窗口。同样,在模块库浏览器左侧的Simulink栏上单击鼠标右键,在弹出的快捷菜单中单击Open the Simulink Libray 命令,将打开Simulink基本模块库窗口。单击其中的子模块库图标,打开子模块库,找到仿真所需要的基本模块。,MATLAB SDU GMLI,9,模块的编辑,1添加模块 在library
6、 Browser窗口直接点击需要的模块,拖动到model文件中。2选取模块 只要用鼠标在模块上单击,模块饺上出现黑色小方块。若选择多个模块,则鼠标大框选中即可。3复制与删除模块(1)在不同窗口,用鼠标左键点住要复制的模块,按住左键移动到相应窗口,释放。(2)同一窗口,用鼠标左键点住要复制的模块,按住左键,同时按住ctrl键,到适当位置松开鼠标。(3)删除模块,选中模块,选择cut或clear命令。,MATLAB SDU GMLI,10,4模块外形的调整(1)改变大小:选定模块,用鼠标左键点住其周围的4个黑方块中的任何一个并拖动。(2)调整方向。选定模块,选择format菜单中的 Rotate
7、Block命令使模块按顺时针方向旋转90度,Flip Block命令使模块旋转180度。(主要是接口变化)(3)给模块加阴影。选定模块,选择Format菜单中的show Drop Shadow命令使模块产生阴影效果。,MATLAB SDU GMLI,11,5模块名的处理模块名的显示:选定模块,Format菜单中的Hide Name命令,模块名子被隐藏,同时Hide name变为Show name。修改模块名:鼠标单击模块名的区域。改变模块名位置:当模块接口在上下侧,模块名只能在左右;接口在左右侧,名只能在上下侧,Format中的Flip name。,MATLAB SDU GMLI,12,1连接
8、两个模块2模块间连线的调整3连线的分支4标注连线5删除连线,MATLAB SDU GMLI,13,模块的连接,1连接两个模块 移动鼠标到输出端,鼠标箭头会变成十字光标,点住鼠标左键,移动鼠标到另一个模块的输入点,当十字光标出现重影时,释放鼠标完成连接。如果两模块不在同一水平线上,连线是折线。,2模块间连线的调整 把鼠标移动到需要移动的线段位置,按住鼠标左键,移动鼠标到达目标位置,释放鼠标。,MATLAB SDU GMLI,14,3连线之间插入模块 把该模块用鼠标拖到连线上,然后释放鼠标即可。4连线的分支。连好一条线后,把鼠标移动到分支点的位置,先按下ctrl键,然后按住鼠标拖动到目标模块的输入
9、端,释放鼠标和Ctrl键。5删除连线。右键cut命令。6连线信息(1)显示数据类型。Format中的Port data types。显示前一个模块的数据类型。(2)信号标记。双击要做标记的线段,出现一个小文本编辑器,在里面输入标记的文本。,MATLAB SDU GMLI,15,模块的参数和属性设置,模块的参数设置 Simulink中几乎所有模块的参数都允许用户进行设置,只要*双击要设置的模块或*在模块上按鼠标右键并在弹出的快捷菜单中选择相应模块的参数设置命令就会弹出模块参数对话框。该对话框分为两部分,上面一部分是模块功能说明,下面一部分用来进行模块参数设置。*同样,先选择要设置的模块,再在模型
10、编辑窗口Edit菜单下选择相应模块的参数设置命令也可以打开模块参数对话框。,MATLAB SDU GMLI,16,2模块的属性设置*选定要设置属性的模块,然后在模块上按鼠标右键并在弹出的快捷菜单中选择Block properties,*或先选择要设置的模块,再在模型编辑窗口的Edit菜单下选择Block properties命令,将打开模块属性对话框。该对话框包括General、Block annotation和Callbacks 3个可以相互切换的选项卡。其中选项卡中可以设置3个基本属性:Description(说明)、Priority(优先级)、Tag(标记)。,MATLAB SDU GM
11、LI,17,SIMULINK的模块库介绍,SIMILINK模块库按功能进行分为以下8类子库:Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块),MATLAB SDU GMLI,18,连续模块(Continuous)continuous.mdl,Integrator:输入信号积分Derivative:输入信号微分State-Space:线性状态空间系统模型Transfer-Fcn:线性传递
12、函数模型Zero-Pole:以零极点表示的传递函数模型Memory:存储上一时刻的状态值Transport Delay:输入信号延时一个固定时间再输出Variable Transport Delay:输入信号延时一个可变时间再输出,MATLAB SDU GMLI,19,离散模块(Discrete)discrete.mdl,Discrete-time Integrator:离散时间积分器Discrete Filter:IIR与FIR滤波器Discrete State-Space:离散状态空间系统模型Discrete Transfer-Fcn:离散传递函数模型Discrete Zero-Pole:
13、以零极点表示的离散传递函数模型First-Order Hold:一阶采样和保持器Zero-Order Hold:零阶采样和保持器Unit Delay:一个采样周期的延时,MATLAB SDU GMLI,20,函数和平台模块(Function&Tables)function.mdl,Fcn:用自定义的函数(表达式)进行运算MATLAB Fcn:利用matlab的现有函数进行运算S-Function:调用自编的S函数的程序进行运算Look-Up Table:建立输入信号的查询表(线性峰值匹配)Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配),MATLAB SDU GM
14、LI,21,数学模块(Math)math.mdl,Sum:加减运算Product:乘运算Dot Product:点乘运算Gain:比例运算Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等MinMax:最值运算Abs:取绝对值Sign:符号函数,MATLAB SDU GMLI,22,Logical Operator:逻辑运算Relational Operator:关系运算Complex to Magnitude-Angle:由复数输入转为幅值和相角输出Magnitude-Angle to
15、 Complex:由幅值和相角输入合成复数输出Complex to Real-Imag:由复数输入转为实部和虚部输出Real-Imag to Complex:由实部和虚部输入合成复数输出,MATLAB SDU GMLI,23,非线性模块(Nonlinear)nonlinear.mdl,Saturation:饱和输出,让输出超过某一值时能够饱和。Relay:滞环比较器,限制输出值在某一范围内变化。Switch:开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来。Manual Switch:手动选择开关,MATLAB SDU GMLI,24,信号和系统模块(S
16、ignal&Systems)sigsys.mdl,In1:输入端。Out1:输出端。Mux:将多个单一输入转化为一个复合输出。Demux:将一个复合输入转化为多个单一输出。Ground:连接到没有连接到的输入端。Terminator:连接到没有连接到的输出端。SubSystem:建立新的封装(Mask)功能模块,MATLAB SDU GMLI,25,接收器模块(Sinks)sinks.mdl,Scope:示波器。XY Graph:显示二维图形。To Workspace:将输出写入MATLAB的工作空间。To File(.mat):将输出写入数据文件。,MATLAB SDU GMLI,26,输入
17、源模块(Sources)sources.mdl,Constant:常数信号。Clock:时钟信号。From Workspace:来自MATLAB的工作空间。From File(.mat):来自数据文件。Pulse Generator:脉冲发生器。Repeating Sequence:重复信号。Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波。Sine Wave:正弦波信号。Step:阶跃波信号。,MATLAB SDU GMLI,27,SIMULINK简单模型的建立,简单模型的建立(1)建立模型窗口(2)将功能模块由模块库窗口复制到模型窗口(3)对模块进行连接,从
18、而构成需要的系统模型模型的特点在SIMULINK里提供了许多如Scope的接收器模块,这使得用SIMULNK进行仿真具有像做实验一般的图形化显示效果。SIMULINK的模型具有层次性,通过底层子系统可以构建上层母系统。SIMULINK提供了对子系统进行封装的功能,用户可以自定义子系统的图标和设置参数对话框。,MATLAB SDU GMLI,28,示例1 对满足数学规律的过程进行仿真,结果用示波器显示,仿真时间为10个单位,MATLAB SDU GMLI,29,示例2:设一定的温度情况下,一病毒得出生率与当前的病毒总数成正比,死亡率与当期的病毒总数平方成正比。设初始时病毒总数为1000,研究病毒
19、总数及总数的变化率随时间的变换规律(设两个比例系数分别为1和0.5),MATLAB SDU GMLI,30,步骤1 数学模型 设时刻t的病毒总数为x步骤2 确定模块为 积分模块,2增益模块,求和模块,乘法模块以及示波器步骤3 模块调整和链接步骤4 模块参数设置和仿真运行分析,MATLAB SDU GMLI,31,例1 有系统的微分方程,试建立系统仿真模型。操作过程如下:(1)在MATLAB主菜单中,选择File菜单中New菜单项的Model命令,打开一个模型编辑窗口。(2)将所需模块添加到模型中。(3)设置模块参数并连接各个模块组成仿真模型。设置模块参数后,用连线将各个模块连接起来组成系统仿真
20、模型。模型建好后,从模型编辑窗口的File菜单中选择Save或Save as命令将它存盘。,MATLAB SDU GMLI,32,III 系统的仿真设置仿真参数 打开系统仿真模型,从模型编辑窗口的Simulation菜单中选择Simulation parameters命令,打开一个仿真参数对话框,在其中可以设置仿真参数。仿真参数对话框包含多个选项页(版本不同,选项也不同),基本选项如下:(1)Solver:用于设置仿真起始和停止时间,选择微分方程求解算法并为其规定参数,以及选择某些输出选项。(2)Workspace I/O:用于管理对MATLAB工作空间的输入和输出。(3)Diagnostic
21、s:用于设置在仿真过程中出现各类错误时发出警告的等级。(4)Real-time Workshop:用于设置若干实时工具中的参数。如果没有安装实时工具箱,则将不出现该选项。,MATLAB SDU GMLI,33,1、Solver页,此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项。仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿
22、真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。用户还可以在第二个下拉选项框中选择对应模式下仿真所采用的算法。,MATLAB SDU GMLI,34,变步长模式解法器有:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23t
23、b和discrete。ode45:缺省值,四/五阶龙格库塔法,适用于大多数连续或离散系统,但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算y(tn)时,它仅需要最近处理时刻的结果y(tn-1)。一般来说,面对一个仿真问题最好是首先试试ode45。ode23:二/三阶龙格库塔法,它在误差限要求不高和求解的问题不太难的情况下,可能会比ode45更有效。也是一个单步解法器。ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻输出时,它需要以前多个时刻的解。ode15s:是一种基于数字微分公式的解法器
24、(NDFs)。也是一种多步解法器。适用于刚性系统,当用户估计要解决的问题是比较困难的,或者不能使用ode45,或者即使使用效果也不好,就可以用ode15s。,MATLAB SDU GMLI,35,ode23s:它是一种单步解法器,专门应用于刚性系统,在弱误差允许下的效果好于ode15s。它能解决某些ode15s所不能有效解决的stiff问题。ode23t:是梯形规则的一种自由插值实现。这种解法器适用于求解适度stiff的问题而用户又需要一个无数字振荡的解法器的情况。ode23tb:是TR-BDF2的一种实现,TR-BDF2 是具有两个阶段的隐式龙格库塔公式。discrtet:当Simulink
25、检查到模型没有连续状态时使用它。,MATLAB SDU GMLI,36,固定步长模式解法器有:ode5,ode4,ode3,ode2,ode1和discrete。ode5:缺省值,是ode45的固定步长版本,适用于大多数连续或离散系统,不适用于刚性系统。ode4:四阶龙格库塔法,具有一定的计算精度。ode3:固定步长的二/三阶龙格库塔法。ode2:改进的欧拉法。ode1:欧拉法。discrete:是一个实现积分的固定步长解法器,它适合于离散无连续状态的系统。,MATLAB SDU GMLI,37,步长参数:对于变步长模式,用户可以设置最大的和推荐的初始步长参数,缺省情况下,步长自动地确定,它由
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Simulink 仿真 软件

链接地址:https://www.31ppt.com/p-5348053.html