目录
参数和对话框窗格
初始化窗格
文档窗格
为了更加直观和清晰的分析仿真,会将多个元件实现的一个功能封装在一起,通过参数对话框窗格,可以使用参数、显示和动作选项板中的对话框控制设计封装对话框。如图所示:
参数和对话框窗格分为以下部分:
参数和对话框窗格
部分 | 部分描述 | 子部分 | 子部分描述 |
---|---|---|---|
控件 | 控件是封装对话框中用户可与之交互以添加或处理数据的元素。 | 参数 | 参数是参与仿真的用户输入。参数选项板具有一组参数对话框控件,可以将它们添加到封装对话框中。 |
显示 | 显示选项板上的控件允许您在封装对话框中将对话框控件分组,并显示文本和图像 | ||
操作 | “操作”控件允许您在封装对话框中执行一些操作。例如,可以点击封装对话框中的超链接或按钮。 | ||
对话框 | 也可以点击对话框控件或将其从选项板拖放到对话框以创建封装对话框。 | 不适用 | 不适用 |
属性编辑器 | 属性编辑器允许查看和设置参数、显示和动作控件的属性。 | 属性 | 定义所有对话框控件的基本信息,例如名称、值、提示和类型。 |
属性 | 定义封装对话框控件的解释方式。属性仅与参数相关。 | ||
对话框 | 定义对话框控件在封装对话框中的显示方式。 | ||
布局 | 定义对话框控件在封装对话框上的布局。 |
控件
控件部分被进一步划分为“参数”、“显示”,和“操作”部分。控件表列出了不同控件及其描述。
控件表
控件 | 描述 | |
---|---|---|
参数 | ||
编辑 | 允许通过在字段中键入来输入参数值。 可以将约束与Edit参数相关联。 | |
复选框 | 接受布尔值。 | |
弹出 | 允许从可能值列表中选择参数值。当选中计算复选框时,关联的变量会保存所选项的索引。请注意,索引从 1 开始,而不是从 0 开始。禁用计算时,关联的变量将保存所选项的字符串。 | |
组合框 | 允许从可能值列表中选择参数值。您也可以键入此列表中的值或不在此列表中的值。当选中计算复选框时,关联的变量会保存所选项的实际值。 可以将约束与“组合框”参数相关联。 | |
列表框 | 允许创建参数值列表。所有可能值的选项都显示在封装对话框中。可以从中选择多个值。 | |
单选按钮 | 允许从可能值列表中选择参数值。单选按钮的所有选项都显示在封装对话框中。 | |
滑块 | 允许滑动到由最小值和最大值定义的范围内的值。滑块参数可以接受数字或变量名称形式的输入。如果指定的变量是基础工作区或模型工作区变量,则可以通过滑块调整变量值。 可以使用轴刻度下拉菜单调整线性刻度或对数刻度中的值。还可以动态控制滑块范围。注意 为“滑块”指定的值将自动应用。 | |
刻度盘 | 允许拨动到由最小值和最大值定义的范围内的值。对话框参数可以接受数字或变量名称形式的输入。如果指定的变量是基础工作区或模型工作区变量,则可以通过对话框调整变量值。 可以使用轴刻度下拉菜单调整线性刻度或对数刻度中的值。还可以动态控制刻度盘范围。注意 为“刻度盘”指定的值将自动应用。 | |
微调框 | 允许在由最小值和最大值定义的范围内微调值。可以指定值的步长。 注意 为“微调框”指定的值将自动应用。 | |
数据类型字符串 | 允许指定封装参数的数据类型。可以将最小值、最大值和编辑参数与数据类型参数相关联。 | |
最小值 | 指定数据类型字符串参数的最小值。 | |
最大值 | 指定数据类型字符串参数的最大值。 | |
单位 | 允许为封装模块的输出值或输入值设置测量单位。参数单位可以接受任何测量单位作为输入。例如,表示角速度的 rad/sec,表示加速度的 meters/sec2,或表示距离的 km 或 m。 | |
自定义表 | 允许在封装对话框中添加表。可以在属性编辑器的值部分将值添加为嵌套元胞数组 | |
提升 | 允许有选择地将模块参数从底层模块提升到封装层。点击类型选项字段可打开提升的参数选择器对话框。在此对话框中,可以选择要提升的模块参数。点击确定将其关闭。 | |
全部提升 | 允许将所有底层模块参数提升到封装层。当提升所有参数时,提升操作将删除之前已提升的参数。 | |
容器 | ||
面板 | 对话框控件组的容器。可使用面板对对话框控件进行逻辑分组。 | |
组框 | 将封装对话框中的其他对话框控件和容器进行分组的容器。 | |
选项卡 | 将封装对话框中的对话框控件进行分组的选项卡。选项卡包含在选项卡容器中。一个选项卡容器可以有多个选项卡。 | |
表 | 以表格形式对编辑、复选框和弹出参数进行分组的容器。还可以对表容器中列出的内容进行搜索和排序。 | |
可折叠面板 | 将对话框控件进行分组的容器,与面板类似。可以选择展开或折叠可折叠面板对话框控件。 | |
显示 | ||
文本 | 封装对话框中显示的文本。 | |
图像 | 封装对话框中显示的图像。 | |
文本区域 | 在封装对话框中添加自定义文本或 MATLAB 代码。 | |
列表框控件 | 允许从可能值列表中选择值。您可以选择多个值(Ctrl + 点击)。 | |
树控件 | 允许从可能值的层次结构树中选择值。可以选择多个值(Ctrl + 点击)。 | |
查找表控件 | 允许可视化 N 维表和断点数据 | |
操作 | ||
超链接 | 封装对话框中显示的超链接文本。 | |
按钮 | 封装对话框上的按钮控件。可以对按钮编程使其执行特定操作。还可以在按钮控件上添加图像。 |
对话框
可以通过将对话框控件从控件部分拖到对话框,来构建对话框控件的层次结构。也可以点击控件部分的选项板,将所需控件添加到对话框中。可以在对话框中添加最多 32 级的层次结构。
对话框显示三个字段:类型、提示和名称。
-
类型字段显示对话框控件的类型,不能编辑。它还显示参数对话框控件的序列号。
-
提示字段显示对话框控件的提示文本。
-
名称字段将自动填充,用于唯一地标识对话框控件。可以选择在名称字段中添加不同的值(有效的 MATLAB 名称),但不能与内置参数名称相同。
在对话框上,参数控件以浅蓝色背景显示,而显示和动作控件以白色背景显示。可以在层次结构中移动对话框控件,可以复制和粘贴对话框控件,也可以删除某个节点。
属性编辑器
属性编辑器允许您查看和设置参数、显示及动作对话框控件的属性。下面显示了参数的属性编辑器:
可以设置参数、动作和显示对话框控件的以下属性。
属性编辑器
属性 | 描述 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
属性 | |||||||||||||
名称 | 唯一地标识封装对话框中的对话框控件。必须为所有对话框控件设置名称属性。 | ||||||||||||
值 | 参数对话框控件的值。值属性仅适用于参数对话框控件。 | ||||||||||||
提示 | 标识封装对话框中的参数的标签文本。提示属性适用于除面板和图像对话框控件之外的所有对话框控件。 | ||||||||||||
类型 | 对话框控件的类型。可以使用类型字段更改参数和容器类型。不能将任何容器类型更改为选项卡,反之亦然。 | ||||||||||||
展开 | 用于指定可折叠的面板对话框控件默认情况下是处于展开还是折叠状态。 | ||||||||||||
类型选项 | 类型选项属性允许设置特定的参数属性。类型选项属性适用于弹出、单选按钮、数据类型字符串和提升参数。 | ||||||||||||
文件路径 | 可以使用图像对话框控件向封装中添加图像。还可以在按钮对话框控件上显示图像。无论是哪种情况,都应在为这两个对话框控件启用的文件路径属性中提供图像的路径。对于按钮对话框控件,为提示属性指定一个空字符向量以便能够显示图像。 请注意,当您提供文件路径时,不要使用引号 (' ')。例如,如果要添加图像,请提供如下形式的文件路径: | ||||||||||||
文字换行 | 文字换行属性用于对长文本进行换行。文字换行属性仅适用于文本对话框控件。 | ||||||||||||
最大值和最小值 | 最大值和最小值属性允许您为微调框、滑块和对话框等控件指定一个范围。 | ||||||||||||
步长 | 允许指定值的步长。此属性仅适用于微调框对话框控件。 | ||||||||||||
工具提示 | 允许为选定的对话框控件类型指定工具提示。当将光标悬停在封装对话框中的对话框控件上时,将显示工具提示。可以为除组框、选项卡、可折叠面板和面板之外的所有对话框控件类型添加工具提示。 | ||||||||||||
刻度 | 允许将滑块和刻度盘对话框控件的调整刻度设置为linear 或 log。 | ||||||||||||
表参数 | 为查找表参数指定表数据。 | ||||||||||||
表单位 | 指定表数据的单位。 | ||||||||||||
表显示名称 | 指定查找表控件的显示名称。 | ||||||||||||
断点参数 | 为查找表控件指定断点参数。例如,{'torque','engine speed'} | ||||||||||||
断点单位 | 指定断点参数的单位。例如,{'Nm','rpm'} | ||||||||||||
数据设定 | 通过显式指定参数中的值或通过数据对象,可以为表和断点参数指定数据 | ||||||||||||
查找表对象 | 为表和断点参数值指定数据对象的名称 | ||||||||||||
属性 | |||||||||||||
计算 | Simulink 使用在封装对话框中键入的封装参数值,或者,它也可以计算指定的内容并将其用作计算结果。选择参数的计算选项可指定执行参数计算(默认值)。要禁止计算,请清除该选项。 | ||||||||||||
可调 | 默认情况下,可以在仿真期间更改封装参数值。要防止在仿真期间更改参数值,请清除可调选项。如果封装参数不支持参数调优,Simulink 将忽略封装参数的可调选项设置。仿真时,这些参数将在“封装”对话框中禁用。“可调”中可用的模式有:
也可以在快速重启模式下仿真模型时更改封装参数值。根据为可调属性和仿真模式指定的值,封装参数可以是只读的或读写的。
| ||||||||||||
只读 | 表示参数不能进行修改。 | ||||||||||||
隐藏 | 表示参数不能显示在封装对话框中。 | ||||||||||||
从不保存 | 表示参数值永远不会保存在模型文件中。 | ||||||||||||
约束 | 允许向所选参数添加约束。 | ||||||||||||
对话框 | |||||||||||||
启用 | 默认情况下启用处于选中状态。如果清除此选项,选定控件将无法进行编辑。封装模块的用户不能设置该参数的值。 | ||||||||||||
可见 | 仅当选择此选项时,选定控件才会出现在封装对话框中。 | ||||||||||||
回调 | 希望 Simulink 在用户向选定控件应用更改时执行的 MATLAB 代码。Simulink 使用临时工作区执行回调代码。 | ||||||||||||
布局 | |||||||||||||
项目位置 | 用于设置对话框控件要在当前行或新行中出现的位置。 | ||||||||||||
对齐提示 | 允许对齐封装对话框中的参数。除表以外的所有“显示”控件类型都支持此选项。 | ||||||||||||
提示位置 | 用于将对话框控件的提示位置设置为对话框控件的顶部或左侧。 不能为复选框、对话框、数据类型字符串、可折叠面板和单选按钮设置提示位置属性。 | ||||||||||||
方向 | 用于指定滑块和单选按钮的水平或垂直方向。 | ||||||||||||
水平拉伸 | 如果选择此选项,则当调整封装对话框的大小时,封装对话框上的控件将水平拉伸。默认情况下,水平拉伸复选框处于选中状态。 |
初始化窗格
初始化窗格允许添加用于初始化封装模块的 MATLAB 命令。如图所示:
当打开模型时,Simulink 会查找位于在模型顶层或开放式子系统中的可见封装模块。仅当这些可见的封装模块满足以下任一条件时,Simulink 才对这些模块执行初始化命令:
-
封装模块具有图标绘制命令。
注意:Simulink 不会初始化不包含图标绘制命令的封装模块,即使它们具有初始化命令也是如此。
-
封装模块属于一个库,并且已启用允许库模块修改其内容。
当执行以下操作时,模型中所有封装模块的初始化命令将会运行:
-
更新图
-
开始仿真
-
开始代码生成
-
点击对话框上的应用
当执行以下操作时,个别封装模块的初始化命令将会运行:
-
使用封装编辑器或 set_param 命令更改定义封装的任何封装参数,例如 MaskDisplay 和 MaskInitialization。
-
旋转或翻转封装模块(如果图标依赖于初始化命令)。
-
致使图标被绘制或重绘,并且图标绘制依赖于初始化代码。
-
通过使用模块对话框或 set_param 命令更改封装参数的值。
-
在同一模型中或不同模型之间复制封装模块。
初始化窗格包含此部分中描述的控件。
文档窗格
在文档窗格中,可以定义或修改封装模块的类型、描述和帮助文本。
类型
封装类型是显示在封装对话框中和模块的所有封装编辑器窗格上的模块分类。当 Simulink 显示封装对话框时,它会为封装类型添加后缀(mask)。要定义封装类型,请在类型字段中输入类型。文本可以包含任何有效的 MATLAB 字符,但不能包含换行符。
描述
封装描述是描述模块的用途或功能的简要帮助文本。默认情况下,封装描述显示在封装对话框中的封装类型下面。要定义封装描述,请在描述字段中输入描述。文本可以包含任何合法的 MATLAB 字符。Simulink 自动对较长的行进行换行。可以使用 Enter 键强制换行。
帮助
封装模块的 Online Help(联机帮助)提供类型和描述字段所提供信息之外的其他信息。当封装模块用户点击封装对话框上的帮助按钮时,将会在一个单独的窗口中显示此信息。要定义封装帮助,请在帮助字段中键入以下某一项:
-
URL 设定
-
web 或 eval 命令
-
文字或 HTML 文本
提供 URL. 如果帮助字段的第一行是一个 URL,Simulink 会将该 URL 传递给默认 Web 浏览器。该 URL 可以以 https:、www:、file:、ftp: 或 mailto: 开头。示例:
https://www.mathworks.com
file:///c:/mydir/helpdoc.html
一旦浏览器处于活动状态,MATLAB 和 Simulink 将无法再控制其操作。
提供一个 web
命令. 如果帮助字段的第一行是一个web命令,Simulink 会将该命令传递给 MATLAB,以便在 MATLAB Online Help 浏览器中显示指定的文件。示例:
web([docroot '/MyBlockDoc/' get_param(gcb,'MaskType') '.html'])
提供一个 eval
命令. 如果帮助字段的第一行是一个eval命令,Simulink 会将该命令传递给 MATLAB,以便执行指定的计算。示例:
eval('open My_Spec.doc')
提供文字或 HTML 文本. 如果帮助字段的第一行不是 URL,或者 web 或 eval 命令,Simulink 将在 MATLAB Online Help 浏览器中的某个标题下显示该文本,该标题是封装类型字段的值。文本可以包含任何合法的 MATLAB 字符、换行符和任何标准的 HTML 标记,包括像 img 这样显示图像的标记。
Simulink 首先将该文本复制到临时文件夹,然后使用 web 命令显示该文本。如果希望文本显示图像,则可以提供图像文件的 URL 路径,也可以将图像文件放在临时文件夹中。使用 tempdir 可查找 Simulink 用于系统的临时文件夹。