ROBOTVISIONHuang-NanHuang2012Autumn2012/9/712012/9/7MATLABSIMULINK简介2012/9/73TodayGoals2012/9/73LearnbasicMatlab-Simulinktechniqueforrunningthesimulationthroughasimulinkblock.OutlineBasicOperation模块库和系统仿真子系统创建与封装SimulinkExamples2012/9/74Introduction2012/9/75Simulink中的“Simu”(Simulation)一词表示可用于计算机仿真(模拟),而“Link”一词表示它能进行系统连接,即把一系列模块连接起来,构成复杂的系统模型。作为MATLAB的一个重要组成部分,Simulink由于它所具有的上述的两大功能和特色,以及所提供的可视化仿真环境、快捷简便的操作方法,而使其成为目前最受欢迎的仿真软件。本讲主要介绍Simulink的基本功能和基本操作方法,并通过举例介绍如何利用Simulink进行系统建模和仿真。Introduction2012/9/76用用用用Simulink创建的模型可以具有递阶结构创建的模型可以具有递阶结构创建的模型可以具有递阶结构创建的模型可以具有递阶结构,,,,因此用户可以采用从上到下或从因此用户可以采用从上到下或从因此用户可以采用从上到下或从因此用户可以采用从上到下或从下到上的结构创建模型下到上的结构创建模型下到上的结构创建模型下到上的结构创建模型。。。。用户可以从最高级开始观看模型用户可以从最高级开始观看模型用户可以从最高级开始观看模型用户可以从最高级开始观看模型,,,,然后用鼠标双击然后用鼠标双击然后用鼠标双击然后用鼠标双击其中的子系统模块其中的子系统模块其中的子系统模块其中的子系统模块,,,,来查看其下一级的内容来查看其下一级的内容来查看其下一级的内容来查看其下一级的内容,,,,以此类推以此类推以此类推以此类推,,,,从而可以看到整个从而可以看到整个从而可以看到整个从而可以看到整个模型的细节模型的细节模型的细节模型的细节,,,,帮助用户理解模型的结构和各模块之间的相互关系帮助用户理解模型的结构和各模块之间的相互关系帮助用户理解模型的结构和各模块之间的相互关系帮助用户理解模型的结构和各模块之间的相互关系。。。。模型分析工具包括线性化和平衡点分析工具模型分析工具包括线性化和平衡点分析工具模型分析工具包括线性化和平衡点分析工具模型分析工具包括线性化和平衡点分析工具、、、、MATLAB的许多工具及的许多工具及的许多工具及的许多工具及MATLAB的应用工具箱的应用工具箱的应用工具箱的应用工具箱。。。。由于由于由于由于MATLAB和和和和Simulink的集成在一起的的集成在一起的的集成在一起的的集成在一起的,,,,因此用户可以在这因此用户可以在这因此用户可以在这因此用户可以在这两种环境下对自己的模型进行仿真两种环境下对自己的模型进行仿真两种环境下对自己的模型进行仿真两种环境下对自己的模型进行仿真、、、、分析和修改分析和修改分析和修改分析和修改。。。。SimulinkSinks((((输出方式输出方式输出方式输出方式))))Source((((输入源输入源输入源输入源))))Linear((((线性环节线性环节线性环节线性环节))))Nonlinear((((非线性环节非线性环节非线性环节非线性环节))))Connections((((连接与接口连接与接口连接与接口连接与接口))))Extra((((其他环节其他环节其他环节其他环节))))Simulink操作框图2012/9/77模型建构和定义+模型的分析显示修正BasicOperation2012/9/78利用Simulink进行系统仿真的步骤是:①启动Simulink,打开Simulink模块库②打开空白模型窗口;③建立Smulink仿真模型;④设置仿真参数,进行仿真;⑤输出仿真结果Example2012/9/79给定系统3++=2 + () =−, 0=0求当()为step函数时,随之变化情形拉氏(Laplace)变换()()=2+13++12+13++1,(), ()StartingSimulink2012/9/7101.1启启启启动动动动Simulinka)启动Simulink。单击MATLABCommand窗口工具条上的Simulink图标,或者在MATLAB命令窗口输入simulink,即弹出图示的模块库窗口界面(SimulinkLibraryBrowser)。该界面右边的窗口给出Simulink所有的子模块库。常用的子模块库有Sources(信号源),Sink(显示输出),Continuous(线性连续系统),Discrete(线性离散系统),Function&Table(函数与表格),Math(数学运算),Discontinuities(非线性),Demo(演示)等。2012/9/7111.1启动Simulink每个子模块库中包含同类型的标准模型,这些模块可直接用于建立系统的Simulink框图模型。可按以下方法打开子模块库:①用鼠标左键点击某子模块库(如【Continuous】),Simulink浏览器右边的窗口即显示该子模块库包含的全部标准模块。2012/9/7121.1启动Simulink用鼠标右键点击Simulink菜单项,则弹出一菜单条,点击该菜单条即弹出该子库的标准模块窗口.如单击左图中的【Sinks】,出现“Openthe‘Sinks’Library”菜单条,单击该菜单条,则弹出右图所示的该子库的标准模块窗口。2012/9/7131.2打开空白模型窗口模型窗口用来建立系统的仿真模型。只有先创建一个空白的模型窗口,才能将模块库的相应模块复制到该窗口,通过必要的连接,建立起Simulink仿真模型。也将这种窗口称为Simulink仿真模型窗口。以下方法可用于打开一个空白模型窗口:在MATLAB主界面中选择【File:New→Model】菜单项;单击模块库浏览器的新建图标;选中模块库浏览器的【File:New→Model】菜单项。所打开的空白模型窗口如图所示。2012/9/7141.3建立Simulink仿真模型a)打开Simulink模型窗口(Untitled)b)选取模块或模块组在Simulink模型或模块库窗口内,用鼠标左键单击所需模块图标,图标四角出现黑色小方点,表明该模块已经选中。c)模块拷贝及删除在模块库中选中模块后,按住鼠标左键不放并移动鼠标至目标模型窗口指定位置,释放鼠标即完成模块拷贝。模块的删除只需选定删除的模块,按Del键即可。2012/9/7151.3建立Simulink仿真模型d)模块调整改变模块位置、大小;改变模块方向使模块输入输出端口的方向改变。选中模块后,选取菜单Format→RotateBlock,可使模块旋转900。按快捷键Ctrl+R结果相同。2012/9/716建立Simulink仿真模型e)模块参数设置用鼠标双击指定模块图标,打开模块对话框,根据对话框栏目中提供的信息进行参数设置或修改。例如双击模型窗口的传递函数模块,弹出图示对话框,在对话框中分别输入分子、分母多项式的系数,点击OK键,完成该模型的设置,如右下图所示:2012/9/7171.3建立Simulink仿真模型f)模块的连接模块之间的连接是用连接线将一个模块的输出端与另一模块的输入端连接起来;也可用分支线把一个模块的输出端与几个模块的输入端连接起来。连接线生成是将鼠标置于某模块的输出端口(显一个十字光标),按下鼠标左键拖动鼠标置另一模块的输入端口即可。分支线则是将鼠标置于分支点,按下鼠标右键,其余同上。连接线(左键)分支线(右键)2012/9/7181.3建立Simulink仿真模型g)模块文件的取名和保存选择模型窗口菜单File→Saveas后弹出一个“Saveas”对话框,填入模型文件名,按保存(s)即可。[说明]模块的修改、调整、连接通常只能在仿真模型窗口中进行,不要直接对模块库中的模块进行修改或调整。2012/9/7191.4系统仿真运行系统仿真运行系统仿真运行系统仿真运行1.Simulink模型窗口下仿真模型窗口下仿真模型窗口下仿真模型窗口下仿真步骤①打开Simulink仿真模型窗口,或打开指定的.mdl文件;②设置仿真参数:在模型窗口选取菜单【Simulation:Parameters】,弹出“SimulationParameters”对话框,设置仿真参数,然后按【OK】即可;[说明]若不设置仿真参数,则采用Simulink缺省设置.2012/9/7201.4系统仿真运行系统仿真运行系统仿真运行系统仿真运行1.Simulink模型窗口下仿真模型窗口下仿真模型窗口下仿真模型窗口下仿真步骤③仿真运行和终止:在模型窗口选取菜单【Simulation:Start】,仿真开始,至设置的仿真终止时间,仿真结束。若在仿真过程中要中止仿真,可选择【Simulation:Stop】菜单。也可直接点击模型窗口中的(或)启动(或停止)仿真。2012/9/7211.4系统仿真运行系统仿真运行系统仿真运行系统仿真运行2.MATLAB命令窗口下的仿真运行在Matlab命令窗口下可直接运行一个已存在的Simulink模型:[t,x,y]=sim(‘model’,timespan,option,ut)其中,t为返回的仿真时间向量;x为返回的状态矩阵;y为返回的输出矩阵;model为系统Simulink模型文件名;timespan为仿真时间;option为仿真参数选择项,由simset设置;ut为选择外部产生输入,ut=[T,u1,u2,…,un]。[说明]上述参数中,若省略timespan,option,ut则由框图模型的对话框SimulationParameters设置仿真参数。Simulink模块库2012/9/722一一一一、、、、信号源信号源信号源信号源模模模模Sources块块块块库库库库Model&SubsystemInputsSignalGeneratorsUniformRandomNumberStepSineWaveSignal1SignalBuilderSignalGeneratorRepeatingSequenceStairRepeatingSequenceInterpolatedRepeatingSequenceRandomNumberRampPulseGeneratorGrounduntitled.matFromFilesiminFromWorkspace12:34DigitalClocklimCounterLimitedCounterFree-Running1ConstantClockChirpSignalBand-LimitedWhiteNoise1In1Simulink模块库2012/9/723二二二二、、、、连续系统连续系统连续系统连续系统模模模模Continuous块块块块库库库库Continuous-TimeLinearSystemsContinuous-TimeDelays(s-1)s(s+1)Zero-PoleTiVariableTransportDelayToVariableTimeDelayTransportDelay1s+1TransferFcnx'=Ax+Buy=Cx+DuState-Space1sIntegratordu/dtDerivativeSimulink模块库2012/9/724三三三三、、、、离散系离散系离散系离散系统统统统Discrete模模模模块库块库块库块库Sample&HoldDelaysDiscrete-TimeLinearSystemsZero-Or