このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
Simulink.Variant クラス
パッケージ:金宝app
バリアント選択を制御する条件を指定
説明
バリアント制御と呼ばれる条件式を表すSimulink.Variant
クラスのオブジェクト。true
に評価されたときに特定のバリアント選択を有効にする論理式を、このオブジェクトによって指定できます。
バリアント制御は、MATLAB®変数またはSimulink.Parameter
オブジェクトを使用して指定される 1 つ以上のバリアント制御変数で構成されます。
Variant SubsystemブロックまたはModel Variantブロックで表現されるバリアント選択ごとにバリアント制御を指定します。特定のVariant SubsystemブロックまたはModel Variantブロックについて、同時に 1 つのバリアント制御のみがtrue
に評価されます。バリアント制御がtrue
に評価された場合、Simulink®はそのバリアント制御に対応するバリアント選択を有効にします。
構築
によってバリアント制御を作成します。variantControl
= Simulink.Variant(conditionExpression
)
プロパティ
例
MATLAB変数を使用したバリアント制御の作成
モデルのシミュレーションは行うが、コード生成は行わない場合は、MATLAB 変数を使用します。
スカラー リテラル値をもつ MATLAB 変数を作成します。
Fuel = 3; Emission = 1; Ratio = 3;
変数を使用して条件式を構築します。
Variant1 = Simulink.Variant('Fuel==1 && Emission==2'); Variant2 = Simulink.Variant('(Fuel==2 || Emission==1) && Ratio==2'); Variant3 = Simulink.Variant('Fuel==3 || Ratio==4');
Simulink.Parameter
オブジェクトを使用したバリアント制御の作成
コード生成用のプリプロセッサ条件を生成する場合は、Simulink.Parameter
オブジェクトを使用します。
スカラー リテラル値をもつバリアントSimulink.Parameter
オブジェクトを作成します。
Fuel = Simulink.Parameter(3); Emission = Simulink.Parameter(1); Ratio = Simulink.Parameter(3);
値が外部ヘッダー ファイルで指定されるように、これらのオブジェクトのカスタム ストレージ クラスをImportedDefine
に指定します。
カスタム ストレージ クラスのその他の有効な値は定义
とCompilerFlag
です。
メモ
アクティベーションのタイミングがstartup
のコードを生成する場合は、オブジェクトのサポートされるカスタム ストレージ クラスを指定します。startup
のアクティベーションのタイミングをサポートする組み込みおよびカスタムのストレージ クラスの詳細については、Storage Classes for Different Variant Activation Timesを参照してください。
Fuel.CoderInfo.StorageClass ='Custom'; Fuel.CoderInfo.CustomStorageClass ='ImportedDefine'; Emission.CoderInfo.StorageClass ='Custom'; Emission.CoderInfo.CustomStorageClass ='ImportedDefine'; Ratio.CoderInfo.StorageClass ='Custom'; Ratio.CoderInfo.CustomStorageClass ='ImportedDefine';
変数を使用して条件式を構築し、バリアント制御を作成します。
Variant1 = Simulink.Variant('Fuel==1 && Emission==2'); Variant2 = Simulink.Variant('(Fuel==2 || Emission==1) && Ratio==2'); Variant3 = Simulink.Variant('Fuel==3 || Ratio==4');