Simulink_仿真的高级技术教学课件PPT.ppt_第1页
Simulink_仿真的高级技术教学课件PPT.ppt_第2页
Simulink_仿真的高级技术教学课件PPT.ppt_第3页
Simulink_仿真的高级技术教学课件PPT.ppt_第4页
Simulink_仿真的高级技术教学课件PPT.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

第六章simulink仿真的高级技术 本章重点 使用matlab语言建立系统及仿真 s函数的编写及应用 6 1simulink模型的语句修改 6 1 1simulink模型与文件的处理 1 new system sys model createsanewemptysystem 2 open systemopenasimulinksystemwindoworablockdialogbox 3 save systemsaveasimulinksystem 4 close systemcloseasimulinksystemwindoworablockdialogbox 5 load systeminvisiblyloadasimulinkmodel 例6 1 建立并打开一个空白窗口 并保存为mdl文件 matlab编程如下 new system newmodel open system newmodel save system newmodel 运行 生成newmodel窗口 6 1 3用语句绘制方框图 gcsgetthefullpathnameofthecurrentsimulinksystem add blockaddablocktoasimulinksystem add line sys oport iport addsastraightlinetoasystemfromthespecifiedblockoutputport oport tothespecifiedblockinputport iport set paramsetsimulinksystemandblockparameters 例6 3 建立一个模型 其中一个正弦信号输出连接到饱和非线性环节上 饱和非线性环节的输出连接到示波器上 new system newmodel open system newmodel set param newmodel location 100100500400 add block built in sinewave newmodel inputsignal add block built in saturation newmodel nonlinearelement add block built in scope newmodel myscope set param newmodel inputsignal position 408080120 set param newmodel nonlinearelement positionset param newmodel myscope position 29080310120 add line newmodel inputsignal 1 nonlinearelement 1 add line newmodel nonlinearelement 1 myscope 1 save system newmodel 运行后生成的模型 示波器输出 例6 4 试用编程的方法实现如下的系统 matlab编程 l 7 modname s1 new system modname open system modname fori 1 l i1 int2str i i0 int2str i 1 pos1 100 i 1 8550125 i 1 8570 pos2 pos1 10501050 pos3 pos1 35100 30110 pos4 pos1 1510510100 add block built in gain modname gain i1 position pos1 gain i1 add block built in integrator modname int i1 position pos2 orientation down add block built in transferfcn modname tf i1 position pos3 numerator int2str 5 i denominator 1 i1 add block built in sum modname sum i1 position pos4 iconshape round inputs add line modname gain i1 1 int i1 1 add line modname int i1 1 sum i1 1 add line modname tf i1 1 sum i1 2 ifi 1add line modname gain i0 1 gain i1 1 add line modname sum i0 1 tf i1 1 endendadd block built in inport modname in position 25504570 pos5 pos4 500450 add block built in outport modname out position pos5 add line modname in 1 gain1 1 add line modname in 1 tf1 1 add line modname sum int2str l 1 out 1 save system modname 运行 得到如下系统模型 6 2系统仿真与线性化 6 2 1仿真过程的命令化 1 gcs命令getthefullpathnameofthecurrentsimulinksystem 2 sim命令simulateasimulinkmodel 3 simget命令getsimoptionsstructure 例6 6 考虑例4 2中的模型 设mu 1000 使用命令的方式启动运行模型 mu 1000 x01 1 x02 2 f simget example4 2scopeall f solver ode15s t x y sim example4 2scopeall 03000 f plot t y 1 figure plot t y 2 运行 得到结果如下 6 3s 函数的编写及应用 s 函数可以用matlab或c语言等编写 构成s 函数模块 模块可以像标准simulink模块那样直接调用 6 3 1用matlab语句编写s 函数 s 函数的引导语句function sys x0 str ts f t u flag p1 p2 1 参数初始设定 sizes simsize 2 状态的动态更新 连续模块由mdlderivatives设置 离散模块由mdlupdate函数设置 3 输出信号的计算 调用mdloutputs函数 matlab提供了sfuntmpl m模板作为参考文件 执行s 文件过程 仿真开始时将flag设置为0 启动初始化过程 然后将flag设置成3 计算模块的输出信号 再分别设置flag值为1 2 更新连续和离散状态 完成一步仿真 在下一个仿真步长内 任然将flag的值依次设置成3 1 2 直到仿真结束 例6 15 生成多阶梯信号发生器 时刻生成幅度为的阶跃信号 function sys x0 str ts multi step t x u flag ttime ystep switchflag case0size simsizes sizes numcontstates 0 sizes numdiscstates 0 sizes numoutputs 1 sizes numinputs 0 sizes dirfeedthrough 0 sizes numsampletimes 1 sys simsizes sizes x0 str ts 00 case3i find ttime t sys ystep i end case 1 2 4 9 sys otherwiseerror unhandledflag num2str flag end 模块的应用 ttime 0123 ystep 0123 6 3 3二级s 函数 二级s函数采用的是面向对象的编程思想 不再使用根据flag取值的switch case结构的流程图 可以支持多输入 多输出端口的设置 参考 msfuntmpl m文件 6 3 4用c语言编写s 函数 用matlab提供的模板 s functionbuilder 输入

温馨提示

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

评论

0/150

提交评论