文档详情

实验六、smulnk

第***
实名认证
店铺
PPT
806.51KB
约34页
文档ID:62920907
实验六、smulnk_第1页
1/34

SIMULINK仿真基础,教学目标,1、熟悉Simulink模块库 2、掌握Simulink模型的建立方法 3、掌握自定义模块的模块化与封装,主要教学内容,1、概述 2、Simulink入门 3、Simulink功能模块 4、创建Simulink模型 5、 Simulink 仿真运行 6、SIMULINK应用举例 7、子系统的建立 8、子系统的封装 9、实验内容 10、预习,1、SIMULINK概述,SIMULINK:是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入 所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析 优点:用户可以把更多的精力投入到系统模型的构建,而非语言的编程上2、Simulink入门,方法一:通过MATLAB主窗口的快捷按钮 来打开Simulink Library Browser窗口。

如右图所示 方法二:在MATLAB命令窗口中输入simulink,即出现Simulink Library Browser窗口2.1 Simulink的启动,,,3.1 SIMULINK的模块库介绍 3.1.1 常用模块组(Commonly Used Blocks),这个模块组是由其他模块组中的模块组成,常见模块如右图所示将常用的模块集中到一起,主要是方便用户,利于提高建模速度这些模块的使用在其他模块组中会有介绍3、Simulink功能模块,3.1.2 连续模块(Continuous),Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Transport Time Delay :可变时间延迟模块 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出,3.1.3数学模块( Math Operations),Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数 Trigonometric Function:三角函数,包括正弦、余弦、正切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数,Logical Operator:逻辑运算 Relational Operator:关系运算 Complex to Magnitude-Angle:由复数输入转为幅值和相角输出 Magnitude-Angle to Complex:由幅值和相角输入合成复数输出 Complex to Real-Imag:由复数输入转为实部和虚部输出 Real-Imag to Complex:由实部和虚部输入合成复数输出,3.1.4 非线性模块( Discontinuities ),Dead Zone:死区非线性模块。

Relay:继电模块 Saturation:饱和非线性模块,3.1.5 接收器模块( Sinks ),Out1:输出端口模块,为子系统或外部输出创建一个输出端口 Scope:示波器 XY Graph:显示二维图形 To Workspace:将输出写入MATLAB的工作空间 To File(.mat):将输出写入数据文件3.1.6 输入源模块( Sources ),Constant:常数信号 Clock:时钟信号 In1:输入端口模块 From Workspace:来自MATLAB的工作空间 Pulse Generator:脉冲发生器 Repeating Sequence:重复信号 Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波 Sine Wave:正弦波信号 Step:阶跃波信号3.2 SIMULINK功能模块的处理,模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理 在模型窗口中,选中模块,则其4个角会出现黑色标记此时可以对模块进行以下的基本操作 移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可若要脱离线而移动,可按住shift键,再进行拖曳。

复制:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块 删除:选中模块,按Delete键即可若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按Delete键即可也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除功能模块的基本操作,包括模块的移动、复制、删除、转向、改变大小、模块命名、颜色设定、参数设定、属性设定、模块输入输出信号等转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向在菜单Format中选择Flip Block旋转180度,选择Rotate Block顺时针旋转90度或者直接按Ctrl+F键执行Flip Block,按Ctrl+R键执行Rotate Block 改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可 模块命名:先用鼠标在需要更改的名称上单击一下,然后直接更改即可名称在功能模块上的位置也可以变换180度,可以用Format菜单中的Flip Name来实现,也可以直接通过鼠标进行拖曳Hide Name可以隐藏模块名称 颜色设定: Format菜单中的Foreground Color可以改变模块的前景颜色,Background Color可以改变模块的背景颜色;而模型窗口的颜色可以通过Screen Color来改变。

