五章SIMULINK仿真基础.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《五章SIMULINK仿真基础.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SIMULINK 仿真 基础
- 资源描述:
-
1、五章SIMULINK仿真基础第一节 SIMULINK简介qSIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。q所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。qSIMULINK的最新版
2、本是SIMULINK4.0(包含在MATLAB6.0里),MATLAB5.3里的版本为3.0版,它们的变化不大。一、什么是SIMULINK2、在MATLAB命令窗口中输入simulink3结果是在桌面上出现一个用图标形式显示的Library:simulink3的Simulink模块库窗口。二、SIMULINK的启动1、在MATLAB命令窗口中输入simulink结果是在桌面上出现一个称为Simulink Library Browser的窗口,在这个窗口中列出了按功能分类的各种模块的名称。当然用户也可以通过MATLAB主窗口的快捷按钮来打开Simulink Library Browser窗口。两
3、种模块库窗口界面只是不同的显示形式,用户可以根据各人喜好进行选用,一般说来第二种窗口直观、形象,易于初学者,但使用时会打开太多的子窗口。三、SIMULINK的模块库介绍SIMILINK模块库按功能进行分类,包括以下8类子库:Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)1、连续模块(Continuous)continuous.mdlIntegrator:输入信号积分Derivativ
4、e:输入信号微分State-Space:线性状态空间系统模型Transfer-Fcn:线性传递函数模型Zero-Pole:以零极点表示的传递函数模型Memory:存储上一时刻的状态值Transport Delay:输入信号延时一个固定时间再输出Variable Transport Delay:输入信号延时一个可变时间再输出2、离散模块(Discrete)discrete.mdlDiscrete-time Integrator:离散时间积分器Discrete Filter:IIR与FIR滤波器Discrete State-Space:离散状态空间系统模型Discrete Transfer-Fcn
5、:离散传递函数模型Discrete Zero-Pole:以零极点表示的离散传递函数模型First-Order Hold:一阶采样和保持器Zero-Order Hold:零阶采样和保持器Unit Delay:一个采样周期的延时3、Function&Tables(函数和平台模块)function.mdlFcn:用自定义的函数(表达式)进行运算MATLAB Fcn:利用matlab的现有函数进行运算S-Function:调用自编的S函数的程序进行运算Look-Up Table:建立输入信号的查询表(线性峰值匹配)Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配)4、Mat
6、h(数学模块)math.mdlSum:加减运算Product:乘运算Dot Product:点乘运算Gain:比例运算Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等MinMax:最值运算Abs:取绝对值Sign:符号函数Logical Operator:逻辑运算Relational Operator:关系运算Complex to Magnitude-Angle:由复数输入转为幅值和相角输出Magnitude-Angle to Complex:由幅值和相角输入合成复数输出Complex
7、 to Real-Imag:由复数输入转为实部和虚部输出Real-Imag to Complex:由实部和虚部输入合成复数输出5、Nonlinear(非线性模块)nonlinear.mdlSaturation:饱和输出,让输出超过某一值时能够饱和。Relay:滞环比较器,限制输出值在某一范围内变化。Switch:开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来。Manual Switch:手动选择开关6、Signal&Systems(信号和系统模块)sigsys.mdlIn1:输入端。Out1:输出端。Mux:将多个单一输入转化为一个复合输出。Demux
8、:将一个复合输入转化为多个单一输出。Ground:连接到没有连接到的输入端。Terminator:连接到没有连接到的输出端。SubSystem:建立新的封装(Mask)功能模块7、Sinks(接收器模块)sinks.mdlScope:示波器。XY Graph:显示二维图形。To Workspace:将输出写入MATLAB的工作空间。To File(.mat):将输出写入数据文件。8、Sources(输入源模块)sources.mdlConstant:常数信号。Clock:时钟信号。From Workspace:来自MATLAB的工作空间。From File(.mat):来自数据文件。Pulse
9、 Generator:脉冲发生器。Repeating Sequence:重复信号。Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波。Sine Wave:正弦波信号。Step:阶跃波信号。四、SIMULINK简单模型的建立及模型特点1、简单模型的建立 exp5_1.mdl(1)建立模型窗口(2)将功能模块由模块库窗口复制到模型窗口(3)对模块进行连接,从而构成需要的系统模型2、模型的特点q在SIMULINK里提供了许多如Scope的接收器模块,这使得用SIMULNK进行仿真具有像做实验一般的图形化显示效果。qSIMULINK的模型具有层次性,通过底层子系统可以构建
10、上层母系统。qSIMULINK提供了对子系统进行封装的功能,用户可以自定义子系统的图标和设置参数对话框。第二节 SIMULINK功能模块的处理q模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理。q在模型窗口中,选中模块,则其4个角会出现黑色标记。此时可以对模块进行以下的基本操作。1)移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离线而移动,可按住shift键,再进行拖曳。2)复制:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块。3)删除:选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中
11、多个模块,按Delete键即可。也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。功能模块的基本操作,包括模块的移动、复制、删除、转向、改变大小、模块命名、颜色设定、参数设定、属性设定、模块输入输出信号等。4)转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单Format中选择Flip Block旋转180度,选择Rotate Block顺时针旋转90度。或者直接按Ctrl+F键执行Flip Block,按Ctrl+R键执行Rotate Block。5)改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。6)模块命名:先用鼠标在需
12、要更改的名称上单击一下,然后直接更改即可。名称在功能模块上的位置也可以变换180度,可以用Format菜单中的Flip Name来实现,也可以直接通过鼠标进行拖曳。Hide Name可以隐藏模块名称。7)颜色设定:Format菜单中的Foreground Color可以改变模块的前景颜色,Background Color可以改变模块的背景颜色;而模型窗口的颜色可以通过Screen Color来改变。8)参数设定:用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包含了该模块的基本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮。通过对模块的参数设定,就可
13、以获得需要的功能模块。9)属性设定:选中模块,打开Edit菜单的Block Properties可以对模块进行属性设定。包括Description属性、Priority优先级属性、Tag属性、Open function属性、Attributes format string属性。其中Open function属性是一个很有用的属性,通过它指定一个函数名,则当该模块被双击之后,Simulink就会调用该函数执行,这种函数在MATLAB中称为回调函数。10)模块的输入输出信号:模块处理的信号包括标量信号和向量信号;标量信号是一种单一信号,而向量信号为一种复合信号,是多个信号的集合,它对应着系统中几条
14、连线的合成。缺省情况下,大多数模块的输出都为标量信号,对于输入信号,模块都具有一种“智能”的识别功能,能自动进行匹配。某些模块通过对参数的设定,可以使模块输出向量信号。例exp5_2.mdl exp5_3.mdl 第三节 SIMULINK线的处理 exp5_4.mdlq改变粗细:线所以有粗细是因为线引出的信号可以是标量信号或向量信号,当选中Format菜单下的Wide Vector Lines时,线的粗细会根据线所引出的信号是标量还是向量而改变,如果信号为标量则为细线,若为向量则为粗线。选中Vector Line Widths则可以显示出向量引出线的宽度,即向量信号由多少个单一信号合成。q设定
15、标签:只要在线上双击鼠标,即可输入该线的说明标签。也可以通过选中线,然后打开Edit菜单下的Signal Properties进行设定,其中signal name属性的作用是标明信号的名称,设置这个名称反映在模型上的直接效果就是与该信号有关的端口相连的所有直线附近都会出现写有信号名称的标签。q线的折弯:按住Shift键,再用鼠标在要折弯的线处单击一下,就会出现圆圈,表示折点,利用折点就可以改变线的形状。q线的分支:按住鼠标右键,在需要分支的地方拉出即可以。或者按住Ctrl键,并在要建立分支的地方用鼠标拉出即可。SIMULINK模型的构建是通过用线将各种功能模块进行连接而构成的。用鼠标可以在功能
16、模块的输入与输出端之间直接连线。所画的线可以改变粗细、设定标签,也可以把线折弯、分支。第四节 SIMULINK自定义功能模块一、方法1 exp5_5.mdl1)将Signal&Systems 模块库中的Subsystem功能模块复制到打开的模型窗口中。2)双击Subsystem功能模块,进入自定义功能模块窗口,从而可以利用已有的基本功能模块设计出新的功能模块。自定义功能模块有两种方法,一种方法是采用Signal&Systems 模块库中的Subsystem功能模块,利用其编辑区设计组合新的功能模块;另一种方法是将现有的多个功能模块组合起来,形成新的功能模块。对于很大的SIMULINK模型,通过
17、自定义功能模块可以简化图形,减少功能模块的个数,有利于模型的分层构建。二、方法2 exp5_6.mdl1)在模型窗口中建立所定义功能模块的子模块。2)用鼠标将这些需要组合的功能模块框住,然后选择Edit菜单下的Create Subsystem即可。三、自定义功能模块的封装 exp5_7.mdl exp5_8.mdl exp5_9.mdl exp5_10.mdlq上面提到的两种方法都只是创建一个功能模块而已,如果要命名该自定义功能模块、对功能模块进行说明、选定模块外观、设定输入数据窗口,则需要对其进行封装处理。q首先选中Subsystem功能模块,再打开Edit菜单中的Mask Subsyste
18、m进入mask的编辑窗口,可以看出有3个标签页。1)Icon:设定功能模块的外观。2)Initialization:设定输入数据窗口(Prompt List)。3)Documentation:设计该功能模块的文字说明。1、Icon标签页q此页最重要的部分是Drawing Commands,在该区域内可以用disp指令设定功能模块的文字名称,用plot指令画线,用dpoly指令画转换函数。q注意,尽管这些命令在名字上和以前讲的MATLAB函数相同,但它们在功能上却不完全相同,因此不能随便套用以前所讲的格式。a)disp(text)可以在功能模块上显示设定的文字内容。disp(text1ntext
19、2)分行显示文字text1和text2b)plot(x1 x2 xn,y1 y2 yn)指令会在功能模块上画出由x1 y1经x2 y2经x3 y3 直到xn,yn为止的直线。功能模块的左下角会根据目前的坐标刻度被正规化为0,0,右上角则会依据目前的坐标刻度被正规化为1,1。c)dpoly(num,den):按s次数的降幂排序,在功能模块上显示连续的传递函数。d)dpoly(num,den,z):按z次数的降幂排序,在功能模块上显示离散的传递函数。q用户还可以设置一些参数来控制图标的属性,这些属性在Icon页右下端的下拉式列表中进行选择。a)Icon frame:Visible 显示外框线;In
20、visible:隐藏外框线。b)Icon Transparency:Opaque 隐藏输入输出的标签;Transparent:显示输入输出的标签。c)Icon Rotation:旋转模块。d)Drawing coordinate:画图时的坐标系。2、Initialization标签页q此页主要用来设计输入提示(prompt)以及对应的变量名称(variable)。在prompt栏上输入变量的含义,其内容会显示在输入提示中。而variable是仿真要用到的变量,该变量的值一直存于mask workspace中,因此可以与其他程序相互传递。q如果配合在initialization commands
21、内编辑程序,可以发挥功能模块的功能来执行特定的操作。a)在prompt编辑框中输入文字,这些文字就会出现在prompt列表中;在variable列表中输入变量名称,则prompt中的文字对应该变量的说明。如果要增加新的项目,可以点击边上的Add键。Up和Down按钮用于执行项目间的位置调整。b)Control type列表给用户提供选择设计的编辑区,选择Edit会出现供输入的空白区域,所输入的值代表对应的variable;Popup则为用户提供可选择的列表框,所选的值代表variable,此时在下面会出现Popup strings输入框,用来设计选择的内容,各值之间用逻辑或符号“|”隔开;如选
22、择Checkbox则用于on与off的选择设定。c)Assignment属性用于配合Control type的不同选择来提供不同的变量值,变量值有Evaluate和Literal两种,其含义如下:d)Assignmente)Control type Evaluate Literalf)Edit 输入的文字是程序执行时所用的变量值;输入内容作字符串处理g)Popup 为选择的序号,选第一项输出值为1,选择内容作字符串处理h)往下类推;i)Checkbox 输出为1或0;输出为on或off的字符串3、Documentation标签页q此页主要用来针对完成的功能模块来编写相应的说明文字和Help。a
23、)在Block description中输入的文字,会出现在参数窗口的说明部分。b)在Block help中输入的文字则会显示在单击参数窗口中的help按钮后浏览器所加载的HTML文件中。c)Mask type:在此处输入的文字作为封装模块的标注性说明,在模型窗口下,将鼠标指向模块,则会显示该文字。当然必须先在View菜单中选择Block Data TipsShow Block Data Tips。第五节 SIMULINK仿真的运行一、设置仿真参数和选择解法器q设置仿真参数和选择解法器,选择Simulation菜单下的Parameters命令,就会弹出一个仿真参数对话框,它主要用三个页面来管理
24、仿真的参数。I.Solver页,它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项。II.Workspace I/O页,作用是管理模型从MATLAB工作空间的输入和对它的输出。III.Diagnostics页,允许用户选择Simulink在仿真中显示的警告信息的等级。构建好一个系统的模型之后,接下来的事情就是运行模型,得出仿真结果。运行一个仿真的完整过程分成三个步骤:设置仿真参数,启动仿真和仿真结果分析。1、Solver页q此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项。1)仿真时间:注意这里的时间概念与真实的时间并不一样,
展开阅读全文