ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Variant Subsystem

複数のサブシステムをもつサブシステムを表す

ライブラリ

Ports & Subsystems

説明

Variant Subsystem を使用すると、サブシステムに対して複数の実装を行い、シミュレーション時には 1 つの実装のみをアクティブにすることができます。アクティブな実装と別の実装の切り替えは、モデルを変更しなくても、プログラムで行うことができます。

Variant Subsystem ブロックには複数の子サブシステムが含まれ、シミュレーション時は 1 つのサブシステムのみがアクティブになります。Variant Subsystem ブロックには Inport ブロック、Outport ブロック、および Connection Port ブロックを含めることができます。Variant Subsystem ブロック内には、接続が描かれません。各子サブシステムが、ベース ワークスペースに作成されたバリアント制御に関連付けられています。true として評価されるバリアント制御が、アクティブなバリアントを決定します。

サポートするデータ型

サブシステムの入力端子が受け入れるデータ型の詳細は、Inport ブロックを参照してください。サブシステムの出力端子から出力されるデータ型の詳細は、Outport ブロックを参照してください。

詳細は、Simulink ドキュメンテーションの「Simulink でサポートされているデータ型」を参照してください。

入力端子と出力端子のマッピング

Variant Subsystem 内のサブシステム ブロックはそれぞれ 1 つのバリアント コンフィギュレーションに対応します。次の条件を満たす場合、これらのサブシステム ブロックで親の Variant Subsystem とは異なる数の入力端子と出力端子を使用することができます。

  • バリアントの入力端子名が親の Variant Subsystem で使用される入力端子名のサブセットである。

  • バリアントの出力端子名が親の Variant Subsystem で使用される出力端子名のサブセットである。

Simulink® のシミュレーションの実行中は、Variant Subsystem ブロックの非アクティブな端子は無効になります。

パラメーターとダイアログ ボックス

バリアントの選択 (子サブシステムのリスト)

バリアントの選択、バリアント制御および条件に関するテーブルが表示されます。true として評価されるバリアント制御が、アクティブなバリアントを決定します。

設定

既定の設定: テーブルには、Variant Subsystem ブロックの各サブシステムの行があります。Variant Subsystem ブロックにサブシステムが含まれない場合、空のテーブルになります。既定値は、各列パラメーターを参照してください。

ヒント

[バリアントの選択] テーブルの左にあるボタンを使用して、テーブルの要素を変更できます。

目的...クリックするボタン
新しいサブシステムの選択を作成して追加:テーブルに新しいサブシステムの選択を作成し、Variant Subsystem ブロック線図に新しい Subsystem ブロックを作成します。
新しいモデル バリアントの選択を作成して追加します: テーブルに新しいモデルの選択を作成し、Variant Subsystem ブロック線図にモデル ブロックを作成します。
選択されている Variant オブジェクトを作成/編集: ベース ワークスペースに Simulink.Variant オブジェクトを作成し、Simulink.Variant オブジェクトのパラメーター ダイアログ ボックスを開いてバリアントの [条件] を指定します。
選択されているバリアントの選択ブロックを開きます: [バリアントの選択] テーブルで選択された行のサブシステムのブロック線図を開きます。
Variant Subsystem の内容のダイアログ情報を更新:Subsystem ブロックのコンフィギュレーションおよびベース ワークスペースのバリアント制御の値に応じて [バリアントの選択] テーブルを更新します。

参考

名前 (読み取り専用)

サブシステムまたはモデル バリアントの選択の名前 (Variant Subsystem ブロックに含まれている)

設定

Variant Subsystem ブロックに含まれているサブシステムまたはモデル バリアントの選択に基づいた読み取り専用フィールドです。

をクリックすると Variant Subsystem ブロックにサブシステム バリアントの選択が追加され、 をクリックするとモデル バリアントの選択が追加されます。

バリアント制御

