Matlab_Simulink基本模块操作ppt课件_第1页
Matlab_Simulink基本模块操作ppt课件_第2页
Matlab_Simulink基本模块操作ppt课件_第3页
Matlab_Simulink基本模块操作ppt课件_第4页
Matlab_Simulink基本模块操作ppt课件_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

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

文档简介

Simulink模块操作,2.1模块操作2.2改变模块外观2.3设置模块参数2.4标注方块图2.5模块属性对话框2.6显示模块输出2.7控制和显示模块的执行顺序2.8查表编辑器2.9鼠标和键盘操作概述,2.1模块操作2.1.1Simulink模块类型用户在创建模型时必须知道,Simulink把模块分为两种类型:非虚拟模块和虚拟模块。非虚拟模块在仿真过程中起作用,如果用户在模型中添加或删除了一个非虚拟模块,那么Simulink会改变模型的动作方式;相比而言,虚拟模块在仿真过程中不起作用,它只是帮助以图形方式管理模型。此外,有些Simulink模块在某些条件下是虚拟模块,而在其他条件下则是非虚拟模块,这样的模块称为条件虚拟模块。表2-1列出了Simulink中的虚拟模块和条件虚拟模块。,在建立Simulink模型时,用户可以从Simulink模块库(或其他库)或已有的模型窗口中将模块拷贝到新的模型窗口,拖动到目标模型窗口中的模块可以利用鼠标或键盘上的up、down、left或right键移动到新的位置。在拷贝模块时,新模块会继承源模块的所有参数值。如果要把模块从一个窗口移动到另一个窗口,则在选择模块的同时要按下Shift键。Simulink会为每个被拷贝模块分配名称,如果这个模块是模型中此种模块类型的第一个模块,那么模块名称会与源窗口中的模块名称相同。例如,如果用户从MathOperations模块库中向用户模型窗口中拷贝Gain模块,那么这个新模块的名称是Gain;如果模型中已经包含了一个名称为Gain的模块,那么Simulink会在模块名称后添加一个序列号(如Gain1,Gain2)。当然,用户也可以为模块重新命名。,2.1.2自动连接模块Simulink方块图中使用线表示模型中各模块之间信号的传送路径,用户可以用鼠标从模块的输出端口到另一模块的输入端口绘制连线,也可以由Simulink自动连接模块。如果要Simulink自动连接模块,可先用鼠标选择模块,然后按下Ctrl键,再用鼠标单击目标模块,则Simulink会自动把源模块的输出端口与目标模块的输入端口相连。如果需要,Simulink还会绕过某些干扰连接的模块,如图2-1所示。,图2-1,图2-2,如果要把一组源模块与一个目标模块连接,则可以先选择这组源模块,然后按下Ctrl键,再用鼠标单击目标模块,如图2-3所示。,图2-3,图2-4,2.1.3手动连接模块如果要手动连接模块,可先把鼠标光标放置在源模块的输出端口,不必精确地定位光标位置,光标的形状会变为十字形,然后按下鼠标按钮,拖动光标指针到目标模块的输入端口,如图2-5所示。当释放鼠标时,Simulink会用带箭头的连线替代端口符号,箭头的方向表示了信号流的方向。,图2-5,用户也可以在模型中绘制分支线,即从已连接的线上分出支线,携带相同的信号至模块的输入端口,利用分支线可以把一个信号传递到多个模块。首先用鼠标选择需要分支的线,按下Ctrl键,同时在分支线的起始位置单击鼠标,拖动鼠标指针到目标模块的输入端口,然后释放Ctrl键和鼠标按钮,Simulink会在分支点和模块之间建立连接,如图2-6所示。,图2-6,用户也可以在连线上插入模块,但插入的模块只能有一个输入端口和一个输出端口。首先用鼠标选择要插入的模块,然后拖动模块到连线上,释放鼠标按钮并把模块放置到线上,Simulink会在连线上自动插入模块,如图2-7所示。,图2-7,2.2改变模块外观2.2.1改变模块方向缺省时,Simulink模型中的信号从左向右在模块中传递,通常输入端口在左边,输出端口在右边。用户可以选择模型窗口中Format菜单的下列命令改变模块的方向:FlipBlock命令:把模块旋转180;RotateBlock命令:顺时针旋转模块90。图2-8说明了对模块使用RotateBlock命令和FlipBlock命令后,Simulink是如何改变模块端口的顺序的。,图2-8,2.2.2改变模块名称模型中所有模块的名称都必须是唯一的,而且至少包含一个字符。缺省时,若模块端口位于模块左右两侧,则模块名称位于模块下方;若模块输入端口位于模块顶部,输出端口位于模块底部,则模块名称位于模块左侧,如图2-9所示。,图2-9,1改变模块名称用户可以用鼠标双击模块名称,在激活的文本框内输入新的名称,即可更改模块的名称。当在模型中的任一位置单击鼠标或执行其他操作时,Simulink会停止模块名称的编辑。如果把模块的名称改变为模型中已有模块的名称,或者名称中不含有任何字符,那么Simulink会显示一个错误消息。,2改变模块名称的字体如果用户想要改变模块名称的字体,可以先选中模块,然后选择模型窗口中Format菜单下的Font命令,从弹出的SetFont对话框中选择一种字体,这个过程也会改变模块图标上的文本字体。,3改变模块名称的位置如果用户想要改变模块名称的位置,可以利用如下两种方式:把模块名称拖动到模块对面的位置,也就是位于模块下方的名称拖动到模块上方,位于模块左侧的名称拖动到模块右侧。这是因为,Simulink不允许用户任意安排模块名称的位置,若用户强行将名称拖动到其他位置,Simulink会忽视用户操作。选择Format菜单下的FlipName命令,这个命令可将模块名称的位置改变到模块对面位置。,4是否显示模块名称如果用户想要隐藏模块的名称,可先选中这个模块,然后选择Format菜单下的HideName命令,即可隐藏该名称。之后,若再选中这个模块,该命令将变为ShowName,选择这个命令后,会显示被隐藏的模块名称。,5显示模块阴影用户可以为模型中的模块添加阴影,以使整个模型的外观更漂亮一些。选择Format菜单下的ShowDropShadow命令,可以为选中的模块添加阴影,阴影的颜色将与模块的前景色相同。之后,再次选中这个模块,该命令将改变为HideDropShadow,选择这个命令,则会取消模块的阴影。图2-10是添加阴影后的模型图。,图2-10,2.2.3指定方块图颜色Simulink允许用户在方块图中指定任何模块或标注的前景色和背景色,也可以指定方块图的背景色。若要设置方块图的背景色,可选择Simulink模型窗口中Format菜单下的Screencolor命令;若要设置模块或标注的背景色,可首先选择这些模块或标注,然后选择Simulink模型窗口中Format菜单下的Backgroundcolor命令;若要设置模块或标注的前景色,可首先选择这些模块或标注,然后选择Simulink模型窗口中Format菜单下的Foregroundcolor命令。不管选择了哪些命令,Simulink都会显示一个颜色选择菜单,从这个菜单中选择希望的颜色,Simulink就会按照选择的颜色更改前景色或背景色。,图2-11,如果选择了Custom命令,则Simulink会显示ChooseCustomColor对话框,如图2-11所示,用户可以在调色板中选择自定义颜色。用户也可以在MATLAB命令行或M文件中利用set_param命令中的参数来设置方块图的背景色或模块的前景色和背景色。表2-2给出了set_param命令中用来控制模块方块图的参数。,用户可以把这些参数设置为如下任一值:black,white,red,green,blue,cyan,magenta,yellow,gray,lightBlue,orange,darkGreen。r,g,b:这里,r、g和b是颜色分量中的红、绿和蓝分量,范围为0.01.0。例如,下面的命令把当前选择的系统或子系统的背景色设置为淡绿色:set_param(gcs,ScreenColor,0.3,0.9,0.5)用户也可以选择Format菜单下的ShowDropShadow命令为所选模块添加阴影。,2.3设置模块参数所有的Simulink模块都有一组共同的参数,称为模块属性,用户可以在模块属性对话框内设置这些属性。此外,许多Simulink模块都有一个或多个模块专用参数,通过设置这些参数,用户可以自定义这些模块的行为,以满足用户的特定要求。,2.3.1设置模块特定参数带有特定参数的模块都有一个模块参数对话框,用户可以在对话框内查看和设置这些参数。用户可以利用如下几种方式打开模块参数对话框:在模型窗口中选择模块,然后选择模型窗口中Edit菜单下的BLOCKparameters命令。这里BLOCK是模块名称,对于每个模块会有所不同。在模型窗口中选择模块,用鼠标右键单击模块,从模块的上下文菜单中选择BLOCKparameters命令。用鼠标双击模型或模块库窗口中的模块图标,打开模块参数对话框。,对于每个模块,模块的参数对话框也会有所不同,用户可以用任何MATLAB常值、变量或表达式作为参数对话框中的参数值。例如,图2-12(a)在模型窗口中选择的是SignalGenerator模块,利用Edit菜单下的SignalGeneratorparameters命令打开模块参数对话框,或者双击该模块打开模块参数对话框;图2-12(b)是该模块的参数对话框。由于SignalGenerator模块是信号发生器模块,因此用户可以在参数对话框内利用Waveform参数选择不同的信号波形,并设置相应波形的参数值。,图2-12,(a),(b),2.3.2来自工作区的模块参数用户可以在模块参数对话框内直接设置模块的参数值。模块的参数可以是数值,也可以是来自MATLAB工作区的变量。当有若干个模块的参数依赖于同一个变量时,这个功能就非常有用。以图2-13为例,如果a是定义在MATLAB工作区的变量,那么下列变量定义可以作为Simulink模块的有效参数:a、a2+5和exp(-a)。,图2-13,图2-13中的两个Gain模块分别用变量a和sqrt(a)作为模块的增益值,这样在MATLAB工作区中为变量a赋值后,定义的参数值可以传递到模块参数中。模块的参数也可以是数学表达式,MATLAB在开始仿真模型之前会计算参数表达式的值。,2.4标注方块图用户可以在Simulink模型窗口中为模型添加文本标注。文本标注可以添加在模型窗口中的任一空白位置,作为模型功能的简短说明。2.4.1编辑标注为了创建模型标注,在模型窗口中的任一空白位置处单击鼠标左键,此时会出现一个文本编辑框,光标也会变成插入状态,这时就可以在文本框内键入需要的标注内容,如图2-14所示。,图2-14,若要把标注移动到其他位置,可用鼠标拖动标注到新位置;若要编辑标注,可用鼠标左键单击标注,此时标注内的文本变为编辑状态,用户可以重新编辑文本信息;若要删除标注,可按下Shift键,同时选择标注,然后按Delete键或Backspace键。若要改变标注的字体,可首先选择标注内需要改变字体的文本,然后选择Format菜单下的Font命令,从弹出的SetFont对话框内设置文本的字体和大小。若要改变标注内文本的对齐方式,可首先选择标注,然后选择模型窗口中Format菜单下的TextAlignment命令,在该命令的子菜单中选择一种对齐方式,例如,left(左对齐)、center(中间对齐)或right(右对齐)。,2.4.2在标注中使用TeX格式命令用户也可以利用TeX格式命令编辑模型方块图中的标签,并在标签中编辑数学符号、希腊字母和其他符号,从而更明确地说明方块图的作用。若要在标注内使用TeX命令,可首先在模型窗口中的任一位置处单击鼠标左键以建立标注文本框,然后选择模型窗口中Format菜单下的EnableTexcommands命令,用TeX命令输入或编辑文本标注,如图2-15(a)所示;然后在标注文本框外的任一位置处单击鼠标,或者按下Esc键,Simulink便会显示定义了格式的文本,如图2-15(b)所示。,图2-15,图2-16,2.5模块属性对话框模块属性对话框允许用户设置模块的属性。若要显示该对话框,可选择模型窗口中Edit菜单下的BlockProperties命令,打开的模块属性对话框如图2-17所示。模块属性对话框包含三个选项页:General、BlockAnnotation和Callbacks选项页。,图2-17,1General选项页的模块属性General选项页内有3个参数,用户可以在这些参数的文本框内输入描述模块的文本说明,这些说明会与模块一起保存在模型中。Description:通常用来以文本方式简要描述模块的作用。Priority:模型中某个模块相对于其他模块的执行优先级。Tag:指定到模块中Tag参数的文本,它同模块一起保存在模型中,用户可以利用这个参数为模块创建用户的模块特定标签。,2BlockAnnotation选项页的模块属性BlockAnnotation选项页是模块的标注面板,如图2-18所示,用户可以利用这个选项页的属性值在模块标注内显示被选模块的模块参数,标注会出现在模块图标的下方。,图2-18,图2-19,用户也可以在标注面板右侧的文本框内编程指定模块的标注,这需要使用模块的AttributesFormatString参数,该参数可以使Simulink在模块下方显示模块中所选择的参数值,这个参数也就是指定模块属性(参数)的字符串。附录A“模型和模块参数”列出了模块中可以包含的参数,用户利用set_param命令就可以把这些参数设置为希望的属性格式字符串。属性格式字符串可以是嵌入参数名称的任意文本字符串,嵌入的参数名称放置在%内,例如,%。Simulink会在模块图标的下方显示属性格式字符串,并用相应的参数值替换每个参数名称。若要分行显示每个参数,可以使用字符n。例如,在标注文本编辑框内为Gain模块指定如下的属性格式字符串:pri=%ngain=%,图2-20,3.Callbacks选项页的模块属性Callbacks选项页允许用户创建或编辑模块执行的回调函数。Callbacks选项页如图2-21所示。,图2-21,首先在选项面板的左侧列表中选择回调函数,然后在右侧的文本框内输入执行回调的MATLAB命令,单击OK或Append按钮保存设置,Simulink会向被保存回调的名称上追加一个星号,以表示它是模块执行的回调函数。模块的回调函数参看附录B,Simulink6.6新增了模块的回调函数,增加的回调函数如下:ClipboardFcn、DeleteChildFcn、ErrorFcn、PreCopyFcn、PreDeleteFcn。为了在程序中创建回调函数,可以使用set_param命令在MATLAB表达式中执行对应于回调函数的模块参数。,2.6显示模块输出2.6.1设置输出提示用户若要打开或关闭模块端口的输出提示,可以选择模型编辑器窗口View菜单下的PortValues命令,如图2-22所示。该命令的下拉菜单中有四个选项:ShowNone:关闭端口的输出提示。ShowWhenHovering:当鼠标移到模块上时显示端口的输出数据,当鼠标移出模块时关闭输出数据。ToggleWhenClicked:当鼠标单击选中模块时显示端口的输出数据,当鼠标再次单击该模块时关闭端口的输出提示。选择该选项,用户可以依次单击模型中的多个模块,因此可以同时观察到多个模块的输出数据。,图2-22,图2-23是选择ShowWhenHovering命令后的模型输出,当鼠标滑过enginegasdynamics子系统模块时,模型窗口会同时显示该模块三个输出端口的数据,若鼠标一直停留在该模块上,则端口数据会依据设置的显示频率进行刷新。用户也可以通过选择工具栏中的“ShowWhenHovering”命令启动或关闭模块输出提示。,图2-23,2.6.2模块输出提示选项若要设置模块输出提示的其他选项,可以选择模型窗口中View菜单下PortValues子菜单下的Options命令,打开BlockOutputDisplayOptions对话框,如图2-24所示。,图2-24,在BlockOutputDisplayOptions对话框中,用户可以在Displayoptions选项区内设置所要显示输出提示的字体大小及显示提示的刷新频率。若要增大所显示的输出字符,可向右滑动Fontsize滑动条;若要增大显示的刷新频率,可向右滑动Refreshinterval滑动条。在Displayvalues选项区内,用户可以通过单击ShowNone、ShowWhenHovering、ToggleWhenClicked单选按钮来选择不同的显示方式。在DisplayFormat选项区内,用户可以选择模块显示数据的格式。,2.7控制和显示模块的执行顺序2.7.1指定模块优先级1编程指定模块优先级若要通过编程指定模块优先级,可以使用如下命令:set_param(b,Priority,n)这里,b是模块路径;n是任一有效整数(负值和0也是有效的优先级数值),数值越小,优先级越高,也就是说,数值为2的优先级高于数值为3的优先级。关于set_param命令的详细内容,参看本书第8.1节。,2交互指定模块优先级若要交互指定模块优先级,可打开模块属性对话框,在对话框的Priority文本框内输入该模块的优先级。只有当模块的优先级与Simulink的模块排序法则相一致时,Simulink才会认同模块的优先级;如果指定的优先级与模块的排序法则不一致,则Simulink会忽略指定的优先级,并将模块放置在模块执行顺序中的适当位置。如果Simulink不能认同模块的优先级,则会显示BlockPriorityViolation诊断消息。,2.7.2显示模块执行顺序若要在仿真过程中显示模块的执行顺序,可在Simulink模型窗口的Format菜单下选择BlockDisplays子菜单中的Sortedorder命令,这会使Simulink在模型方块图中每个模块的右上角显示一个数值,这个数值表示了模块相应于模型中其他模块的执行顺序。例如,1表示在每个时间步内第一个执行的模块;2表示在每个时间步内第二个执行的模块,依此类推。图2-25显示的是TeXnotation模型中各模块的执行顺序。,图2-25,2.8查表编辑器2.8.1编辑查询表数值从Simulink模型窗口中的Tools菜单下选择Look-UpTableEditor命令,可打开LUT编辑器。图2-26是在fuelsys模型中打开的LUT编辑器,fuelsys模型是Simulink自带的示例模型。LUT编辑器包含两个面板:左面的面板是LUT模块浏览器,用户可以利用它浏览并选择任何被打开模型的LUT模块;右面的面板允许用户编辑被选模块的查询表。,图2-26,LUT编辑器左上角的Models下拉列表中列出了当前MATLAB会话期中打开的所有模型的名称,如图2-27所示。若要浏览任何被打开模型的LUT查表模块,可在列表中选择模型的名称,则被选模型的LUT模块将以树状结构显示在Models列表下的Tableblocks区域内。单击任何列表区域内的任何LUT模块,该模块的查询表会显示在右侧面板中,用户可以编辑这个表。,图2-27,如果用户希望浏览某个模型的LUT模块,但该模型未被打开,则可以选择LUT编辑器中File菜单下的OpenModel命令打开该模型,或者单击Models下拉列表旁的“OpenModel”按钮打开该模型。用户可以在LUT编辑器右侧的Viewing“2-DLookupTable”blockdataT(:,:):区域编辑被选模块的查询表。若查询表的维数是一维或二维的,那么该区域显示完整的查询表数据;若查询表的维数超过二维,那么该区域只显示一组二维数据。若要改变某个数值,可双击这个值,LUT编辑器会用包含该数值的编辑框替换这个值,编辑完数值后,按下Enter键或在区域外的任一位置处单击鼠标,确认改变。,若用户更改了表中的数据或设置,则LUT编辑器会在备份表中记录用户所做的改变;若要更新备份表,可选择LUT编辑器中File菜单下的UpdateBlockData命令;若要把LUT编辑器内的数据恢复为最初存储在模块中的数值,可选择File菜单下的ReloadBlockData命令,则Simulink会忽略用户对数据所做的修改,如图2-28所示。,图2-28,表数据编辑区域下方的DataTypes区域允许用户设置行数据或列数据的数据类型。Row列表框用来选择行数据的数据类型,Column列表框用来选择列数据的数据类型,Table列表框用来选择全表数据的数据类

温馨提示

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

评论

0/150

提交评论