版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、基本模块在MATLAB的命令窗口中运行Simulink命令,可以打开仿真模块。其内容如下。1.输入信号源模块库输入信号源模块库(Sources)见表2-1。2.接收模块库接收模块库存(Sinks)见表2-2。3.连续系统模块库连续系统模块库(Continuous)见表2-3。4.离散系统模块库离散系统模块库(Discrete)见表2-4。返回二、模块的参数和属性设置1.正弦信号源双击正弦信号源(SineWave)模块,会出现图2-1所示的参数设置对话框。其上部分为参数说明,仔细阅读可以帮助用户设置参数。Sinetype为正弦类型,包括Timebased和Samplebased;Amplitude为正弦幅值:Bias为幅值偏移值;Frequency为正弦频率;Phase为初始相角;Sampletime为采样时间。2.阶跃信号源阶跃信号源(Step)模块是输入信号源,其模块参数对话框如图2-2所示。其中Steptime为阶跃信号的变化时刻,Initialvalue为初始值,Finalvalue为终止值,Sampletime为采样时间。下一页返回二、模块的参数和属性设置3.传递函数传递函数(Transferfunction)模块是用来构成连续系统结构的模块,其模块参数对话框如图2-3所示。4.模块属性设置每个模块的属性对话框的内容都相同。(1)说明(Description):对模块在模型中用法的注释。(2)优先级(Priority):规定该模块在模型中相对于其他模块执行的优先顺序。(3)标记(Tags):用户为模块添加的文本格式标记。上一页下一页返回二、模块的参数和属性设置(4)调用函数(Openfunction):当用户双击该模块时调用的MATLAB函数。(5)属性格式字符串(Attributesformatstring):指定在该模块的图标下显示模块的哪个参数和格式。[例2-1]建立二阶系统的阶跃仿真,输入阶跃信号,系统开环传递函数为,接收模块使用示波器来构成模型。(1)在Sources模块库中选择Step模块,在Continuous模块库中择TransferFcn模块,在MathOperations模块库中选择Sum模块,在Sinks模块库中选择Scope模块。(2)连接各模块,从信号线引出分支点,构成闭环系统,如图2-4所示。(3)仿真并分析。单击工具栏中的Startsimulation按钮,开始仿真,在示波器上就显示出阶跃响应,结果如图2-5所示。上一页返回三、离散系统仿真1.创建模型并仿真[例2-2]控制部分为离散环节,被控对象为两个连续环节,其中一个有反馈环,反馈环引入了零阶保持器,输入为阶跃信号。(1)选择一个Step模块,选择两个TransferFcn模块,选择两个Sum模块,选择两个Scope模块,选择一个Gain模块,在Discrete模块库中选择一个DiscreteFilter和一个Zero-OrderHold模块。(2)连接模块,将反馈环的Gain模块和Zero-OrderHold模块翻转。选中该模块右击,在弹出的快捷菜单中选择format-FlipBlock命令,翻转模块。(3)设置参数,DiscreteFilter和Zero-OrderHold模块的Sampletime都设置为0.1s,如图2-6所示。下一页返回三、离散系统仿真(4)开始仿真,系统的输出响应较平稳,两个示波器的显示如图2-7所示。(5)修改参数,将DiscreteFilter模块的Sampletime设置为0.8s,Zero-OrderHold模块的Sampletime不变;然后开始仿真,可以看出当T=0.8而Tk=0.7时,系统出现振荡。示波器的显示如图2-8所示。(6)修改参数,将DiscreteFilter和Zero-OrderHold模块的Sampletime都设置为0.8s,更新框图颜色,开始仿真,当T=Tk=0.8时,系统出现强烈的振荡。示波器的显示如图2-9所示。上一页下一页返回三、离散系统仿真2.仿真参数结构化当系统参数需要经常改变或由函数得出时,可以使用变量来作为模块的参数。[例2-3]将例2-2中的模块结构参数用变量表示,结构图如图2-10所示。将参数设置放在Exl.m文件中:在MATLAB工作空间运行该文件后,再到Simulink中进行仿真即可。上一页返回四、PID校正的仿真PID参数校正的模块结构图如图2-11所示。调整比例、积分和微分的参数,使其达到对原系统输出校正的效果。[例2-4]已知系统的开环传递函数,设计合理PID参数使得输出满足预定指标。原系统结构图及单位阶跃响应曲线如图2-12和图2-13所示。校正后系统结构及单位阶跃响应曲线如图2-14和图2-15所示。返回五、子系统子系统类似于编程语言中的子函数。建立子系统有两种方法:在模型中新建子系统和在已有的子系统基础上建立。1.在已建立的模型中新建子系统[例2-5]打开例2-3建立的模型,将控制对象中的第一个连续环节中的反馈环建立为一个子系统。在模型窗口中,将控制对象中的第一个连续环节的反馈环用鼠标拖出的虚线框框住,选择Edit-Createsubsystem命令,则系统如图2-16所示。双击子系统,则会出现Subsystem模型窗口,如图2-17所示。可以看到子系统模型除了用鼠标框住的两个环节,还自动添加了一个输入模块In1和一个输出模块Out1。下一页返回五、子系统2.在已有的子系统基础上建立新子系统[例2-6]在例2-3的基础上建立新子系统,将例2-5中模型的控制对象中的内环控制环节整个作为一个子系统。在模型窗口中,将控制对象中的内环控制环节用鼠标拖出的虚线框框住,选择Edit-Createsubsystem命令,则系统如图2-18所示。双击子系统,则会出现Subsystem模型窗口,如图2-19所示。可以看到,该子系统模型是原来的内环控制。创建的子系统可以打开和修改,但不能再解除子系统设置。上一页返回六、条件执行子系统1.使能子系统[例2-7]建立一个用使能子系统(EnabledSubsystem)控制正弦信号为半波整流信号的模型。模型由正弦信号SineWave为输入信号源,示波器Scope为接收模块,使能子系统在Ports&Subsystem中选取EnabledSubsystem为控制模块,连接模块,将SineWave模块的输出作为EnabledSubsystem的控制信号,模型如图2-20所示。选择EnabledSubsystem模块,双击Enable,弹出参数设置对话框,如图2-21所示,然后在Stateswhenenabling下拉列表框中选择held选项:再双击out弹出参数设置对话框,如图2-22所示,然后在Outputwhendisabled下拉列表框中选择held选项。下一页返回六、条件执行子系统开始仿真,由于EnabledSubsystem的控制为正弦信号,大于零时执行输出,小于零时就停止,则示波器显示为半波整流信号,示波器的显示如图2-23所示。2.触发子系统[例2-8]建立一个用触发子系统(TriggeredSubsystem)控制正弦信号输出阶梯波形的模型。模型由正弦信号Sinewave为输入信号源,示波器Scope为接收模块,触发子系统TtiggeredSubsystem为控制模块,选择Sources模块库中的PulseGenerator模块为控制信号。连接模块,将PulseGenerator模块的输出作为TriggeredSubsystem的控制信号,PulseGenerator的Period设置为4s,模型如图2-24所示。上一页下一页返回六、条件执行子系统开始仿真,系统输入如图2-25所示。由于TriggeredSubsystem的控制为PulseGenerator模块的输出示波器输出如图2-26所示。3.使能触发子系统使能触发子系统(EnabledandTriggeredSubsystem)就是触发子系统和使能子系统的组合,含有触发信号和使能信号两个控制信号输入端,触发事件发生后,Simulink检查使能信号是否大于0,大于0就开始执行。上一页返回七、子系统的封装1.封装子系统的步骤(1)选中子系统双击打开,给需要进行赋值的参数指定一个变量名。(2)选择Edit-Masksubsystem命令,出现封装对话框。(3)在封装对话框中的设置参数,主要有Icon&Ports、Parameters、Initialization和Documentation共4个选项卡。2.四个选项卡1)Icon&Ports选项卡Icon&Ports选项卡用于设定封装模块的名字和外观,如图2-27所示。下一页返回七、子系统的封装(1)IconDrawingcommands选项区域:用来建立用户化的图标,可以在图标中显示文本、图像、图形或传递函数等。在IconDrawingcommands选项区域中的命令如图2-27中Examplesofdrawingcommands选项区域中的Command下拉列表框所示,包括plot、lisp、text、portlabel、image、patch、color、droots、dploy和fprintf。(2)Options选项区域:用于设置封装模块的外观。2)Parameters选项卡Parameters选项卡用于输入变量名称和相应的提示,如图2-28所示。上一页下一页返回七、子系统的封装(1)Add、Delete、Moveup和Movedown按钮:用于添加、删除、上移和下移输入变量。(2)Dialogparameters选项区域。Prompt:输入变量的含义,其内容会显示在输入提示中。Variable:输入变量的名称。TyPe:给用户提供设计编辑区的选择。下拉列表中edit表示提供一个编辑框;checkbox表示提供一个复选框;popup表示提供一个弹出式菜单。Evaluate:用于配合Type的不同选项提供不同的变量值,有Evaluate和Literal两个选项,其含义见表2-5。上一页下一页返回七、子系统的封装(3)Optionsforselectedparameter选项区域。Pops:当Type下拉列表框中选择Popup选项时,用于输入下拉菜单项。Callback:用于输入阳1调函数。3)Initialization选项卡Initialization选项卡用于初始化封装子系统。4)Documentation选项卡Documentation选项卡用于编写与该封装模块对应的Help和说明文字,分别有Masktype、MaskDescription和Maskhelp栏。(1)Masktype栏:用于设置模块显示的封装类型。(2)MaskDescription栏:用于输入描述文本。(3)Maskhelp栏:用于输入帮助文本。上一页下一页返回七、子系统的封装3.按钮设置参数设置对话框中的Apply按钮用于将修改的设置应用于封装模块;Unmask按钮用于将封装撤销,则双击该模块就不会出现定制的对话框。[例2-9]创建一个二阶系统,并将子系统进行封装。创建一个二阶闭环系统并封装成子系统,将阻尼系数zeta和无阻尼频率wn作为输入参数。(1)创建模型,阻尼系数用变量zeta表示,无阻尼频率用变量wn表示,如图2-29所示。(2)用虚线框住反馈环,选择Edit-CreateSubsystem命令产生子系统,如图2-30所示。(3)封装子系统,选择Edit-Masksubsystem命令,出现封装对话框,将zeta和wn作为输入参数。上一页下一页返回七、子系统的封装在Icon&Ports选项卡中设置的IconDrawingcommand、选项区域中写文字并画曲线,命令如下:在Parameters选项卡中,单击Add国按钮添加两个输入参数,设置Prompt分别为“阻尼系数”和“无阻尼振荡频率”,并设置Type栏分别为popup和edit,对应的variable为zeta和wn,设置Popups为“00.30.50.70712",如图2-31所示。上一页下一页返回七、子系统的封装在Initialization选项卡中初始化输入参数,如图2-32所示。在Documentation选项卡中输入提示和帮助信息,如图2-33所示。单击OK按钮,完成参数设置,然后双击该封装子系统,则出现图2-34所示的封装子系统,双击该子系统出现图2-35所示的输入参数对话框,在对话框中输入阻尼系数zeta和无阻尼振荡频率wn的值,再不需要为子系统中的每个模块分别打开参数设置对话框了。上一页返回八、用MATLAB命令创建和运行Simulink模型1.用MATLAB命令创建Simttlink模型1)Simulink模型与文件(1)创建新模型:newsystem命令用于在MATLAB的工作空间创建一个空白的Simulink模型。语法:newsystem(‘newmodel’,option)%创建新模型说明:newmodel为模型名;option选项可以是Library和Model两种,也可以省略,默认为Model。下一页返回八、用MATLAB命令创建和运行Simulink模型(2)打开模型:opensystem命令用于打开逻辑模型,在Simulink模型窗口显示该模型。语法:opensystem(‘model’)%打开模型说明:model为模型名。(3)保存模型:savesystem命令用于保存模型为模型文件,打展名为.mdl。语法:savesystem(‘model’,文件名)%保存模型说明:model为模型名可省略,如果不给出模型名,则自动保存当前的模型;文件名指保存的文件名,是字符串,也可省略,如果不省略则保存为新文件。上一页下一页返回八、用MATLAB命令创建和运行Simulink模型2.添加模块和信号线1)添加模块使用:addblock命令在打开的模型窗口中添加新模块。语法:addblock(`源模块名’,‘目标模块名’,‘属性名1',`属性值1',`属性名2',属性值2,…)说明:“源模块名”为一个已知的库模块名,或在其他模型窗口中定义的模块名,Simulin自带的模块为内在模块,例如正弦信号模块为“built-in/SineWave";"目标模块名”为在模型窗口中使用的模块名。上一页下一页返回八、用MATLAB命令创建和运行Simulink模型2)添加信号线模块需要用信号线连接起来,添加信号线使用:addline命令。语法:addline(‘模块名’,‘起始模块名/输出端口号’,‘终止模块名/输入端口号’)说明:“模块名”为在模型窗口中的模块名;m是列数为2的矩阵,每列给出一个转折点坐标。3)删除模块例如,删除示波器模块使用如下命令:deleteblock(‘文件名/Scope’)4)删除信号线deleteline(‘模块名’,‘起始模块名/输出端口号’,‘终止模块名/输入端口号’)上一页下一页返回八、用MATLAB命令创建和运行Simulink模型[例2-10]用MATLAB命令添加四个模块连接成一个二阶系统模型。上一页下一页返回八、用MATLAB命令创建和运行Simulink模型程序分析:position为位置属性,模块名为mymodel,则出现图2-36(a)所示的模型,经过调整之后的模型如图2-36(b)所示。3.用MATLAB命令运行Simulink模块使用sim命令来完成,在命令窗口就可以方便地对模型分析和仿真。上一页下一页返回八、用MATLAB命令创建和运行Simulink模型说明:model为模型名;timespan是仿真时间区间,可以是[t0,tf]表示起始时间和终止时间,也可以是[],利用模型对话框设置时间,如果是标量则指终止仿真时间;options参数为模型控制参数;ut为外部输入向量。t为时间列向量;x为状态变量构成的矩阵;y为输出信号构成的矩阵,每列对应一路输出信号。timespan、options和ut参数都可省略。[例2-11]运行例2-10建立的二阶系统的阶跃响应,如图2-37所示。上一页下一页返回八、用MATLAB命令创建和运行Simulink模型[例2-12]在Simulink中建立如下系统,保存为control.mdl文件,如图2-38所示。通过m文件,运行得到阶跃响应,如图2-39所示。上一页返回图2-1正弦模块参数设置对话框返回图2-2阶跃信号源参数设置对话框返回图2-3传递函数模块参数设置对话框返回图2-4二阶系统结构图返回图2-5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年政府采购评审专家考试真题含答案
- 社会实践:了解社会知识小学主题班会课件
- 仪器仪表业产品研发与生产效率提升策略
- 城镇道路桥梁设施建设施工方案及技术措施
- 多旋翼无人机操控理论考试题库有完整答案
- 儿科辐射泄漏应急救援预案演练脚本
- 样品标定系统安装调试施工方案及技术措施
- 传递友善力量,创建最美校园,小学主题班会课件
- 2025浙江宁波市北仑区万戈融资担保有限公司招聘人员及笔试历年参考题库附带答案详解
- 2025济钢集团有限公司社会招聘笔试历年参考题库附带答案详解
- (高清版)DZT 0291-2015 饰面石材矿产地质勘查规范
- 高一年级第二学期期末考试化学试题与答案解析(共三套)
- 脑积水术后病人的护理查房课件
- 控制电机与特种电机 课后习题及其答案
- 状元大考卷五年级下册数学人教版
- 赛瓦特机组使用说明书
- (3.1)-1.1《中药养颜秘籍》导读
- 护士临床“三基”实践指南测试题集
- GB/T 10116-1988仲钨酸铵
- 中华人民共和国教师法
- 数的起源与发展
评论
0/150
提交评论