变体内联组件
在单层中实现结构性变化
使用内联变体模块,您可以在单个模型中表示一个系统的所有设计备选方案。每个设计选择项都作为单个层中的一个变体选择项纳入模型中。这种模型有固定的通用结构和一组有限的可变组件,这些组件根据具体变体控制项而被激活或反激活。您可以自动或手动激活组件。
例如,假设您要仿真一个模型,以通过使用不同雨量传感器来控制汽车挡风玻璃雨刷的速度。您可以提供雨量传感器模型作为 Variant Source 模块的输入,然后根据您选择的变体控制项在传感器之间切换。有关详细信息,请参阅Introduction to Variant Controls。
您为内联变体模块生成的代码可以包含一个系统的所有变体选择项。您可以在代码编译前或在模型启动时在选择项之间切换,如Activate Variant During Different Stages of Simulation and Code Generation Workflow中所述。有关使用内联变体模块生成代码的信息,请参阅Represent Subsystem and Variant Models in Generated Code (Embedded Coder)。
模块
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 |
Simulink.Parameter | 存储、共享和配置参数值 |
Simulink.Variant | 指定控制变体选择的条件 |
函数
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. - Variant Condition Propagation with Variant Sources and Sinks
Propagate variant conditions from the Variant Source and Variant Sink blocks. - Propagate Variant Conditions from Variant Source Blocks to Subsystem Blocks
Understand variant condition propagation to virtual and non-virtual subsystems. - Propagate Variant Conditions from Variant Source Blocks to Conditionally Executed Subsystems
Learn about variant condition propagation from Variant Source blocks to conditional subsystems. - Variant Elements Within Buses
Understand how to create variant bus, generate code, and variant condition propagation with bus. - Use Variant Source Block to Receive or Output Function-Call Signals for Simulation and Code Generation
This example shows how a Variant Source block receives function-call signals at its input ports and conditionally merges the signals at its output port.
手动指定变体源和目标信号
- Provide Variation at Source and Destination of a Signal 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.