工学第七章SIMULINK基础ppt课件_第1页
工学第七章SIMULINK基础ppt课件_第2页
工学第七章SIMULINK基础ppt课件_第3页
工学第七章SIMULINK基础ppt课件_第4页
工学第七章SIMULINK基础ppt课件_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章SIMULINK基础,1,1,概述,在工程实际中,控制系统的结构往往很复杂,如果不借助专用的系统建模软件,很难准确地把一个控制系统的复杂模型输入计算机,对其进行进一步的分析与仿真。1990年,MathWorks软件公司为MATLAB提供了新的控制系统模型图输入与仿真工具,并命名为SIMULAB,该工具很快就在控制工程界获得了广泛的认可,使得仿真软件进入了模型化图形组态阶段。但因其名字与当时比较著名的软件SIMULA类似,所以1992年正式将该软件更名为SIMULINK。SIMULINK的出现,给控制系统分析与设计带来了福音。该软件的名称表明了该系统的两个主要功能:Simu(仿真)和Link(连接),即该软件可以利用鼠标在模型窗口上绘制出所需要的控制系统模型,然后利用SIMULINK提供的功能来对系统进行仿真和分析。,2,2,SIMULINK简介,一、什么是SIMULINKSIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。,3,3,主要内容,Simulink建模的基础知识Simulink建模与仿真线性/非线性系统分析与仿真子系统与模块封装技术,4,4,SIMULINK简介,二、SIMULINK的启动1.在MATLAB的命令窗口直接键入“Simulink”并回车;2.单击MATLAB工具条上的Simulink图标;3.在MATLAB菜单上选FileNewModel。三、SIMULINK的模块库介绍常用的SIMILINK模块库按功能可分为以下8大类:Continuous(连续模块)Discrete(离散模块)Function首先打开一个模型编辑窗口,这可以单击Simulink工具栏中新模型的图标或选择菜单项实现。复制相关模块;将相关的模块组中的模块拖动到此窗口中修改模块参数;模块连接;系统仿真研究;,c5mblk3.mdl,18,5.2.2仿真算法与控制参数选择,19,选中Simulink模型窗口的Simulation菜单项,其中的ConfigurationParameters菜单项允许用户设置仿真控制参数。,19,仿真算法与控制参数选择,1、Solver页此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。仿真精度控制有RelativeTolerance选项、AbsoluteTolerance等,其中相对误差限的默认值设置为1e-3,该值在实际仿真中显得偏大,建议选择1e-6和1e-7。值得指出的是,由于采用的变步长仿真算法,所以将误差限设置到这样小的值也不会增加太大的运算量。,20,20,仿真算法与控制参数选择,1、Solver页仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。在仿真时还可以选定最大允许的步长和最小允许的步长,这可以通过填写Maxstepsize栏目和Minstepsize的值来实现,如果变步长选择的步长超过这个限制则将弹出警告对话框。用户还可以在solver下拉选项框中选择对应模式下仿真所采用的算法。,21,21,(1)ode45:缺省值,四/五阶龙格库塔法,适用于大多数连续或离散系统,但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算y(tn)时,它仅需要最近处理时刻的结果y(tn-1)。一般来说,面对一个仿真问题最好是首先试试ode45。(2)ode23:二/三阶龙格库塔法,它在误差限要求不高和求解的问题不太难的情况下,可能会比ode45更有效。也是一个单步解法器。(3)ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻输出时,它需要以前多个时刻的解。(4)ode15s:是一种基于数字微分公式的解法器(NDFs)。也是一种多步解法器。适用于刚性系统,当用户估计要解决的问题是比较困难的,或者不能使用ode45,或者即使使用效果也不好,就可以用ode15s。,22,变步长模式解法器有:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb和discrete。,22,(5)ode23s:它是一种单步解法器,专门应用于刚性系统,在弱误差允许下的效果好于ode15s。它能解决某些ode15s所不能有效解决的stiff问题。(6)ode23t:是梯形规则的一种自由插值实现。这种解法器适用于求解适度stiff的问题而用户又需要一个无数字振荡的解法器的情况。(7)ode23tb:是TR-BDF2的一种实现,TR-BDF2是具有两个阶段的隐式龙格库塔公式。(8)discrtet:当Simulink检查到模型没有连续状态时使用它。,23,23,(1)ode5:缺省值,是ode45的固定步长版本,适用于大多数连续或离散系统,不适用于刚性系统。(2)ode4:四阶龙格库塔法,具有一定的计算精度。(3)ode3:固定步长的二/三阶龙格库塔法。(4)ode2:改进的欧拉法。(5)ode1:欧拉法。(6)discrete:是一个实现积分的固定步长解法器,它适合于离散无连续状态的系统。,24,固定步长模式解法器有:ode5,ode4,ode3,ode2,ode1和discrete,24,2、WorkspaceI/O页主要用来设置SIMULINK与MATLAB工作空间交换数值的有关选项。Loadfromworkspace:选中前面的复选框即可从MATLAB工作空间获取时间和输入变量,一般时间变量定义为t,输入变量定义为u。Initialstate用来定义从MATLAB工作空间获得的状态初始值的变量名。Savetoworkspace:用来设置存往MATLAB工作空间的变量类型和变量名,选中变量类型前的复选框使相应的变量有效。一般存往工作空间的变量包括输出时间向量(Time)、状态向量(States)和输出变量(Output)。Finalstate用来定义将系统稳态值存往工作空间所使用的变量名。Saveoption:用来设置存往工作空间的有关选项。Limitrowstolast用来设定SIMULINK仿真结果最终可存往MATLAB工作空间的变量的规模,对于向量而言即其维数,对于矩阵而言即其秩;Decimation设定了一个亚采样因子,它的缺省值为1,也就是对每一个仿真时间点产生值都保存,而若为2,则是每隔一个仿真时刻才保存一个值。Format用来说明返回数据的格式,包括矩阵array、结构struct及带时间的结构structwithtime。,25,25,3、Diagnostics页此页主要列举了一些常见的事件类型,以及当SIMULINK检查到这些事件时给予的处理。4、real-timeworkshop页主要用于与C语言编辑器的交换,通过它可以直接从SIMULINK模型生成代码,并且自动建立可以在不同环境下运行的程序,这些环境包括实时系统和单机仿真。,26,26,27,非线性微分方程的框图求解方程,其数学表达式为:,27,28,这样的微分方程在Simulink下也可以搭建相应的仿真模型,从而进行仿真。如下图所示:,c5mrossler.mdl,28,29,这样用下面的语句就可以绘制出各个状态变量的时间响应曲线,如图,29,30,comet3(yout(:,1),yout(:,2),yout(:,3),若以x1(t),x2(t),x3(t)分别为三个坐标轴,则可以绘制出三维状态空间曲线,30,31,直流电机拖动系统,31,32,终止仿真时间为3,32,33,stairs(tout,yout),33,34,Simulink的数学函数模块组中提供了“逻辑算子”Logicoperator模块,可以搭建数字逻辑电路,subplot(311),plot(tout,yout(:,1);subplot(312),plot(tout,yout(:,2);subplot(313),plot(tout,yout(:,3);,34,例exp6_1.mdl,例exp6_2.mdl例exp6_3.mdl,35,35,功能模块的基本操作模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理。在模型窗口中,选中模块,则其4个角会出现黑色标记。此时可以对模块进行以下的基本操作。移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离线而移动,可按住shift键,再进行拖曳复制:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块。,36,36,删除:选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按Delete键即可。也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单Format中选择FlipBlock旋转180度,选择RotateBlock顺时针或逆时针旋转90度。改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。模块命名:先用鼠标在需要更改的名称上单击一下,然后直接更改。名称在功能模块上的位置也可以变换180度,可以用Format菜单中的FlipName来实现,也可以直接通过鼠标进行拖曳。HideName可以隐藏模块名称。颜色设定:Format菜单中的ForegroundColor可以改变模块的前景颜色,BackgroundColor可以改变模块的背景颜色;而模型窗口的颜色可以通过ScreenColor来改变。,37,37,参数设定:用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包含了该模块的基本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮。通过对模块的参数设定,就可以获得需要的功能模块。属性设定:选中模块,打开Edit菜单的BlockProperties可以对模块进行属性设定。包括Description属性、Priority优先级属性、Tag属性。模块的输入输出信号:模块处理的信号包括标量信号和向量信号;标量信号是一种单一信号,而向量信号为复合信号,是多个信号的集合,它对应着系统中几条连线的合成。缺省情况下,大多数模块的输出都为标量信号,对于输入信号,模块都具有一种“智能”的识别功能,能自动进行匹配。某些模块通过对参数的设定,可以使模块输出向量信号。,38,38,39,mu=1;x0=1;x02=-2;plot(tout,yout)plot(yout(:,1),yout(:,2),39,40,直接画图,由前例看出xmin=-2.5,xmax=2.5,ymin=-4,ymax=4,Sampletime=-1,40,41,用示波器观察结果,41,42,在SIMULINK中,很多模块不但支持单个的信号输入,还支持向量型的信号输入。在向量化建模过程中,可以将向量的各个组成信号通过Demux模块进行分解,然后单独对各路信号进行运算,再将结果用Mux模块回合成单路的信号,传输给向量化的模块进行处理。,Simulink常用模块与应用技巧,42,43,43,向量化输入的简便之处,44,a=0.2,b=0.2,c=5.7Fn1:b+(u1-c)*u3Fn2:u1+a*u2Fn3:-u2-u3,c5mross1a.mdl,44,45,向量化输入的简便之处,45,46,双输入双输出系统,可以用Simulink模块搭建起线性系统的状态

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论