变体内联组件
在单层中实现结构性变化
使用内联变体模块,您可以在单个模型中表示一个系统的所有设计备选方案。每个设计选择项都作为单个层中的一个变体选择项纳入模型中。这种模型有固定的通用结构和一组有限的可变组件,这些组件根据具体变体控制项而被激活或反激活。您可以自动或手动激活组件。
例如,假设您要仿真一个模型,以通过使用不同雨量传感器来控制汽车挡风玻璃雨刷的速度。您可以提供雨量传感器模型作为 Variant Source 模块的输入,然后根据您选择的变体控制项在传感器之间切换。有关详细信息,请参阅Introduction to Variant Controls。
您为内联变体模块生成的代码可以包含一个系统的所有变体选择项。您可以在代码编译前或在模型启动时在选择项之间切换,如Activate Variant During Different Stages of Simulation and Code Generation Workflow中所述。有关使用内联变体模块生成代码的信息,请参阅。
模块
Variant Source | Route among multiple inputs using variants |
Variant Sink | Route amongst multiple outputs using variants |
Manual Variant Source | 在输入端的多个变体选择项之间切换 |
Manual Variant Sink | 在输出端的多个变体选择项之间切换 |
类
Simulink.VariantControl | Create a variant control variable object (自 R2021a 起) |
Simulink.Parameter | 存储、共享和配置参数值 |
Simulink.Variant | 指定控制变体选择的条件 |
Simulink.VariantUtils | Utility methods to work with variant elements (自 R2023b 起) |
函数
enumeration | 类枚举成员和名称 |
对象
struct | 结构体数组 |
主题
自动选择变体源和目标信号
- Define and Configure Variant Sources and Sinks
Represent variant choices using Inline Variants. - Visualize Variant Implementations in a Single Layer
View the variant choices in a model containing Inline Variants. - Variant Control Modes in Variant Blocks
Learn how to control variant blocks. - Propagate Variant Conditions to Define Variant Regions with Variant Blocks
Determine active model components by propagating variant conditions using variant blocks. - Propagate Variant Conditions to Define Variant Regions Using Variant Source and Variant Sink Blocks
Propagate variant conditions from the Variant Source and Variant Sink blocks.
手动指定变体源和目标信号
- Provide Variation in Signal Source and Destination Using Manual Variant Source and Manual Variant Sink Blocks
This example shows how to use the inline variant blocks Manual Variant Source and Manual Variant Sink.
疑难解答
Transform Model to Variant System (Simulink Check)
Use the Model Transformer tool to transform a model into a variant system.