Main Content

単一レイヤーでのバリアント実装の可視化

Simulink® では、モデル全体での条件を伝播し、モデル内のバリアントの選択のすべての可能な実装を可視化するために使用できる 2 つのブロックが提供されています。これらのブロックは Variant Source および Variant Sink と呼ばれています。

モデルをコンパイルするときに、Simulink はどのバリアント制御が true に評価されるかを判断します。その後 Simulink は true になるバリアント制御と結び付けられていないブロックを非アクティブにし、アクティブな接続を可視化します。

バリアント ソースとバリアント シンクの動作

Variant Source ブロックには、1 つ以上の入力端子と 1 つの出力端子があります。最大で 1 つのバリアントの選択がアクティブになるように、入力端子に接続されたブロックとしてバリアントの選択を定義できます。アクティブな選択肢は Variant Source の出力端子に直接接続され、非アクティブな選択肢はシミュレーション中に排除されます。

Variant Sink ブロックには、1 つの入力端子と 1 つ以上の出力端子があります。最大で 1 つのバリアントの選択がアクティブになるように、出力端子に接続されたブロックとしてバリアントの選択を定義できます。アクティブな選択肢は Variant Sink の入力端子に直接接続され、非アクティブな選択肢はシミュレーション中に排除されます。

1 つ以上のブロックを Variant Source ブロックの入力端子または Variant Sink ブロックの出力端子に接続します。そして、Variant Source ブロックに入力されるバリアントの選択および Variant Sink ブロックから出力されるバリアントの選択ごとに、バリアント制御を定義します。詳細については、Variant Source ブロックと Variant Sink ブロックを使用した、バリアント領域を定義するためのバリアント条件の伝播を参照してください。

バリアント ソースおよびバリアント シンクを使用する利点

モデルベース デザインでの Variant Source ブロックおよび Variant Sink ブロックの使用には、次の利点があります。

  • このブロックによってモデル全体にバリアント条件を伝播でき、モデルの単一レイヤー内でバリアントの選択を可視化できます。

  • バリアントの選択のすべての可能な実装を可視化することにより、モデルの可読性を高めることができます。

  • モデルをコンパイルする際に、Simulink はモデル全体の非アクティブなブロックを排除するため、実行時のモデルのパフォーマンスが向上します。

  • バリアント ソースとバリアント シンクは、バリアントの選択をすばやくモデル化するために使用できるバリアント コンポーネント インターフェイスを提供します。

バリアント ソースおよびバリアント シンク使用の制限

  • Variant Source ブロックおよび Variant Sink ブロックは時間ベースの信号、関数呼び出し信号またはアクション信号で動作します。SimEvents®Simscape™ Multibody™ またはその他の時間ベースでない信号はこれらのブロックで使用できません。

  • コード生成バリアント レポートには、Variant Source ブロックと Variant Sink ブロックは含まれません。

関連する例

詳細