Variant Manager是一个中央工具,允许您管理使用系统模型中的Variant块或状态流中的变体转换中使用Variant块建模的各种变体点®图表。
模型层次结构可以包含多个变体块,每个块具有许多变体选择,其组合对应于系统的特定配置。在变体选择之间切换并手动验证它们可能是复杂和错误的。
使用Variant Manager为型号创建预定义配置,并在任何配置下使用该模型。您可以通过模型层次结构的不同变体选项的组合创建配置。
使用Variant Manager,您可以:
定义,验证和可视化变体配置。
定义和验证模型的约束。
指定默认的活动配置。
将控制变量设置为整数,枚举值或金宝appSimulink.Parameter.
对象。
在不更新模型的情况下验证变体配置或模型。
减少模型以保留变体配置的子集。
分析变体配置。
有关分析Variant Manager的变体配置的信息,请参阅分析包含变体块的模型中的变体配置。有关从命令行分析变体配置的信息,请参阅金宝appsimulink.variantconfigurationAnalysis.
。
考虑模型变体管理。要打开Variant Manager,可以:
右键单击变体徽章并选择在Variant Manager中打开。
右键单击变体块,然后选择变体>在Variant Manager中打开。
例如,选择变体块变体子系统块,然后在变体子系统ToolStrip选择选项卡变体经理。
在里面造型Toolstrip的标签,打开设计部分,点击变体经理。
点击在Variant Manager中的打开块可在Variant块上使用块参数对话框。
这变体经理窗口分为三个窗格:
使用此窗格创建配置,定义控制变量,关联引用的模型配置,并定义约束。配置和相关数据存储在变型配置数据对象中。
添加变体配置后,键入variant配置对象的名称变体配置对象盒子。您可以使用下拉菜单从文件加载变体配置对象或刷新加载的变体配置对象。您可以从A中加载变体配置对象垫
文件或matlab脚本(.m
文件)。要将变体配置对象存储在模型中,全局工作空间并将其与模型相关联,请单击出口。将变体配置对象存储在您选择的文件夹中垫
-file或matlab脚本(.m
文件),单击另存为从下拉菜单出口按钮。
这配置标签分为上窗格和下窗。您可以使用上窗格添加,删除或复制变体配置。您还可以设置默认配置。设置要默认配置的配置时,验证或更新模型激活默认配置中指定的变体选项。
上窗格具有这些按钮来管理变体配置。
按钮 | 描述 |
---|---|
添加变体配置 | |
删除变体配置 | |
重复的变体配置 | |
设置/清除默认活动配置 |
添加了变体配置后,您可以使用下窗格配置选项卡以添加描述,控制变量和子模型配置。您可以添加控制变量,并使未添加变体配置,即使未添加变体配置,也可以将它们导出到全局工作区。较低窗格包含这些选项卡:
描述- 提供所选择的变体配置的描述。
控制变量- 添加,删除,复制或导入控制变量。从工作区切换数据类型和导入控制变量。显示,隐藏所选控制变量的使用。
按钮 | 描述 |
---|---|
添加控制变量 |
|
删除所选控制变量 |
|
创建所选控制变量的副本 |
|
切换控制变量的类型 控制变量可以是普通的matlab变量或a |
|
编辑 笔记 指定 |
|
从整个模型引用层次结构导入控制变量 笔记 从块中控制变量 |
|
显示使用所选控制变量 |
|
隐藏所选控制变量的使用 |
控制变量使用是按需计算的,在那里您可以选择在Variant Manager的模型层次结构表中显示或隐藏控制变量使用情况。
为此,请在Variant Manager窗口中右键单击所需的控制变量并选择显示使用或者隐藏用法。示例屏幕截图如图所示。
子模型配置- 定义引用模型的变型配置。
添加或删除引用的模型配置。
要刷新并激活配置的变体模型,请从列表中选择配置配置然后点击启用。如果点击启用按钮不选择任何配置,值为控制变量从全球工作区挑选。对于这种情况,控制变量在Variant Manager中定义的,除非设置了默认配置,否则除非设置默认配置,否则将覆盖全局工作区中的相应值。如果设置了默认变体配置,则应用相应的控制变量。
当您打开包含引用模型的父模型的Variant Manager(Subsodels)时,只验证父模型。仅在激活或展开时才能验证引用的模型(子模型)(点击+
)参考模型。
使用约束选项卡添加或删除模型级约束。类似于配置标签,这约束标签还包含上窗口和下窗。
上窗格显示约束的名称和条件,而下窗格显示描述。必须对模型中的所有变体配置满足约束的条件表达。
您可以可视化和探索模型的变体层次结构,并编辑变体块,变体选择和变体对象的属性模型层次结构窗格。此窗格显示名称那子模型配置那变体控制,以及相关的使适应用作变体控制的变体对象。
使用导航图标浏览层次结构。对手的控制模型层次结构窗格允许您执行以下操作:
刷新和验证层次结构。
仅显示变体块。
在可变使用情况下导航,活动选择,无效的选择和重写的变体选择。
在变体层次结构中有选择地显示块:
选择所有变种显示所有变体块。
选择标签模式显示变体块标签
模式和其他模型块。变体块表达
模式,其中包含块标签
还显示其层次结构中的模式。
选择表达式模式显示变体块表达
模式和其他模型块。变体块标签
模式,其中包含块表达
还显示其层次结构中的模式。
选择分层在模型中显示所有分层块(例如,子系统,模型块)。
选择SIM Codegen切换模式显示变体块SIM Codegen切换
模式。
导航变量使用,活动选择,无效的选择和覆盖选择:
可变用法- 选择使用所选控制变量的模型中的上一个/下一个行。
积极选择- 选择具有主动变体选择的模型中的上一个/下一个行。
无效的选择- 选择具有无效变体选择的模型中的上一个/下一个行。
模型层次结构显示在树中,每个块表示层次结构中的节点。层次结构显示活动,非活动,覆盖和无效的变体。您可以编辑引用的模型配置,变体控制和变体条件。展开节点以查看底层块。
笔记
无法在层次结构中查看受保护的参考模型。
层次结构表包括以下列:
名称- 模型或块的名称。
子模型配置- 引用模型使用的配置。你只能编辑子模型配置对于显示顶部模型引用的模型的行。
变体控制- 变体选择的变体控制参数。此列与变体块的参数对话框的变体控制列相同。您可以在层次结构上编辑此列以进行变体选项。
状况- 显示并允许您编辑条件金宝appsimulink.variant.
当它用作变体控制时的对象。您可以在变体层次结构上编辑此列以进行变体选项。
在层次结构表中,您可以右键单击块并从上下文菜单中使用以下选项之一,适当:
打开和突出显示块:从顶部模型显示所选块位置时,在模型中突出显示所选块。
开放式:从顶部模型显示所选型号位置的同时打开所选模型。仅当从层次结构表中选择模型时,此选项才可用。
打开块参数:打开所选块的“块参数”对话框。您可以选择修改参数值。
打开父块参数:打开所选块的父块的“块参数”对话框。您可以选择修改参数值。
设置为标签模式活动选择:设置所选选择变体子系统, 或者变体汇, 或者变体源块作为活动选择。此选项仅适用于变体子系统, 或者变体汇, 或者变体源标签模式下的块。
在模型层次结构部分中,每个块用图标表示。下表显示图标和相应的块名称。
图标 | 块名称 |
---|---|
模型块 |
|
内联变量块(变体源和变体汇) |
|
变体子系统堵塞 |
|
子系统堵塞 |
|
变体模型堵塞 |
|
子系统参考堵塞 |
|
金宝app®功能块 |
|
触发端口堵塞 |
|
州流程图表块 |
|
变体汇输出端口 |
|
变体源输入端口 |
|
变体子系统块在变体子系统之外传播条件选项选择。 |
|
变体子系统块变体激活时间调成 |
|
变体子系统块变体激活时间调成 |
|
变体子系统块变体激活时间调成 |
|
变体子系统块允许零主动变体控制和变体激活时间调成 |
|
变体子系统块允许零主动变体控制和变体激活时间调成 |
|
变体子系统块允许零主动变体控制和变体激活时间调成 |
|
变体子系统块 |
|
变体子系统块在变体子系统之外传播条件和变体激活时间调成 |
|
变体子系统块在变体子系统之外传播条件和变体激活时间调成 |
|
变体子系统块在变体子系统之外传播条件和变体激活时间调成 |
|
变体子系统块在变体子系统之外传播条件选项选择。还, |
|
内联变量块(变体源和变体汇) 和允许零主动变体控制选项选择。 |
|
内联变量块(变体源和变体汇) 和 |
|
内联变量块(变体源和变体汇) 和变体激活时间调成 |
|
内联变量块(变体源和变体汇) 和变体激活时间调成 |
|
内联变量块(变体源和变体汇) 和变体激活时间调成 |
|
内联变量块(变体源和变体汇) 和允许零主动变体控制和变体激活时间调成 |
|
内联变量块(变体源和变体汇) 和允许零主动变体控制和变体激活时间调成 |
|
内联变量块(变体源和变体汇) 和允许零主动变体控制和变体激活时间调成 |
|
初始化功能堵塞 |
|
活动侦听器块初始化功能堵塞 |
|
重置功能堵塞 |
|
活动侦听器块休息功能堵塞 |
|
终止功能堵塞 |
|
活动侦听器块终止功能堵塞 |
|
StateFlow Chart生成预处理器条件选项选择。 |
|
州流过渡视为变体转变选项选择。 |
LOG窗格显示层次结构中模型的控制变量源的信息和验证结果。
例如,如果将变型配置用于引用的模型,则引用的型号名称在行中显示,以及变体配置数据对象和变体配置的名称。窗格还显示在验证变体配置期间遇到的错误。