参数设定:用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定参数设定窗口包含了该模块的基本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮通过对模块的参数设定,就可以获得需要的功能模块3.3 SIMULINK线的处理,设定标签:只要上双击鼠标,即可输入该线的说明标签也可以通过选中线,然后打开Edit菜单下的Signal Properties进行设定,其中signal name属性的作用是标明信号的名称,设置这个名称反映在模型上的直接效果就是与该信号有关的端口相连的所有直线附近都会出现写有信号名称的标签 线的折弯:按住Shift键,再用鼠标在要折弯的线处单击一下,就会出现圆圈,表示折点,利用折点就可以改变线的形状 线的分支:按住鼠标右键,在需要分支的地方拉出即可以或者按住Ctrl键,并在要建立分支的地方用鼠标拉出即可SIMULINK模型的构建是通过用线将各种功能模块进行连接而构成的用鼠标可以在功能模块的输入与输出端之间直接连线所画的线可以变粗细、设定标签,也可以把线折弯、分支4、SIMULINK简单模型的建立,简单模型的建立 (1)建立模型窗口 (2)将功能模块由模块库窗口复制到模型窗口 (3)对模块进行连接,从而构成需要的系统模型,5、SIMULINK仿真的运行,一、设置仿真参数和选择解法器 设置仿真参数和选择解法器,选择Simulation菜单下的Parameters命令,就会弹出一个仿真参数对话框,它主要用三个页面来管理仿真的参数。

Solver页,它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项 Workspace I/O页,作用是管理模型从MATLAB工作空间的输入和对它的输出 Diagnostics页,允许用户选择Simulink在仿真中显示的警告信息的等级构建好一个系统的模型之后,接下来的事情就是运行模型,得出仿真结果运行一个仿真的完整过程分成三个步骤:设置仿真参数,启动仿真和仿真结果分析1、Solver页,此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加一般仿真开始时间设为0,而结束时间视不同的因素而选择总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等 仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固定步长)方式。

变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测用户还可以在第二个下拉选项框中选择对应模式下仿真所采用的算法二、启动仿真 设置仿真参数和选择解法器之后,就可以启动仿真而运行 选择Simulink菜单下的start选项来启动仿真,如果模型中有些参数没有定义,则会出现错误信息提示框如果一切设置无误,则开始仿真运行,结束时系统会发出一鸣叫声6、SIMULINK应用举例,例题:如下的单位负反馈系统,用SIMULIN对该系统进行仿真,画出阶跃响应图1、新建一个工作区域 生成右图的工作窗口,3、点击仿真按钮,双击示波 器就可以看到阶跃响应的图 像2、将响应的模块拖入新建的工作区域,连线,修改参数注意:需要将save format设为array,这样运行 后在工作空间可以用plot将导出的数据进行绘图,7、子系统的建立,对于复杂系统来说,因含有大量模块将显得杂 乱而不利于分析,子系统的概念正是基于此提出的 例:将G1,G2建立成一个子系统 已有模型如下图所示:,选中要创建子系统的模块部分,如选择G1,G2右击,选择Create subsystem,既可生成图(2)的模型,再双击子系统可查看其内部结构(图(3)),(1) (2) (3),8、子系统的封装,子系统的封装,是将子系统的内部结构隐藏起来,以便访问该模块时只出现一个对话框来进行内部参数的设置。

子系统封装的操作为:选中要封装的部分,右键单击Mask Subsystem,既调出子系统封装设置窗口,如下图所示:,1、Icon标签页的设置 Icon标签页能够为封装子系统的特殊模块制作一个新图标,并可以在模块图标上,以最能表示子系统封装模块功能特点的“文字说明”,“图像”,“传递函数”等信息标在图标上 在该区域内可以用disp指令设定功能模块的文字名称,用plot指令画线,用dpoly指令画传递函数 disp(‘text’)可以在功能模块上显示设定的文字内容disp(‘text1\ntext2’)分行显示文字text1和text2 plot([x1 x2 … xn],[y1 y2 … yn])指令会在功能模块上画出由[x1 y1]经[x2 y2]经[x3 y3] … 直到[xn,yn]为止的直线功能模块的左下角会根据目前的坐标刻度被正规化为[0,0],右上角则会依据目前的坐标刻度被正规化为[1,1] dpoly(num,den):按s次数的降幂排序,在功能模块上显示连续的传递函数如,要再封装子系统的模块上做一个新图标,图标上显示“shiyan6”,则在Icon标签页中Drawing commands菜单下输入 disp(‘shiyan6’),然后点击ok按钮即可。

2、Parameters标签页的设置,Parameters项为封装的子系统内部变量建立对话框,用户不必打开系统进行参数设置。

下载提示
相似文档
正为您匹配相似的精品文档