文档详情

Simlink仿真环境第四章

hs****ma
实名认证
店铺
PPT
232KB
约43页
文档ID:608440759
Simlink仿真环境第四章_第1页
1/43

单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,1,第四章,Simulink,仿真环境,2,4.1Simulink,概述,是,MATLAB,环境下的数字仿真工具,文件类型为,.mdl,对动态系统进行建模、仿真和分析的集成环境,可以进行图形建模,提供封装模块化工具,特点:,简化了设计过程,减轻了设计负担,提高了仿真的集成化、可视化程度,可扩充性很强,3,4.2,模型库与,DEMO,模型库,在,MATLAB,命令空间键入,Simulink,可打开,Simulink,模块组,点击快捷图标可打开,Simulink,模型库菜单,Simulink,模型库具有两层结构,第一层结构有,simulink,、,CDMA,、通信系统、控制系统等模块组,Simulink,模块组包括,13,个子模块库,打开每一个子模块库可展现其中内容,库的创建,Simulink library Browser,窗口,File New library,建立新模型保存后可以调出使用,4,DEMO,在,MATLAB,空间键入,DEMO,可查看各种应用演示,键入,demo,后在,help,窗口选择菜单:,Simulink GeneralThermodynamic Model of a HouseOpen this model,演示房间控温和热量计量过程,5,4.3,仿真结构图,建立或打开仿真图,建立,Simulink,仿真图,在窗口选择,File,菜单下的,New,子菜单,并选择,Model,项,建立一个新的仿真建模窗口,打开已有的,Simulink,仿真图,在窗口选择,File,菜单下的,Openxxx.mdl,打开原有的仿真图,MATLAB,窗口键入文件名,xxx,打开原有的仿真图,MATLAB,窗口浏览器直接打开,xxx.mdl,文件,6,模块操作,添加模块:在模块库中选择所需要的模块,用鼠标直接拖入到仿真图中,如无所需模块则要自己创建,删除模块:选中模块、点击鼠标右键、选择,Clear,设置模块参数:选中模块、双击鼠标左键、显示参数修改框、修改参数,改变模块方向:选中模块、点击菜单,Format Flip Block(,旋转,180)/Rotat Block(,旋转,90),7,模块操作,调整模块大小:选择模块、用鼠标拖放角即可,全选也可以,改变模块名字:用鼠标选中模块名字项、即可修改,改变模块名字的位置:用鼠标选中模块名字项拖至所需位置即可,复制模块:选中要复制的模块、点击鼠标右键选择,Copy,命令即可,删除模块:选中要复制的模块、点击鼠标右键选择,Clear,命令即可,8,方框图连接,图中连线有方向性,箭头代表信号传递的方向,连接模块画线段:的起始端(模块的一端)按住鼠标左键不松开、一直画线到线的末端(另外模块的一端),画线段支线:的起始端(线上的任一点)按住鼠标右键不松开、一直画线到线的末端(模块的一端),连接线标注:选中线段、双击鼠标左键、显示文字编辑框、输入文字标注,连接线标注移动:选中线段编辑框按住鼠标左键不松开移动至指定位置,9,注释,标注仿真图注释:在图中的任意空位,双击鼠标左键、显示文字编辑框、输入文字标注,改变注释字体:选中注释文字后,点击菜单,Format Font,显示,Set Font,窗口,选择字体、字形、字高等,删除仿真图注释:在文字编辑框内单击鼠标右键显示菜单、选择,Clear,删除注释,10,例:,PID,调节过程仿真,1,、创建一个新仿真图:在,test1.mdl,图中,直接从,MATLAB,窗口或在,Simulink,模块库窗口打开,也可以用,Newmodel,创建仿真图,2,、打开模型库,在,MATLAB,空间键入,Simulink,,打开,Simulink,模型库,3,、选择信号源,在,Simulink,模型库的,Source,中拖动,Step,(阶跃信号发生器)到仿真图中,11,例:,PID,调节过程仿真(续),4,、选择比较环节,在,Simulink,模型库的,Math Operations,中拖动,sum,作为比较环节,改动,-,号,5,、选择,PID,调节器,在,SimPowerSystems,模型库的,Extra Library,中选择,Discrete Control Blocks,拖动,PID,6,、选择被控对象的传递函数,在,Simulink,模型库的,Continuous,中拖动,Transfer fcn,到仿真图中,双击打开传递函数的参数设定框,设定,Numerator,:,1,;,Denominator,:,1 0.5 1,12,例:,PID,调节过程仿真(续),7,、选择混合环节,在,Simulink,模型库的,Signal Routing,中拖动,Mux,到仿真图中,缺省值就是两个输入量,显示设定值和被控值,8,、选择示波器,在,Simulink,模型库的,Sinks,中拖动,Scop,示波器到仿真图中,9,、构建闭环系统,用直线连接各个环节,构成闭环控制系统,注意箭头的方向,13,例:,PID,调节过程仿真(续),10,、修改仿真参数,在仿真图形界面,选择,Simulation,菜单中的,Simulation parameters,,显示参数设定对话框,在,Solver,中修改参数,设定,start time,和,Stop time,(设,0,、,20,),在解题选项(,Solver options,)中选择,“,Variabie-step,变步长”和“,ode45”,算法,11,、修改信号源参数,在仿真图形界面,双击信号源,Step,,显示参数修改界面,设定,Step time,(,1,),设定起始值,Initial value,(,0,),14,例:,PID,调节过程仿真(续),设定终值,Final value,(,1,),设定采样时间,Sample time,(,0.01,),12,、修改示波器参数,双击示波器打开图形界面,点击,parameters,菜单,点击,General,在,Sampling,中选择取样时间,Decimation,和,100,点击,Data history,在,Limit data points to last,中设定保留数据长度,使得仿真过程的数据能够保留显示,选择,5000,15,例:,PID,调节过程仿真(续),13,、调整,PID,参数,运行,PID,控制系统,观察过渡过程曲线,调整,PID,参数,直至满意为止,14,、改变设定值重新调试,重复,11,、,12,、,13,步,选择不同的输入值,改变,PID,调节器的上下限、采样时间等再重复进行,15,、改变被控对象的传递函数,运行、调整,PID,参数,16,4.4,与,M,函数组合仿真,1,、与,M,函数组合,编制,M,文件,起名,.m,存储,用,MATLAB Fcn,模块组合,M,函数,打开,MATLAB Function,参数设定界面,键入,M,文件名,修改图标的名称,连接到仿真图中,组合完毕、进行仿真,17,2,、与,M,函数组合仿真实例,在,MATLAB,窗口,fileNewM-file,打开编辑窗口,编制带死区,M,文件并起名,deadzone.m save as,打开仿真图形,test2,,打开,Simulink,打开,User-Defind Functions,拖入,MATLAB Fcn,双击,MATLAB Function,图标,打开参数设定界面,在,MATLAB Function,中键入,M,文件名,修改,MATLAB Function,图标下的名称,连接到仿真图中,18,4.5,与,S,函数组合仿真,S,函数在方块图中引入了一个函数描述的动态环节,不必建立仿真方块图,便于复杂系统的仿真,S,函数可以由,C,、,C+,、,Ada,、,Fortran,等源码文件编译生成的,mex,文件构成,S,函数可以重新用于各种场合,4.5.1 S,函数的建立,新建,mdl,文件,从,simulink,中的,User-Defind Functions,模块库中拖入,S-Function,模块,在,S-function Name,的对话框中键入,S,函数的,M,文件名,在,S-function Parameters,的对话框中键入,S,函数的参数值,19,4.5.2,编辑或建立,S,函数文件,利用模板文件编写,S,函数,打开,matlab6p5toolboxsimulinkblocks,文件夹,打开,sfuntmpl.m,文件,进行适当的剪裁和补充,编写要完成的指令,起名字按照一定的路径存储(与,mdl,文件同路径,不要与,mdl,文件同名),20,4.5.3,实例介绍,S,函数文件,例:单摆系统动力学模型如下,,f,m,外力、,K,d,摩擦系数、,K,g,重力系数;,1,)利用,S,模块建立单摆系统动力学模型;,2,)演示单摆运动动画,21,4.5.4,实例观察,S,函数文件和模型,打开,stest1.m,文件,打开,stest1_090508.mdl,4.5.5,数学方程形式仿真单摆运动,打开,stest_090508_math.mdl,文件,比较仿真结果,24,4.6,模块化与封装,模块化技术可以简化系统结构,提高集成化程度,把模块的集体内容包装起来,对外只显示关键数据,可供用户修改,25,4.6.1,模块化,特点与作用,可以是多输入、多输出环节,可以嵌套,将复杂环节建成模块、简化仿真图,为模块封装做准备,在,Simulink,方框图仿真环境下进行,创建方法,可利用子系统模块封装,可在已有模块上创建子系统,26,4.6.1.1,通过加入子系统,空模块,创建子系统,从,simulink,的信号与系统(,Ports&Systems,)库中拷贝,Subsystem,模块到模型中,双击该子系统模块,打开它(只有输入与输出),在空的,Subsystem,窗口创建子系统,使用输入(,Inport,)、输出(,Outport,)模块与外部相连,选中所有模块(输入、输出模块除外),点击,Edit,菜单中的,create subsystem,命令创建子系统,起名并存贮,存贮格式是,.mdl,文件,27,4.6.1.2,将已有模块组织在一起创建子系统,利用模块方框图构成完整系统,建立模块方框图,建立输入、输出项,用鼠标选择所有的模块,输入、输出项不选,输入、输出项与模块的连线要选择,点击,Edit,菜单中的,create subsystem,命令创建子系统,起名并存贮,存贮格式是,.mdl,文件,28,4.6.1.3,方程建模实例,例,4-1,:创建将摄氏温度转换为华氏温度公式模型,公式:,T,F,=T,C,9/5+32,建一个新仿真图,将所需模块拖入,用,Ramp,模块输入温度信号,T,C,(,Sources,库),用,Gain,模块将输入信号乘以,9/5,(,Math,库),用,Constant,模块定义常数,32,(,Sources,库),用,Sum,模块将两数相加(,Math,库),用,Scope,模块显示输出结果,T,F,(,Sinks,库),给各模块输入合适的值,连接各模块,运行调试,用,1.2,所示创建模块(,wendubianhuan2.mdl,),29,例,4-2,:创建一个简单的连续系统模型,连续系统模型:,x(t)=-2x(t)+u(t),;,将所需模块拖入(,u(t),输入;,x(t),输出),u(t),为幅度为,1,、,1,弧度,/,分的方波,,Singnal Generator,模块、选择,Square,形式、单位,rad/sec,(,Sources,库),用,Gain,模块,(,掉转方向,),,将,x(t),乘以,-2,(,Math,库),用,Sum,模块将两数相加(,Math,库),用,Integrator,模块将求和信号积分(,continuous,库),用,Scope,模块显示输出结果(,Sinks,库),给各模块输入合适的。

下载提示
相似文档
正为您匹配相似的精品文档