可变子系统、变体模型
包含 Subsystem、Model 或 Subsystem Reference 模块作为变体选择项的模板子系统
- 库:
Simulink / Ports & Subsystems
HDL Coder / Ports & Subsystems
描述
Variant Subsystem 模块使您可以在一个单独的层次结构中包含组件的多个实现。
例如,假设您要仿真一个车辆模型,该车辆具有三种可能的引擎配置:4 缸、6 缸和 8 缸。您可以将每个引擎模型实现为 Variant Subsystem 中的一个单独子系统,然后根据您选择的Types of Variant Control Modes in Variant Blocks在子系统之间切换。有关详细信息,请参阅Introduction to Variant Controls。
注意
在仿真期间,只有一个 Variant Subsystem 实现处于活动状态。
Variant Subsystem 模块是一个模板,预配置为包含两个或更多模块以用作变体选择项。这些选择项表示系统的多种实现。在模型执行期间,只有一个子模块处于活动状态。处于活动状态的子模块称为活动变体。
Variant Subsystem 模块中的每个变体选择项都与一个变体控制项模式, Variant control mode变体控制项模式Variant control mode和一个变体激活时间, Variant activation time变体激活时间Variant activation time相关联。变体控制项模式确定如何选择活动变体。变体激活时间确定激活选择项的时间,并决定在生成的代码中是仅包括活动选择项,还是同时包括活动和非活动选择项。
Variant Subsystem 模块可以同时包含 Subsystem 模块、Model 模块或 Subsystem Reference 模块作为变体选择项。以 Model 模块作为选择项的 Variant Subsystem 模块称为 Variant Model 模块。有关这些模块的详细信息,请参阅创建子系统、Model和Subsystem Reference。
除了变体选择项之外,您还可以在 Variant Subsystem 模块中包含 Inport、Outport 和 Connection Port (Simscape) 模块。Variant Subsystem 模块内的各模块之间没有绘制的连接。Simulink® 在模型编译期间自动将活动变体连接到 Variant Subsystem 的 Inport 和 Outport 模块。表示变体选择项的模块的输入和输出端口数量可以不同于父级 Variant Subsystem 模块中的输入和输出端口数量。有关详细信息,请参阅在可变子系统中映射变体选择项的输入端口和输出端口。
使用 Variant Subsystem 模块,您可以:
将 Subsystem、Model 和 Subsystem Reference 模块作为变体选择项来混合使用。
对没有相似接口的组件进行建模。对于一个 Variant Subsystem 中的多个变体选择项,可以使用不同数量的输入端口和输出端口。
建立一个分层模块图,其中 Variant Subsystem 模块位于一个层中,变体选择项位于另一个层中。
将功能相关的模块放在一起。
降低模型的复杂度。
在模型编译期间,Simulink 会去除整个模型中的非活动模块,从而提高模型的运行时性能。
模块图标上变体标记的颜色和图标会根据模块上设置的变体激活时间、变体控制项模式和将条件传播到可变子系统之外参数的值而变化。有关详细信息,请参阅 变体标记。
端口
仿真期间,Simulink 将禁用 Variant Subsystem 模块中的非活动端口。
输入
输出
参数
模型示例
模块特性
扩展功能
版本历史记录
在 R2010b 中推出