ベース ワークスペースで利用可能なバリアント制御が表示されます。バリアント制御は、boolean の条件式または boolean の条件式を表す Simulink.Variant オブジェクトのいずれかです。お使いのモデルのコードを生成する場合、制御変数を Simulink.Parameter オブジェクトとして定義しなければなりません。

設定

既定の設定: Variant

バリアントの名前を加えるには、新しい行にある [バリアント制御] セルをダブルクリックして、バリアント制御の式をタイプします。

コマンド ライン情報

このパラメーターをプログラムで変更するには、子サブシステムまたは親バリアント サブシステム内のモデルの VariantControl パラメーターにアクセスします。たとえば、LinearNonlinear の 2 つのバリアントの選択を含む Variant Subsystem ブロックの LeftController について考えます。Linear のバリアント制御を編集するには、次のコマンドを実行します。

set_param('rtwdemo_preprocessor_subsys/LeftController/Linear',...
'VariantControl','NONLINEAR');

構造体フィールド:Variant パラメーター構造体の読み取り専用 variant.Name フィールドによって表現されます
タイプ: 文字列
値: バリアントの選択に関連付けられたバリアント制御
既定の設定: ''

条件 (読み取り専用)

Simulink.Variant オブジェクト型のバリアント制御に関する [条件] が表示されます。

設定

ベース ワークスペースの関連付けられたバリアント制御の条件に基づいた読み取り専用フィールドです。Simulink.Variant パラメーターまたはベース ワークスペース内のバリアント オブジェクトのバリアント条件を作成または変更します。

参考

バリアント条件をオーバーライドして以下のバリアントを使用

アクティブなバリアントをバリアント条件の評価から指定するか、[バリアント] パラメーターの値からするかを指定します。

設定

既定の設定: オフ

オン

バリアント条件をオーバーライドして、[バリアント] フィールドに表示されるバリアント選択に、アクティブなバリアントを設定します。

オフ

バリアント条件の値からアクティブなバリアントを判断します。

依存関係

このパラメーターは [バリアント] を有効にします。

コマンド ライン情報

パラメーター: OverrideUsingVariant
タイプ: 文字列
値: '' オーバーライドするバリアントが指定されていない場合
既定の設定: ''

参考

バリアント

[バリアント条件をオーバーライドして以下のバリアントを使用] を選択する場合に使用するバリアントの名前を指定します。

設定

既定の設定: ''

有効な MATLAB® 識別子でなければなりません。

ヒント

[バリアント] ドロップダウン リストを使用して、現在ベース ワークスペースにあるすべてのバリアントのリストをスクロールできます。

依存関係

[バリアントを有効にする][バリアント条件をオーバーライドして以下のバリアントを使用] はこのパラメーターを有効にします。

コマンド ライン情報

パラメーター: OverrideUsingVariant
タイプ: 文字列
値: バリアント制御式で指定

参考

ブロック線図の更新中にすべての選択肢を解析し、プリプロセッサの条件を生成する

このパラメーターは、ERT ターゲット用のコードを生成する場合に、バリアント選択を C のプリプロセッサの条件ステートメント (#if) で囲むかどうかを決定します。

このオプションを選択すると、Simulink はブロック線図またはシミュレーションの更新中にバリアントのすべての選択を解析します。この解析によって、バリアントのすべての選択についてコード生成の準備状態の早期検証が行われます。

設定

既定の設定:無効

依存関係

  • チェック ボックスは、ERT ターゲットを生成するときのみ使用できます。

  • [バリアント条件をオーバーライドして以下のバリアントを使用] がオフ ('off') になります。

コマンド ライン情報

パラメーター: GeneratePreprocessorConditionals
タイプ: 文字列
値: 'off' | 'on'
既定の設定: 'off'

参考

特性

データ型

double | single | boolean | 整数 | 固定小数点 | 列挙型 | バス

多次元信号

あり

可変サイズの信号

あり

コード生成

あり

R2010b で導入

この情報は役に立ちましたか?