MatlabchSmulink动态仿真集成环境PPT课件_第1页
MatlabchSmulink动态仿真集成环境PPT课件_第2页
MatlabchSmulink动态仿真集成环境PPT课件_第3页
MatlabchSmulink动态仿真集成环境PPT课件_第4页
MatlabchSmulink动态仿真集成环境PPT课件_第5页
已阅读5页,还剩103页未读 继续免费阅读

下载本文档

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

文档简介

2020/5/14,.,1,Smulink动态仿真集成环境,本章主要内容如下:6.1Simulink基本操作6.2模块库和系统仿真6.3子系统创建与封装6.4Simulink仿真举例,2020/5/14,.,2,Smulink动态仿真集成环境,Simulink中的“Simu”一词表示可用于计算机仿真,而“Link”一词表示它能进行系统连接,即把一系列模块连接起来,构成复杂的系统模型。作为MATLAB的一个重要组成部分,Simulink由于它所具有的上述的两大功能和特色,以及所提供的可视化仿真环境、快捷简便的操作方法,而使其成为目前最受欢迎的仿真软件。本章主要介绍Simulink的基本功能和基本操作方法,并通过举例介绍如何利用Simulink进行系统建模和仿真。,2020/5/14,.,3,Smulink动态仿真集成环境,6.1Simulink基本操作利用Simulink进行系统仿真的步骤是:启动Simulink,打开Simulink模块库打开空白模型窗口;建立Smulink仿真模型;设置仿真参数,进行仿真;输出仿真结果。,2020/5/14,.,4,6.1Simulink基本操作,2、可以通过单击MATLAB主窗口工具条上的Simulink图标打开。,6.1.1Simulink启动1、在MATLAB命令窗口中输入simulink,2020/5/14,.,5,3、在MATLAB命令窗口中输入simulink3桌面上出现一个用图标形式显示的Library:simulink3的Simulink模块库窗口。,2020/5/14,.,6,4、可以通过单击MATLAB主窗口菜单选择FileNewModel,弹出一个Untitled的Simulink模型窗口,再选择ViewShowLibraryBrowser,弹出SimulinkLibraryBrower模块库窗口,2020/5/14,.,7,6.1.1启动Simulink常用的子模块库Sources(信号源)Sink(显示输出)Continuous(线性连续系统)Discrete(线性离散系统)Function设置仿真参数:在模型窗口选取菜单【Simulation:Parameters】,弹出“SimulationParameters”对话框,设置仿真参数,然后按【OK】即可;,说明若不设置仿真参数,则采用Simulink缺省设置.,2020/5/14,.,17,6.1Simulink基本操作6.1.3系统仿真运行Simulink模型窗口下仿真步骤仿真运行和终止:在模型窗口选取菜单【Simulation:Start】,仿真开始,至设置的仿真终止时间,仿真结束。若在仿真过程中要中止仿真,可选择【Simulation:Stop】菜单。也可直接点击模型窗口中的(或)启动(或停止)仿真。,2020/5/14,.,18,6.1Simulink基本操作6.1.3系统仿真运行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设置仿真参数。,back,2020/5/14,.,19,6.2模块库和系统仿真6.2.1Simulink模块库Sources库也可称为信号源库,该库包含了可向仿真模型提供信号的模块。它没有输入口,但至少有一个输出口。双击图标即弹出该库的模块图:,在该图中的每一个图标都是一个信号模块,这些模块均可拷贝到用户的模型窗里。用户可以在模型窗里根据自己的需要对模块的参数进行设置(但不可在模块库里进行模块的参数设置).,2020/5/14,.,20,Sources库SineWave:产生幅值、频率可设置的正弦波信号。双击图标(认定该模块已拷贝到用户模型窗,以下均如此),弹出正弦波的参数设置框图。图中参数为Simulink默认值,用户可根据需要对这些参数重新设置。,幅值、频率为2,基准为0.5,其波形如下图所示:,2020/5/14,.,21,Sources库Step:产生幅值、阶跃时间可设置的阶跃信号。双击图标,弹出阶跃信号的参数设置框图。图中参数为Simulink默认值。,当设置幅值为0.8,阶跃时间为1秒时,阶跃波形如下图所示:,2020/5/14,.,22,In1:输入端口Constant:常数信号SignalGenerator:信号发生器,产生任意波形Ramp:斜坡信号SineWave:正弦波信号Step:阶跃信号RepeatingSequence:重复信号PulseGenerator:脉冲发生器Ground:搁置一个未连接的输入端口Clock:时钟信号,生成当前仿真时钟FromWorkspace:来自MATLAB的工作空间FromFile(.mat):来自数据文件。,信号源模块(Sources),2020/5/14,.,23,6.2.1Simulink模块库Sinks库该库包含了显示和写模块输出的模块。双击即弹出该库的模块图:数字表,显示指定模块的输出数值。,:X-Y绘图仪用同一图形窗口,显示X-Y坐标的图形(需先在参数对话框中设置每个坐标的变化范围),当X、Y分别为正、余弦信号时,其显示图形如下:,2020/5/14,.,24,6.2.1Simulink模块库Sinks库:示波器。显示在仿真过程产生的信号波形。双击该图标,弹出示波器窗如右图所示:,分别管理X-Y、X和Y轴向变焦,取当前窗中信号最大、最小值为纵坐标的上下限,把当前轴的设置保存为该示波器的缺省设置,打开示波器属性对话框,设置为浮动示波器,2020/5/14,.,25,Sinks库示波器属性对话框,设置Y轴个数,设置显示的时间范围,选择轴的标注方法,确定显示频度(每隔n-1个数据点显示一次),确定显示点的时间间隔(缺省为0表示连续显示),示波器属性对话框General页,2020/5/14,.,26,Sinks库示波器属性对话框,示波器属性对话框Datahistory页,设定缓冲区接受数据的长度,勾选为缺省状态,其值为5000,确定示波器数据是否保存到MATLAB工作空间。若勾选则为保存,且需确定变量名和保存格式(缺省时,不被勾选),2020/5/14,.,27,Scope:示波器,显示信号曲线。XYGraph:显示二维X-Y图形。Out1:输出端口Display:数字显示模块ToWorkspace:工作空间写入模块ToFile(.mat):写文件模块Terminator:终止一个未连接的输出端口StopSimulation:仿真终止模块(输入信号非零,强制终止正在进行的仿真过程),Sinks(输出模块),2020/5/14,.,28,【例6-1】示波器应用示例。Simulink仿真模型如左图所示,示波器输入为3(Y轴个数为3)。右图为该示波器显示的三路输入信号的波形.,2020/5/14,.,29,6.2.1Simulink模块库Continuous库该库包含描述连续函数的模块。双击即弹出下图:,:微分环节。其输出为其输入信号的微分。如下图为输入斜坡信号时微分环节的输出:,2020/5/14,.,30,Continuous库:积分环节。其输出为其输入信号的积分。双击该模块,弹出积分器的参数对话框,可设置积分器的复位、积分上限和下限等。当设置为信号下跳过零复位、积分器限幅为5时,积分器对谐波输入的输出如图所示:,2020/5/14,.,31,6.2.1Simulink模块库Continuous库:分子分母为多项式形式的传递函数。双击该模块,弹出传递函数的参数对话框,设置框图中的参数后,该传递函数显示如下:,2020/5/14,.,32,6.2.1Simulink模块库Continuous库:零极点增益形式的传递函数。双击该模块,弹出传递函数的参数对话框,设置框图中的参数后,该传递函数显示如下:,2020/5/14,.,33,Integrator:积分器Derivative:微分器State-Space:线性系统状态空间模型Transfer-Fcn:线性传递函数模型Zero-Pole:以零极点表示的传递函数模型Memory:存储上一时刻的状态值TransportDelay:输入信号延时一个给定时间再输出VariableTransportDelay:输入信号延时一个可变时间再输出,连续模块(Continuous),2020/5/14,.,34,6.2.1Simulink模块库Math库该库包含描述一般数学函数的模块。双击即弹出右图。该库中模块的功能就是将输入信号按照模块所描述的数学运算函数计算,并把运算结果作为输出信号输出。,2020/5/14,.,35,6.2.1Simulink模块库Math库:加法器。该模块为求和装置。求和器形状,输入信号个数和符号可设置,如下边框图。若设置如框图。则模块显示为:,2020/5/14,.,36,6.2.1Simulink模块库Math库:符号函数。该模块的输出为输入信号的符号。下图为对正弦信号经符号运算后的波形。,2020/5/14,.,37,Math库:实现一个数学函数。下图为该函数的参数设置框。点击函数设置的下拉窗口,可选择所需要的函数。选定函数后,该模块图标将显示所选函数。如选择“Square”,则模块图标变为:,2020/5/14,.,38,Sum:加减运算Product:模块输入的乘除运算DotProduct:点乘运算Gain:比例运算MathFunction:包括指数函数、对数函数、求平方等常用数学函数TrigonometricFunction:三角函数,包括正弦、余弦、正切等MinMax:最小值或最大值运算,数学模块(Mathoperations),2020/5/14,.,39,Abs:取绝对值Sign:给出符号函数RoundingFunction取整函数CombinatorialLogic:组合逻辑模块LogicalOperator:逻辑运算RelationalOperator:关系运算ComplextoMagnitude-Angle:由复数输入转为幅值和相角输出ComplextoReal-Imag:由复数输入转为实部和虚部输出Magnitude-AngletoComplex:由幅值和相角输入合成复数输出Real-ImagtoComplex:由实部和虚部输入合成复数输出,2020/5/14,.,40,6.2.1Simulink模块库Signalsu=cos(t),sin(t);,如在指令窗中输入:,且在模型窗中的模型为:,2020/5/14,.,50,WorkspaceI/O页这个页面的作用是定义将仿真结果输出到工作空间,以及从工作空间得到输入和初始状态。,Savetoworkspace:勾选相应方框表明保存输出到MATLAB工作空间。time和output为缺省选中的。即一般运行一个仿真模型后,在MATLAB工作空间都会增加两个变量tout、yout。变量名可以设置。Saveoptions(存储选项):存储数据到工作空间的格式,可选数组、构架数组、包含时间数据的构架数组。,2020/5/14,.,51,Simulink中的LTIViewer在Simulink中建立的仿真模型也可直接输入到LTIViewer中进行分析,具体方法如下:在Simulink模型窗建立起仿真模型(线性系统)。点击Simulink模型窗上的【Tool:Linearanalysis】,在弹出的界面中将输入输出接点分别复制到仿真模型的输入和输出。,仿真模型的输入输出接点,2020/5/14,.,52,Simulink中的LTIViewer再次点击SIMULINK模型窗上的ToolLinearanalysis,打开LTIViewer仿真界面,点击该界面上SimulinkGetLinearizedModel选项,即画出系统的阶跃响应曲线,表明SIMULINK中的仿真模型已和LTIViewer相连接,因此可利用LTIViewer对该系统进行分析。,LTIViewer获取模型窗中模型,LTIViewer绘制的阶跃响应曲线,2020/5/14,.,53,Simulink中的LTIViewer如果在Simulink模型窗对已输入到LTIViewer中的模型进行了修改,应重复步骤(3)重新装入模型,并删除掉旧模型。方法是点击LTIViewer仿真界面上的【EditDeletesystems】,在弹出的对话框中,进行模型的删除,模型的删除,back,2020/5/14,.,54,6.3子系统创建与封装在建立的Simulink系统模型比较大或很复杂时,可将一些模块组合成子系统,这样可使模型得到简化,便于连线;可提高效率,便于调试;可生成层次化的模型图表,用户可采取自上而下或自下而上的设计方法。将一个创建好的子系统进行封装,也就是使子系统象一个模块一样,例如可以有自己的参数设置对话框,自己的模块图标等。这样就使子系统使用起来非常方便。,2020/5/14,.,55,6.3子系统创建与封装6.3.1子系统的创建通过子系统模块来建立子系统在Simulink库浏览器,有一个子系统(Subsystems)的库模块(有的版本在Signalsc=20;mp=270;mt=50;I=mp*l2;%计算吊重转动惯量lmp=l*mp;k1=1/(mt+mp);k2=mp*l/(I+mp*l2);,2020/5/14,.,74,悬吊式起重机动力学Simulink仿真设置仿真时间为200s,启动Simulink仿真,则由小车位移示波器和吊重摆角示波器,可观察到系统在初始状态x(0)=0,(0)=0.01rad/s,作用下x、的变化过程曲线:,悬吊式起重机小车位移,悬吊式起重机吊重摆角,back,2020/5/14,.,75,Simulink仿真实例,2020/5/14,.,76,Simulink仿真实例,2020/5/14,.,77,例题2,力-质量系统,要拉动一个箱子(拉力f=1N),箱子质量为M(1kg),箱子与地面存在摩擦力(b=0.4N(/m/s),其大小与车子的速度成正比。,Simulink仿真实例,2020/5/14,.,78,其运动方程式为,拉力作用时间为2s,建构的模型为,Simulink仿真实例,2020/5/14,.,79,因有摩擦力存在,箱子最终将会停止前进。,Simulink仿真实例,2020/5/14,.,80,例题3,力-弹簧-阻尼系统,假设箱子与地面无摩擦存在,箱子质量为M(1kg),箱子与墙壁间有线性弹簧(k=1N/m)与阻尼器(b=0.3N/ms-1)。阻尼器主要用来吸收系统的能量,吸收系统的能量转变成热能而消耗掉。现将箱子拉离静止状态2cm后放开,试求箱子的运动轨迹。,Simulink仿真实例,2020/5/14,.,81,运动方程式为,构建的模型为,Simulink仿真实例,2020/5/14,.,82,因有阻尼器存在,故箱子最终会停止运动。,Simulink仿真实例,2020/5/14,.,83,例题4,下图所示简单的单摆系统,假设杆的长度为L,且质量不计,钢球的质量为m.单摆的运动可以以线性的微分方程式来近似,但事实上系统的行为是非线性的,而且存在粘滞阻尼,假设粘滞阻尼系数为bkg/ms-1.,Simulink仿真实例,2020/5/14,.,84,选取b=0.03,g=9.8,L=0.8,m=0.3,所构建的模型,单摆系统的运动方程式为,Simulink仿真实例,2020/5/14,.,85,Simulink仿真实例,2020/5/14,.,86,例题5:蹦极跳系统:当你系着弹力绳从桥上跳下来时,会发生什么?这里,以蹦极跳作为一个连续系统的例子。,自由下落的物体满足牛顿运动定律:F=ma.假设绳子的弹性系数为k,它的拉伸影响系统的动力响应,如果定义人站在桥上时绳索下端的初始位置为0位置,x为拉伸位置,那么用b(x)表示绳子的张力。,Simulink仿真实例,2020/5/14,.,87,设m为物体的质量,g是重力加速度,a1,a2是空气阻尼系数,系统方程可以表示为,Simulink仿真实例,2020/5/14,.,88,在MATLAB中建立这个方程的Simulink模型,这里需要使用两个积分器。,Simulink仿真实例,2020/5/14,.,89,一旦x和它的导数已经搭好,就可以使用一个增益模块表示空气阻力比例系数,使用Function模块表示空气阻力中的非线性部分。,Simulink仿真实例,2020/5/14,.,90,b(x)是通过门槛为0的x条件式确定的,可以使用一个Switch模块来实现判断条件。,Simulink仿真实例,2020/5/14,.,91,最终系统Simulink模型方块图为,Simulink仿真实例,2020/5/14,.,92,仿真过程中,设绳索长度-30m,起始速度为0;物体质量为90kg,g为9.8m/s2,弹性系数k为20,a1和a2均为1.,Simulink仿真实例,2020/5/14,.,93,仿真曲线为,Simulink仿真实例,2020/5/14,.,94,假设未伸长时绳索的端部距地面为50m,为了得到更真实的曲线,将50减去输出位置,Simulink仿真实例,2020/5/14,.,95,可以看到,眺跃者已经撞到了地上。,仿真曲线为,Simulink仿真实例,20

温馨提示

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

评论

0/150

提交评论