欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    运行仿真学习.pptx

    • 资源ID:77762794       资源大小:262.16KB        全文页数:50页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    运行仿真学习.pptx

    l 介绍两种 Simulink 运行仿真的方法3.1 使用窗口运行仿真3.2 使用 MATLAB 命令运行仿真本章内容和学习目的l 掌握以上两种运行仿真的方法第1页/共50页2023年2月24日2MATLAB Function 与Function 模块利用User_Defind Function模块库中的MATLAB Function 与与Function 进行进行Simulink 与与MATLAB之间之间的数据交互。的数据交互。Fcn 模块一般用来实现简单的函数关系,在模块一般用来实现简单的函数关系,在Fcn模块中模块中1)输入总是表示成输入总是表示成u,u可以是一个向量。可以是一个向量。2)可以使用)可以使用C语言表达式,语言表达式,例如:例如:sin(u1)+cos(u2)3)输出永远为一个标量。输出永远为一个标量。第2页/共50页2023年2月24日3MATLAB Fcn 一般用来调用一般用来调用MATLAB函数函数来实现一来实现一定的功能:定的功能:(1)所要调用的函数只能有一个输出(可以是一个)所要调用的函数只能有一个输出(可以是一个向量)向量)(2)单输入函数只需使用函数名,多输入函数需要)单输入函数只需使用函数名,多输入函数需要引用相应的元素引用相应的元素(3)在每个仿真步长内都需要调用)在每个仿真步长内都需要调用MATLAB解释器。解释器。第3页/共50页2023年2月24日4sin(u(1)+u(2)cos第4页/共50页3.1 使用窗口运行仿真运行一个仿真的完整过程是:设置仿真参数、开始仿真、查看分析结果运行仿真的方法有两种:使用窗口菜单命令 和使用MATLAB命令第5页/共50页2023年2月24日6使用窗口运行仿真主要可以完成以下一些操作。使用窗口运行仿真主要可以完成以下一些操作。1.设置仿真参数设置仿真参数 仿真参数和算法选择的设置仿真参数和算法选择的设置2.启动仿真启动仿真 选择命令运行仿真选择命令运行仿真3.停止仿真停止仿真 选择命令停止仿真选择命令停止仿真4.中中断断仿仿真真 可可以以在在中中断断点点继继续续启启动动仿仿真真,而而停停止止仿仿真则不能真则不能5.仿仿真真诊诊断断 在在仿仿真真中中若若出出现现错错误误,Simulink 将将会会终止仿真并在仿真诊断对话框中显示错误信息终止仿真并在仿真诊断对话框中显示错误信息第6页/共50页设置仿真参数 选 择 菜 单 选 项【SimulationConfiguration Parameters】,可以对仿真参数及算法进行设置,共有五个选项卡1.解法设置(Solver)2.工作空间输入输出(Workspace I/O)3.仿真诊断参数(Diagnostics)4.高级设置(Advanced)5.实时工具对话框(Real-Time Workshop)第7页/共50页 解法设置(Solver)工作空间I/O(Workspace I/O)诊断页(Diagnostics)设置起始和终止时间,选择解法,指定求解参数和选择输出选项 管理MATLAB工作空间的输入输出项 选择在仿真中警告信息的等级第8页/共50页2023年2月24日9 高级设置(Advanced)实时工具对话框(Real-Time Workshop)对仿真的一些高级配置进行设置 对实时工具中若干参数进行设置。若没有安装实时工具,不出现此框。第9页/共50页 1.Solver(仿真解法设置)选中【SimulationConfiguration Parameters】后,再点击【Solver】。解法设置选项卡包括五项内容:Simulation time,Solver option,step,Relative tolerance/Absolute tolerance,Output options.第10页/共50页2023年2月24日11 1)Simulation timeStart time 默认:0Stop time 默认:10 第11页/共50页2023年2月24日122)Solver option变步长解法:ode45,ode23,ode113,discrete 默认解法是 ode45-连续系统 discrete-离散系统定 步 长 解 法:ode5,ode4,ode3,ode2,discrete 默认解法是 ode5-连续系统 discrete-离散系统第12页/共50页3)Step 变步长解法可以设置初始步长和最大步长固定步长解法固定步长解法只可设置固定步长系统的默认步长是auto.4)Relative tolerance/Absolute tolerance(相对误差限/绝对误差限)相对误差限默认:绝对误差限默认:auto1e-3第13页/共50页2023年2月24日14 5)output options用户用来控制仿真输出个数的对话框,共有三个选项:一般输出,产生附加输出,产生指定输出。第14页/共50页Simulink的数值解法表解法说明Discrete 离散系统的解法Ode1 固定步长的Euler解法Ode2固定步长的2阶Runge-Kutta解法Ode3固定步长的3阶Runge-Kutta函数解法Ode4固定步长的4阶Runge-Kutta解法Ode5固定步长的5阶Runge-Kutta函数解法Ode45变步长4、5阶Runge-Kutta解法Ode23变步长2、3阶Adamas解法,对于刚性方程比ode45有效Ode113变阶次Adams-Bashforth-Moulton解法Ode15s刚性系统变阶次多步解法Ode23s刚性系统固定阶次的多步解法Ode23t刚性系统变步长的2、3阶多步解法第15页/共50页2.Workspace I/O工作空间输入输出 Simulink 的输入数据可以从 MATLAB 的工作空间中获得,其仿真结果也可以被引入到 MATLAB的 工作空间。实现此项功能需要用到仿真参数对话框中的工作空间 I/O 页。Workspace Data Import/Export 分为三个部分:u 从MATLAB工作空间获得系统输入(Load from workspace)u 仿真结果输出到MATLAB的工作空间(Save to workspace)u 数据保存设置(Save options)第16页/共50页u 从MATLAB工作空间加载(Load from workspace)用户可以设置 MATLAB 中的变量作为系统输入信号或系统状态初值,有两个选项(1)Input:用来设置系统输入信号。格式为 t,u,t、u 均为列向量,t 为输入信号的时间向量,u 为相应时刻的信号取值。可以使用多个信号输入,如 t,u1,u2。在模型中添加接受外部信号的 Inport 模块(In1模块)。第17页/共50页2023年2月24日18(2)Initial state:用来设置系统状态变量的初始值。初始值 xInitial 可为列向量。例1:已建立好仿真模型如下接受外部信号的模块第18页/共50页2023年2月24日19在MATLAB命令窗口中输入命令:t=(0:0.1:10);%注意t为列向量 u=sin(t);将 Load from workspace 栏 Input 选上,然后进行仿真。第19页/共50页2023年2月24日20例2 这是一个模型接受多个输入变量的实例输入状态u包含三个输入项,在模型中应该有三个接受外部变量的端口,即添加3个In1 模块。第20页/共50页2023年2月24日21在MATTAB命令窗口中输入的变量为:t=(1:0.01:10);u=sin(t),2*cos(t),0.5*t;将 Load from workspace 栏 Input 选上,然后进行仿真第21页/共50页u 仿真结果输出到MATLAB的工作空间(Save to workspace)可将系统的仿真结果、系统仿真时刻、系统中的状态或指定的信号输出到 MATLAB 的工作空间中,有四个选项。(1)Time:tout 输出系统仿真时刻。(2)States:xout 输出系统模型中的所有状态变量。(3)Output:yout 输出系统模型中的所有由 Output 模块 (即 Out1 模块)表示的信号。(4)Final state:xFinal 输出系统模型中的最终状态变量取值,即最后仿真时刻处的状态值。第22页/共50页 数据保存设置(Save option)(1)Limit data points to last:表示输出数据的长度(从信号的最后数据点记起)。(2)Format:表示输出数据类型。共有三种形式:Structure with Time(带有仿真时间变量的结构体),Structure(不带仿真时间变量的结构体),Array(信号数组)。第23页/共50页假定两个输入信号都为正弦信号 sin(t),并且假定初始值为 0,1例3:第24页/共50页将 Load from workspace 栏的两项全部选上,并且将 Input 栏改写为t,u,u。将 Save to workspace 栏的四项全部选上。Save option 栏的三项分别为:1000,1,Array首先生成系统输入信号与状态初始值,在 MATLAB 命令窗口中键入如下命令:t=0:0.1:10;t=t;u=sin(t);xInitial=0,1;第25页/共50页然后运行仿真,结果如下:第26页/共50页运行 whos 的结果:Name Size Bytes Class t 101x1 808 double array tout 51x1 408 double array u 101x1 808 double array xFinal 1x2 16 double array xInitial 1x2 16 double array xout 51x2 816 double array yout 51x2 816 double array上面 t 和 tout 的维数不相同,这是因为在 Solver 中采用了变步长解法,若采用定步长解法(步长取 0.1)则维数相同。第27页/共50页3.2 使用MATLAB命令运行仿真 MATLAB 提供了 sim 命令,使用户可以在 MATLAB 的环境下以命令行或 M 文件的形式运行 Simulink 模型。使用命令行方式,用户可以编写并运行系统仿真的脚本文件来完成动态系统的仿真,在脚本文件中重复地对同一系统在不同的仿真参数或不同的系统模块参数下进行仿真,而无需一次又一次启动 Simulink 图形窗口中的 Start Simulink 进行仿真。使用命令行方式进行动态系统的仿真给用户提供了更强的控制能力,尤其适合高级用户。为什么需要使用命令行方式对动态系统进行仿真?第28页/共50页建立一个简单的动态系统,其功能如下:(1)系统的输入正弦信号:(2)系统的输出信号为输入信号的积分:要求如下:要求如下:(1)系系统统的的输输入入信信号号由由 MATLAB 工工作作空空间间中中的的变变量量提提供供,时时间间010s;(2)使用)使用 MATLAB 绘制原始输入信号与系统运算结果的曲线。绘制原始输入信号与系统运算结果的曲线。原函数的积分为:若取零初始条件,则有:第29页/共50页在 MATLAB 工作空间中定义输入变量 sim_input 如下:t=0:0.1:10;t=t;%表示输入信号的时间范围u=sin(t);%产生输入正弦信号sim_input=t,u;%传递给 Simulink 系统模型的变量第30页/共50页1Out11sIntegrator1In1Simulink 模型(保存文件名为:command_in_out)对 Workspace Data I/O 页进行如下设置:(1)Load from workspace 栏:Input 打勾,并填入 sim_input (由 MATLAB 工作空间输入的变量名)。(2)Save to workspace 栏:Time 和 Output 项勾上。tout-输出系统仿真时刻,yout-输出模型中所有由outport模块(即Out1模块)表示的信号第31页/共50页然后运行 Simulink 仿真。最后在 MATLAB 工作空间运行如下命令:plot(t,u,tout,yout,-);grid第32页/共50页 使用 sim 命令进行动态系统仿真1 使用语法 sim 命令的格式为:t,x,y =sim(model,timespan,options,ut)t,x,y1,y2,yn =sim(model,timespan,options,ut)t:返回系统仿真的时间向量;x:返回系统仿真的状态变量矩阵。y:返回系统仿真的输出矩阵。按照顶层输出 Outport 模块的顺序输出。y1,yn:返回多个系统仿真的输出实际使用时可省略某些参数设置而采用默认参数进行仿真。第33页/共50页2 参数说明(1)model:需要进行仿真的系统模型框图名称;:需要进行仿真的系统模型框图名称;(2)timespan:系系统统仿仿真真的的时时间间范范围围(起起始始至至终终止止时时间间),可有如下形式:,可有如下形式:tFinal:设置仿真终止时间。仿真起始时间默认为设置仿真终止时间。仿真起始时间默认为0;tStart tFinal:仿真起始时间仿真起始时间 与终止时间;与终止时间;tStart OutputTimes tFinal:设设置置仿仿真真起起始始时时间间与与终终止止时时间,并且设置仿真返回的时间向量间,并且设置仿真返回的时间向量。其中其中 tStart、OutputTimes、tFinal 必须按照升序排列。必须按照升序排列。第34页/共50页(3)options:由由 simset 命命令令所所设设置置的的除除仿仿真真时时间间外外的的仿仿真参数;真参数;(4)ut:表表示示系系统统模模型型顶顶层层的的外外部部可可选选输输入入。ut 可可以以是是 MATLAB 函数。可以使用多个外部输入函数。可以使用多个外部输入 ut1、ut2、。3 举例之一:简单仿真输入:sin(t)1Out11sIntegrator1In1输出:第35页/共50页 对于前面的动态系统 command_in_out,在此采用命令行语句进行仿真。在仿真之前,首先使用仿真参数设置对话框设置参数,然后在 MATLAB 命令窗口中键入如下命令:t=0:0.1:10;t=t;u=sin(t);sim_input=t,u;%传递给 Simulink 系统模型的变量 tout,x,yout =sim(command_in_out)使用 sim 进行系统仿真,仿真参数取与前面相同plot(t,u,tout,yout,-);grid第36页/共50页4 举例之二:仿真时间设置 sim 命令中的仿真时间参数 timespan 具有三种使用形式:t,x,y =sim(model,tFinal)t,x,y =sim(model,tStart,tFinal)t,x,y =sim(model,tStart outputTimes tFinal )注意:仿真终止时间 tFinal 应该大于起始时间 tStart。在默认情况下,系统仿真的输出结果(输出时间、状态和运算结果)受到 Simulink 求解器仿真步长的控制。如果需要在指定的时刻输出系统仿真结果,则需要使用第三种方式,其中 tStart outputTimes tFinal 表示输出时间向量,此向量为一递增行向量。第37页/共50页仍以前面的 command_in_out 为例进行说明;仿真参数设置对话框内的设置与前面相同;这里使用四组不同的仿真时间对此系统进行仿真;绘制系统输入信号与系统运算结果关系图作比较。第38页/共50页2023年2月24日39M文件名:command_in_out_mt=0:0.1:10;t=t;u=sin(t);sim_input=t,u;tout1,x1,yout1=sim(command_in_out,5);仿真时间范围仿真时间范围05s,tout2,x2,yout2=sim(command_in_out,1 8);1 18s8s,tout3,x3,yout3=sim(command_in_out,1:8);18s,tout4,x4,yout4=sim(command_in_out,1:0.2:8);%18s,第39页/共50页2023年2月24日40subplot(2,2,1);plot(t,u,tout1,yout1,.);subplot(2,2,2);plot(t,u,tout2,yout2,.);subplot(2,2,3);plot(t,u,tout3,yout3,.);subplot(2,2,4);plot(t,u,tout4,yout4,.);第40页/共50页左上图:系统仿真返回时间向量 tout1 由 Simulimk 的求解器步长决定;右上图:系统仿真返回时间向量 tout2 由 Simulimk 的求解器步长决定;左下图:每隔 1s 输出一次,系统仿真返回时间向量为 1 2 3 4 5 6 7 8右下图:每隔 0.2s 输出一次,系统仿真返回时间向量为 1 1.2 1.4 7.6 7.8 8第41页/共50页5 举例之三:外部输入变量设置 前面对动态系统 command_in_out 进行仿真时,通过设置 Simulink 仿真参数设置对话框中 Workspace I/O 中的外部变量输入,以使系统在仿真过程中获取输入信号 sim_input。除了使用这种方法从 MATLAB 工作空间中获得系统输入信号之外,用户还可以通过使用 sim 命令中的 ut 参数来设置系统的外部输入信号。下面介绍如何使用 ut 参数设置外部输入信号。仍以 command_in_out 为例进行说明。在使用如下命令时 t,x,y=sim(model,timespan,options,ut)ut 为一个具有两列的矩阵,第一列表示外部输入信号的时间,第二列代表与时间列相对应的外部输入信号。第42页/共50页t=0:0.1:10;t=t;u=sin(t);sim_input=t,u;tout1,x1,yout1=sim(command_in_out,10);使用 Simulink 仿真参数对话框中的 workspace I/O 从 MATLAB 工作空间中获得输入信号u=cos(t);ut=t,u;改变系统输入信号tout2,x2,yout2=sim(command_in_out,10,ut);使用 Sim 中的 ut 参数获得系统输入信号,ut的使用会覆盖由 Workspace I/O 的系统输入设置,这一点可以在下面的系统仿真结果图形中反映出来.subplot(1,2,1);plot(tout1,yout1);gridsubplot(1,2,2);plot(tout2,yout2);grid MATLAB 程序(程序名:command_in_out_m2.m)第43页/共50页 图中上图表示系统输入为 sin(t)时的相应曲线,下图表示 cos(t)时的相应曲线。从图中可明显看出,当使用 sim 命令的 ut 参数时,Simulink 仿真参数设置对话框中的设置被覆盖。以前对话框中的外部输入是名为 sim_input 的正弦信号,而采用 ut 参数后执行的余弦输入信号。注意:这里指的“覆盖”,并不是在 Workspace I/O 对话框的 Input 中,将 sim_input 改变成了 ut,事实上并没有改变,只是不执行 sim_input,而执行了命令行中的 ut。01234567891000.511.52012345678910-1-0.500.51第44页/共50页3.2.2 simset 命令3.2.3 simget 命令 simget 命令用来获得系统模型的仿真参数设置。simset 命令是用来创建和编辑 options 结构的。用户可以使用simset对系统仿真参数进行设置3.2.4 simplot 命令可以使用simplot命令绘制图形,输出仿真结果 使用语法:simplot(data);simplot(time,data);说明:data 是动态系统仿真的输出数据,一般由 outport 模块、To Workspace 模块等产生的输出,其数据类型可以为矩阵、向量或是结构体等。第45页/共50页2023年2月24日46离散系统的仿真分析人口变化的数学模型这是一个简单的人口变化模型,设某一年的人口数目为p(n),其中n表示年份,它与上一年的人口p(n-1)、人口繁殖速率预计新增资源所能满足的个体数目K之间的动力学方程有如下的差分方程描述 p(n)=rp(n-1)1-p(n-1)/K此系统为一非线性离散系统,设人口初始值 p(0)=100000,人口繁殖速率r=1.05,新增资源所能满足的个体数目K=1000 000.要求建立此人口动态变化系统的系统模型,并分析人口数目在0至100年之间的变化趋势。第46页/共50页2023年2月24日47设置模块参数:1)增益模块Gain表示人口繁殖速率:1.05 2)另一个增益模块表示新增资源所能满足的个体数目倒数,1/1000 0003)Unit Delay 模块参数设置,人口初始值100 000仿真参数设置1)设置系统仿真时间范围0-1002)离散求解器与变步长求解器设置运行系统仿真第47页/共50页2023年2月24日48p(n)=rp(n-1)1-p(n-1)/K第48页/共50页2023年2月24日49作业1:以前面的 command_in_out 模型框图为例,采用命令行语句并使用四组不同的仿真时间对此系统进行仿真;绘制系统输入信号与系统运算结果关系图作比较。作业2:人口变化的离散系统模型的Simulink仿真。第49页/共50页2023年2月24日理论力学CAI 章名50感谢您的观看!第50页/共50页

    注意事项

    本文(运行仿真学习.pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开