ドキュメンテーション

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

バリアント マネージャーの概要

バリアント マネージャーは、システム モデルでバリアント ブロックを使用してモデル化されるさまざまな変動点を管理できるようにする主要なツールです。

モデルの階層構造にはいくつかのバリアント ブロックが含まれていることがあり、それぞれに多くのバリアントの選択、システムの特定のコンフィギュレーションに対応する組み合わせがあります。バリアント選択の切り替えとそれらの手動での検証は複雑であり、間違えやすい可能性があります。

バリアント マネージャーを使用して、モデルのコンフィギュレーションを事前定義して、任意の設定でモデルを使用します。モデルの階層構造間の異なるバリアントの選択を組み合わせてコンフィギュレーションを作成します。

バリアント マネージャーを使用して、次を行うことができます。

  • バリアント コンフィギュレーションを、定義、検証、可視化する。

  • モデルの制約を定義して検証する。

  • 既定のアクティブ コンフィギュレーションを指定する。

  • 制御変数を整数、列挙値、または Simulink.Parameter オブジェクトのいずれかに設定します。

  • Simulink.VariantConfigurationData オブジェクトをモデルに関連付けます。

  • モデルを更新することなくバリアント コンフィギュレーションまたはモデルを検証する。

  • モデルを削減してバリアント コンフィギュレーションのサブセットを保持する。

  • バリアント コンフィギュレーションを解析する。

メモ

バリアント マネージャーからバリアント コンフィギュレーションを解析する方法の詳細については、バリアント ブロックを含むモデルでのバリアント コンフィギュレーションの解析を参照してください。コマンド ラインからバリアント コンフィギュレーションを解析する方法の詳細については、Simulink.VariantConfigurationAnalysisを参照してください。

バリアント マネージャーからバリアント コンフィギュレーションを解析する方法の詳細については、バリアント ブロックを含むモデルでのバリアント コンフィギュレーションの解析を参照してください。コマンド ラインからバリアント コンフィギュレーションを解析する方法の詳細については、Simulink.VariantConfigurationAnalysisを参照してください。

モデルのバリアント管理について考えます。バリアント マネージャーを開くには、次を行います。

  • バリアントのバッジを右クリックして [バリアント マネージャーで開く] を選択します。

  • バリアント ブロックを右クリックして、コンテキスト メニューで、[バリアント][バリアント マネージャーで開く] をクリックします。

  • バリアント ブロックを選択して、[ブロック線図][バリアント][バリアント マネージャーで開く] をクリックします。

  • バリアント ブロックの [ブロック パラメーター] ダイアログ ボックスで利用可能な [バリアント マネージャーで開く] をクリックします。

[バリアント マネージャー] ウィンドウは、次の 3 つのペインに分かれています。

  • バリアント コンフィギュレーション データペインでは、バリアント コンフィギュレーションおよび制約を定義して、バリアント コンフィギュレーション データ オブジェクトにエクスポートできます。

  • モデルの階層構造ペインでは、バリアント階層を可視化できます。

  • ログペインでは、制御変数と検証エラーのソースに関する情報を表示します。

バリアント コンフィギュレーション データ

このペインを使用してコンフィギュレーションの作成、制御変数の定義、参照モデル コンフィギュレーションの関連付けおよび制約の定義を行うことができます。コンフィギュレーションおよび関連するデータは、バリアント コンフィギュレーション データ オブジェクトに保存されます。

バリアント構成オブジェクト

バリアント コンフィギュレーションを追加したら、[バリアント構成オブジェクト] ボックスにバリアント構成オブジェクトの名前を入力します。ドロップダウン メニューを使用して、ファイルからバリアント構成オブジェクトを読み込むか、読み込まれたバリアント構成オブジェクトを更新できます。バリアント構成オブジェクトは、MAT ファイルまたは MATLAB スクリプト (.m ファイル) から読み込むことができます。バリアント構成オブジェクトをモデル、グローバル ワークスペースに保存し、モデルと関連付けるには、[エクスポート] をクリックします。バリアント構成オブジェクトを MAT ファイルまたは MATLAB スクリプト (.m ファイル) として選択したフォルダーに保存するには、[エクスポート] ボタンのドロップダウン メニューから [名前を付けて保存] をクリックします。

コンフィギュレーション

[コンフィギュレーション] タブは、上部ペインと下部ペインに分けられます。上部ペインを使用して、バリアント コンフィギュレーションを追加、削除またはコピーできます。既定のコンフィギュレーションを設定することもできます。コンフィギュレーションを既定のコンフィギュレーションとして設定すると、モデルの検証または更新時に既定のコンフィギュレーションで指定したバリアントの選択が有効になります。

上部ペインにはバリアント コンフィギュレーションを管理するための 3 つのボタンがあります。

ボタン説明
バリアント コンフィギュレーションの追加
バリアント コンフィギュレーションの削除
バリアント コンフィギュレーションの複製
既定のアクティブ コンフィギュレーションの設定または解除

