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

下载本文档

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

文档简介

1、6.3 延续系统的数字仿真n6.3.1 利用Simulink菜单命令进展仿真n6.3.2 利用MATLAB的指令操作方式进展仿真n6.3.3 模块参数的动态交换6.3.1 仿真运转n非常方便,直观;可以以示波器的方式进展仿真结果的输出与显示n也可以将仿真结果保管到MATLAB任务空间的变量中,以待进一步处置。n对框图模型本身和数值算法及参数的选择都可以很方便地进展修正和操作。n启动仿真:按工具栏的启动图标n仿真的终止或中断:按工具栏的终止图标,按暂停图标仿真参数的配置nSimulationconfiguration parametersn仿真起始和终止时辰的设定;n仿真步长的选择;n仿真算法的

2、选择;n能否从外界获得数据;n能否向外界输出数据1 解算器solverInsimulationconfiguration parametersn仿真时间设置(simulation time):start time缺省为0,stop time:缺省10sn解算器(solver options):type:变步长和定步长,缺省是变步长的ode45解算器仿真算法;solver选项:仿真算法n变步长延续解算器:max step size:设置最大仿真步长,min step size:设置最小仿真步长,initial step size: 设置初始仿真步长,zero crossing control:

3、进展系统形状变量不延续点的零穿越检查,relative tolerance 设置相对误差允许限,absolute tolerance:设置绝对误差允许限解算器solverII-变步长离散解算器n解算器variable-step,解算器仿真算法:discrete解算器solverIII-定步长(fixed-step)解算器nperiodic sample time constraint:规定由仿真模型定义的采样时间约束nfixed-step size:设置定仿真步长的数值ntasking mode for periodic sample time:设置义务方式:n单义务适用于具有一样采样速率的情

4、况,n多义务方式用于模型具有不同采样速率的情况;nauto方式表示系统可根据模型中的采样速率能否一样,自动选择单或多义务方式。解算器算法及选择I-变步长算法node45-基于龙格库塔法的四、五阶单步变步长算法,单步法,对大多数系统有效,最常用;node23-基于龙格库塔法的二、三阶单步变步长算法,对宽误差限和存在细微刚性的系统比oed45更有效一些;node113-可变阶次的Adams-Bashforth-Moulton PECE多步算法,比ode45更适宜于误差要求更严厉的情况,适用于光滑、非线性、时间常数变化范围不大的系统;node15s-可变阶次的数值微分公式多步算法,可以解算刚性问题或

5、在用ode45时仿真失败或不够有效时采用;node23s-基于修正的Rosenbrock公式单步算法,适用于误差允许范围较宽的情况,对于一些用ode15s不是很有效的刚性系统,可以有效处理;node23t-基于梯形规那么的一种自在插补实现算法,可以解算适度刚性且需求没有数字阻尼的结果问题;node23tb-运用TR-BDF2来实现的,基于二阶隐式龙格库塔公式;ndiscrete-不含积分运算的变步长算法,适用于纯离散系统,此时系统会自动选择该算法 解算器算法及选择II-定步长算法node5-定步长ode45算法;node4-四阶龙格库塔法;node3-定步长ode23算法;node2-Henu

6、方法,即改良欧拉法;node1-即欧拉法,是一种最简单的算法,精度最低,仅用来验证结果;ndiscrete(fixed-step)-不含积分运算的定步长算法,适用于纯离散系统,此时系统会自动选择该算法仿真数据输入/输出Inload from workspace:nInput: 从任务空间导入数据到输入模块(In)中,数据类型包括:数组、时间表达式、构造体和时间串n假设simulink模型中运用了“输入模块,就必需选中该模块并填写所导入数据的变量名;n缺省变量名为t,u,t为时间,u为时间对应的数值;仿真数据输入/输出Iinitial state:用于设置由input选项导入simulink模型

