Simulink.Variant クラス
名前空間: Simulink
バリアント選択を制御する条件を指定
説明
バリアント ブロックを含むモデルでは、各バリアント選択肢をバリアント制御に関連付ける必要があります。シミュレーション時、すべてのバリアント選択肢のバリアント制御が Simulink® で評価され、true
と評価されたバリアント制御に対応する選択肢がアクティブになります。
バリアント制御は、A == 1
や A==1 && B == 2
のように、boolean の条件式の形式で指定できます。これらの式のバリアント制御変数 A
および B
は、MATLAB® 変数、Simulink.Parameter
オブジェクト、または Simulink.VariantControl
オブジェクトのいずれかにできます。詳細については、Switch Between Choices Using Condition Expressions in Variant Blocksを参照してください。
boolean のバリアント条件式を表現するには、Simulink.VariantExpression
クラスのオブジェクトを作成します。ベース ワークスペースまたはデータ ディクショナリでオブジェクトを定義し、そのオブジェクトを選択肢のバリアント制御としてバリアント ブロックで使用できます。Simulink.VariantExpression
オブジェクトを使用すると、一般的なバリアント条件をモデル間で再利用でき、バリアント条件式の可読性が向上します。
次の例では、Variant Source ブロックで Simulink.VariantExpression
オブジェクトをバリアント制御として使用しています。
v_EngType_Big = Simulink.VariantExpression('V == 1'); v_EngType_Small = Simulink.VariantExpression('V == 2');
メモ
マスクまたはモデル ワークスペースで
Simulink.VariantExpression
オブジェクトを使用してバリアント制御を定義することはサポートされていません。バリアント制御変数の保存場所の詳細については、Storage Locations for Variant Control Variables (Operands) in Variant Blocksを参照してください。構造体内で
Simulink.VariantExpression
オブジェクトを使用することはサポートされていません。