バリアント コンフィギュレーションを追加した後、[コンフィギュレーション] タブの下部ペインを使用して、その説明、制御変数およびサブモデル コンフィギュレーションを追加できます。バリアント コンフィギュレーションが追加されていない場合でも、制御変数を追加し、それらをグローバル ワークスペースにエクスポートできます。下部ペインには次のタブが含まれています。

  • 説明 — 選択したバリアント コンフィギュレーションの説明を表示します。

  • 制御変数 — 制御変数を追加、削除、コピーまたはインポートします。データ型の切り替えおよび制御変数のワークスペースからのインポートを行います。

    ボタン説明

    制御変数の追加

    選択された制御変数の削除

    選択された制御変数のコピーの作成

    制御変数のタイプの切り替え

    制御変数は、シンプルな MATLAB 変数または Simulink.Parameter オブジェクトのいずれかにすることができます。

    制御変数 Simulink.Parameter の編集。選択された制御変数が Simulink.Parameter オブジェクトである場合、このオプションはアクティブになります。

    メモ

    制御変数 Simulink.Parameter を式として指定するには、等式記号 (=) の後に数式を使用してパラメーター オブジェクトの [値] プロパティを設定します。たとえば、「= A + B」と入力します。

    モデル参照階層全体からの制御変数のインポート

    メモ

    Label モードのブロックから制御変数はインポートされません。これらの変数はバリアント制御変数ではないからです。

  • サブモデル コンフィギュレーション — 参照モデルのバリアント コンフィギュレーションを定義します。

    参照モデル コンフィギュレーションを追加 または削除 します。

コンフィギュレーションをアクティブにする

コンフィギュレーションのバリアント モデルを更新してアクティブにするには、[コンフィギュレーション] のリストからコンフィギュレーションを選択し、[アクティブにする] をクリックします。コンフィギュレーションを選択せずに [アクティブにする] ボタンをクリックすると、[制御変数] の値がグローバル ワークスペースから選択されます。その場合、既定のコンフィギュレーションが設定されない限り、バリアント マネージャーで定義されている [制御変数] によって、グローバル ワークスペースの対応する値がオーバーライドされます。既定のバリアント コンフィギュレーションが設定されると、対応する制御変数が適用されます。

参照モデル (サブモデル) を含む親モデルのバリアント マネージャーを開くと、親モデルのみ検証されます。参照モデル (サブモデル) は、参照モデルをアクティブにするか、展開 (+ をクリック) した場合にのみ検証されます。

制約

[制約] タブを使用して、モデルレベルの制約を追加または削除します。[コンフィギュレーション] タブと同様に、[制約] タブにも上部ペインと下部ペインが含まれています。

下部ペインには、制約の名前および条件が表示され、その下には説明が表示されます。制約の条件式は、モデル内のすべてのバリアント コンフィギュレーションによって満たされなければなりません。

モデルの階層構造

[モデルの階層構造] ペインから、モデルのバリアント階層構造を可視化して探索し、バリアント ブロックのプロパティ、バリアントの選択およびバリアント オブジェクトを編集できます。このペインには、バリアント制御として使用されるバリアント オブジェクトの [名前][サブモデル コンフィギュレーション][バリアント制御] および関連する [条件] が表示されます。

ナビゲーション アイコンを使用して、階層構造を参照します。[モデルの階層構造] ペインのコントロールでは、次のアクションが実行できます。

  • 階層構造の更新と検証。

  • バリアント ブロックのみの表示。

  • 変数の使用、アクティブな選択肢、無効な選択肢、オーバーライドされたバリアントの選択肢間の移動。

ビュー

バリアント階層構造内のブロックを選択的に表示します。

  • すべてのバリアント ブロックを表示するには、[バリアント ブロック] を選択します。

  • Label モードのバリアント ブロックおよび他の Model ブロックを表示するには、[ラベル モードのバリアント ブロック] を選択します。階層内に Label モードのブロックを含む Expression モードのバリアント ブロックも表示されます。

  • Expression モードのバリアント ブロックおよび他の Model ブロックを表示するには、[式モードのバリアント ブロック] を選択します。階層内に Expression モードのブロックを含む Label モードのバリアント ブロックも表示されます。

  • モデル内のすべての階層ブロック (Subsystems ブロックや Model ブロックなど) を表示するには、[すべての階層ブロック] を選択します。

ナビゲート

変数の使用、アクティブな選択肢、無効な選択肢、オーバーライドされた選択肢を移動します。

  • 変数の使用 — 選択した制御変数が使用されるモデル内の前または次の行を選択する。

  • アクティブな選択肢 — アクティブなバリアントの選択肢をもつモデル内で前または次の行を選択する。

  • 無効な選択肢 — 無効なバリアントの選択肢をもつモデル内で前または次の行を選択する。

階層テーブル

モデルの階層構造はツリーで表示され、各ブロックが階層構造のノードを表します。階層構造には、アクティブなバリアント、非アクティブなバリアント、オーバーライドされたバリアントおよび無効なバリアントが表示されます。参照モデル コンフィギュレーション、バリアント制御およびバリアントの条件を編集できます。ノードを展開して下のブロックを表示します。