7、输入模块In变量的初始值;选中此选项,无论建立该模型的积分模块设置过什么样的初始值,都可将MATLAB任务空间已存在的变量强迫作为simulink模型“输入模块变量的初始值;缺省名为xinitial例:从MATLAB任务空间导入数据运用实例e6_3.mdlnt1=0:0.01:10;nu1=sin(t1),cos(t1);nx0=2,2;n然后设置load from workspaceScope1sIntegrator2In21In1仿真数据输入/输出IInSave to workspace:将仿真结果数据保管至MATLAB任务空间中;ntime:用于设置保管仿真运转时间的变量名;nstate

8、s:用于设置保管仿真运转的形状变量名;noutput:用于设置保管仿真运转的输出数据变量名;假设运用了输出模块(out),那么必需选中该选项,并填写变量名nfinal state:用于设置保管仿真运转的最终形状变量名;仿真数据输入/输出IInsave option:数据保管选项nlimit data points to last:ndecimation:用于设置解点保管频度,每隔n-1个点保管一个点nformat:用于设置数据保管格式,数组array、构造体structure和时间构造体structure with timenoutput option:用于设置产生附加输出信号数据,只适用于变

9、步长解算器。nrefine output:平滑输出;nproduce additional output:修正时间步长平滑输出;nproduce specified output only:在给定时间内产生输出FormatnArray:将输出结果分别存储在save to workspace域中各编辑框命名的矩阵中,默许值分别为tout,xout,yout,xFinal,矩阵的每一列与模型的一个输出或形状对应,第一行与初始时间相对应。nStructure with time:n保管模型的结果到一个构造中,其名字由Save to workspace域中各编辑框命名的,n有两个顶层字段:时间和信号。

10、时间字段包含仿真时间向量,信号字段包含子构造数组,nStructure:不保管仿真时间nRefine output:这个选项可以了解成精细输出,其可以在refine factor设置仿真时间步间插入的输出点数。n精细输出只能在变步长方式中才干运用,并且在ode45效果最好nProduce additional output:它允许用户直接指定产生输出的时间点。n一旦选择了该项,那么在它的右边出现一个output times编辑框,在这里用户指定额外的仿真输出点nProduce specified output only:simulink只在指定的时间点上产生输出。n为此解法器要调整仿真步长以使

11、之和指定的时间点重合。n这个选项在比较不同的仿真时可以确保它们在一样的时间输出例:P145,例6-6n负反响n阶跃输入模块的起始时间改为0;n终止仿真时间改为20n输出时间变量为t,输出变量为y,选择保管选项为矩阵的方式Arraynplot(t,y)ne6_17.mdl例:P145,例6-7nTo Workspace是由接受模块库复制的,变量名分别改为y和t,并选择保管类型为列矩阵的方式Arrayn负反响n阶跃输入模块的起始时间改为0;n终止仿真时间改为20nplot(t,y)ne6_17_1.mdl例:P146,例6-8n利用Simulink对以下系统进展仿真。当输入为正弦信号时,观测输出信

12、号的变化。ne6_5.mdl 30)(830)(2ttuttuy6.3.2 利用MATLAB的指令操作方式进展仿真nt,x,y=sim(model,tf,options,ut)nt,x,y1,y2,yn=sim(model,tf,options,ut)nModel模型文件名,必需指定,其他参数可默许;nTf仿真时区,0,tf或t0,tfnOptions可选仿真参数,用simset命令指定nUt外部输入函数nT取积分值的时间点序列向量nX系统的形状序列矩阵nY系统输出序列矩阵,每一列表示一个输出的时间序列6.3.3 模块参数的动态互换n在MATLAB任务空间中定义变量n例 6-11 P148ne

13、6_6.mdln在任务空间中运转以下内容:nA=-0.3 0 0;2.9 -0.62 -2.3;0 2.3 0;nb=1;0;0;C=1 1 0;1 -3 1;d=0;1;x0=1;1;1;运用set_param()指令传送数据nSet_param(Name,Parameter1,Value1,Parameter2,Value2,)n其中,Name是系统模块名,Parameter是待修正的参数名,Value是新指定值。n例6-12,P150,e6_7.mdl,e6_8.mnclearnopen(e:computer simulationch6e6_7.mdl);nset_param(e6_7/

14、Gain,Gain,2);nt,x,y=sim(e6_7,10);nplot(t,y(:,1),:b,t,y(:,2),-r);nlegend(y1,y2)几个例子n构造图数学模型n例:三阶控制系统构造图如下图,建立系统的simulink模型,并运转模型5/(s(s+1)(0.456s+1)/(0.114s+1)0.5-r(t)c(t)n建立模型e6_2.mdln参数设置n运转n保管数据运用e6_2m.mr(t)c(t)5s(s+1)Zero-Pole0.456s+10.114s+1Transfer Fcn0.5Gain微分方程数学模型:例n思索如下图的强迫阻尼二阶系统。图中,小车受外力为F,

15、小车位移为x。设小车质量m=5,弹簧弹性系数k=2,阻尼系数f=1。并设系统的初始形状为静止在平衡点处,即 (0)=x(0)=0,外力函数为幅值等于1的阶跃量。仿真此小车系统的运动。x mFkfx列写微分方程n根据牛顿第二定律xmkxxfF xxxF 52xxtuxxFx4 . 02 . 0)(4 . 02 . 02 . 0 利用积分模块构建Simulink模型e6_4.mdl, e6_4m.mxu(t)x_tTo WorkspaceScope1sIntegrator11sIntegrator0.4Gain10.2GainClockAddxx非线性延续时间系统I典型非线性模块的运用n具有饱和非

16、线性特性的控制系统如下图,经过仿真研讨K=15和K=5时系统的运动ne6_satur.mdlK/s(0.1s+1)(0.2s+1)1k=2非线性延续时间系统II恣意函数模块及其运用nFcn模块nMATLAB Fcn模块nLook-up table模块Fcn模块n位于 User Define Function模块组中;nExpression必需填写函数表达式,遵照以下规那么:n模块的输入可以是标量或向量,但输出必需是标量,标量输入用u作为变量名,向量输入用u(1),u(2)等向量作为元素名n表达式符合C言语格式,执行的是标量运算,计算结果就是模块的输出n表达式中援用的其它标量方式的参量必需存在于

17、MATLAB任务空间中P157,例6-16,e6_18.mdlMATLAB Fcn模块n位于 User Define Function模块组中;nMATLAB Fcn填写函数表达式或函数文件名,遵照以下规那么:n模块的输入输出都可以是标量或向量;n表达式的书写规那么与Fcn模块一样,函数编写符合M函数文件根本构造及规那么n表达式或函数的输出必需与该模块的输出维数匹配,否那么就会出现错误。lookup table模块n位于查表模块组中;n有1维,2维,n维之分;n可根据所给表格对输入进展插补或外推运算例:将上一个例子的饱和非线性用MATLAB Fcn函数模块实现n编写bh.m文件并存放在与e6_

18、9.mdl一样目录下,将该目录设置为当出途径r(t)c(t)MATLABFunctionMATLAB Fcn10.2s+1G2(s)50.1s +s2G1(s)例:汽车速度控制系统的设计与仿真n汽车在斜坡上行驶,要求设计一个简单的比例控制器,使汽车能以设定的速度运动。xFeFwFh建立汽车运动的数学模型n根据牛顿第二定律:nm为汽车质量,m=100;nx是汽车的位移;nFe是引擎动力,最大分别为1000,-2000nFw是空气阻力,与轿车速度的平方成正比,第二项思索阵风的影响nFh是汽车重力分量)0001. 0sin(30)01. 0sin(20(001. 02xxFtxFFFFxmhwhwe 汽车行驶模型e6_11.mdl1S

温馨提示

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

评论

0/150

提交评论