メモ

保護された参照モデルを階層構造内に表示することはできません。

階層テーブルは、次の列から構成されます。

  • 名前 — モデルまたはブロックの名前。

  • サブモデル コンフィギュレーション — 参照モデルで使用されるコンフィギュレーション。最上位モデルによって参照されるモデルが表示される行の [サブモデル コンフィギュレーション] のみを編集できます。

  • バリアント制御 — バリアントの選択に関するバリアント制御パラメーター。この列は、バリアント ブロックのパラメーター ダイアログ ボックスの [バリアント制御] 列と同一です。階層構造間のバリアント選択で、この列を編集できます。

  • 条件 — バリアント制御として使用された場合の Simulink.Variant オブジェクトの条件を表示して編集できます。バリアントの階層構造間のバリアント選択で、この列を編集できます。

階層テーブルで、ブロックを右クリックしてコンテキスト メニューから必要に応じて次のいずれかのオプションを使用できます。

  • ブロックを開いて強調表示: 最上位モデルから選択したブロックの場所を表示する際、モデルで選択したブロックを強調表示します。

  • モデルを開く: 最上位モデルから選択したブロックの場所を表示する際、選択したモデルを開きます。このオプションは階層テーブルからモデルを選択する場合にのみ使用できます。

  • ブロック パラメーターを開く: 選択したブロックの [ブロック パラメーター] ダイアログ ボックスを開きます。パラメーター値を変更するよう選択できます。

  • 親のブロック パラメーターを開く: 選択したブロックの親ブロックに対する [ブロック パラメーター] ダイアログ ボックスを開きます。パラメーター値を変更するよう選択できます。

  • ラベル モードのアクティブな選択肢として設定: 選択した Variant Subsystem ブロック、Variant Sink ブロック、または Variant Source ブロックの選択肢をアクティブな選択肢として設定します。このオプションは、ラベル モードの Variant Subsystem ブロック、Variant Sink ブロック、または Variant Source ブロックに対してのみ使用できます。

モデルの階層構造のセクションでは、各ブロックはアイコンで表されます。次の表は、アイコンおよび対応するブロック名を示します。

アイコンブロック名

Model ブロック

インライン Variants ブロック (Variant SourceVariant Sink)

Variant Subsystem ブロック

Subsystem ブロック

Variant Model ブロック

Simulink® Function ブロック

Trigger Port ブロック

Variant Sink 出力端子

Variant Source 入力端子

[Variant Subsystem の外部に条件を伝播する] オプションが選択されている Variant Subsystem ブロック。

[ブロック線図の更新中にすべての選択肢を解析し、プリプロセッサの条件を生成する] オプションが選択されている Variant Subsystem ブロック。

[バリアント制御モード] として [ラベル] が選択され、[ラベル モードのアクティブな選択肢] オプションからアクティブなバリアント選択肢が選択されている Variant Subsystem ブロック。

[Variant Subsystem の外部に条件を伝播する] および [ブロック線図の更新中にすべての選択肢を解析し、プリプロセッサの条件を生成する] オプションが選択されている Variant Subsystem ブロック。

[Variant Subsystem の外部に条件を伝播する] オプションが選択されている Variant Subsystem ブロック。また、[バリアント制御モード] として [ラベル] が選択され、[ラベル モードのアクティブな選択肢] オプションからアクティブなバリアント選択肢が選択されています。

[ゼロ アクティブ バリアント制御を許可] オプションが選択されているインライン Variants ブロック (Variant Source および Variant Sink)。

[バリアント制御モード] として [ラベル] が選択され、[ラベル モードのアクティブな選択肢] オプションからアクティブなバリアント選択肢が選択されているインライン Variants ブロック (Variant SourceVariant Sink)。

[ブロック線図の更新中にすべての選択肢を解析し、プリプロセッサの条件を生成する] オプションが選択されているインライン Variants ブロック (Variant Source および Variant Sink)。

[ゼロ アクティブ バリアント制御を許可] および [ブロック線図の更新中にすべての選択肢を解析し、プリプロセッサの条件を生成する] オプションが選択されているインライン Variants ブロック (Variant Source および Variant Sink)。

Initialize Function ブロック

Initialize Function ブロックの Event Listener ブロック

Reset Function ブロック

Rest Function ブロックの Event Listener ブロック

Terminate Function ブロック

Terminate Function ブロックの Event Listener ブロック

ログ

[ログ] ペインは、階層内のモデルの制御変数のソースに関する情報および検証結果を表示します。

たとえば、バリアント コンフィギュレーションが参照モデルに使用されている場合、参照モデルの名前が、バリアント コンフィギュレーション データ オブジェクトとバリアント コンフィギュレーションの名前と共に行に表示されます。このペインは、バリアント コンフィギュレーションの検証中に発生したエラーも表示します。

関連するトピック