Main Content

モデルをバリアント システムに変換

モデル トランスフォーマー ツールを使用すると、条件を満たすモデル化パターンを Variant Source ブロックとVariant Subsystem, Variant Model, Variant Assembly Subsystemブロックに置き換えることにより、モデルのコンポーネント化を改善できます。モデル トランスフォーマーは、条件を満たすモデル化パターンをレポートします。どのモデル化パターンを Variant Source ブロックまたは Variant Subsystem ブロックに置き換えるかを選択します。

モデル トランスフォーマーでは、以下の変換を実行できます。

  • 1 つの If ブロックが 1 つ以上の If Action Subsystem に接続し、それぞれに出力端子が 1 つずつある場合は、このモデル化パターンを 1 つのサブシステムと 1 つの Variant Source ブロックに置き換えます。

  • 1 つの If ブロックが、出力端子がない、または出力端子が 2 つ以上ある 1 つの If Action Subsystem に接続する場合は、このモデル化パターンを 1 つの Variant Subsystem ブロックに置き換えます。

  • 1 つの Switch Case ブロックが 1 つ以上の Switch Case Action Subsystem に接続し、それぞれに出力端子が 1 つずつある場合は、このモデル化パターンを 1 つのサブシステムと 1 つの Variant Source ブロックに置き換えます。

  • 1 つの Switch Case ブロックが、出力端子がない、または出力端子が 2 つ以上ある 1 つの Switch Case Action Subsystem に接続する場合は、このモデル化パターンを 1 つの Variant Subsystem ブロックに置き換えます。

  • 1 つの Switch ブロックを 1 つの Variant Source に置き換えます。

  • データ端子が 2 つ以上ある 1 つの Multiport Switch ブロックを 1 つの Variant Source ブロックに置き換えます。

モデル トランスフォーマー ツールで変換を実行するには、Multiport Switch ブロックまたは Switch ブロックへの制御入力と、If ブロックまたは Switch Case ブロックへの入力が、以下のいずれかでなければなりません。

  • [定数値] パラメーターがスカラー型の Simulink.Parameter オブジェクトである Constant ブロック。

  • [定数値] パラメーターがスカラー型の Simulink.Parameter オブジェクトである Constant ブロック、およびサポートされている MATLAB 式を形成するその他のブロックの組み合わせ。Types of Operators in Variant Blocks for Different Activation Timesにある MATLAB 式は、ビット演算以外ではサポートされます。

モデル変換の制限

モデル トランスフォーマー ツールには以下の制限があります。

  • モデル トランスフォーマーをモデルで実行するには、モデルをシミュレートできなければなりません。

  • If Action Subsystem ブロックが Merge ブロックを駆動し、Merge ブロックのもう 1 つの入力端子が未接続であるか、別の条件付きサブシステムによって駆動されている場合、モデル トランスフォーマーは Variant Source ブロックを追加しません。このモデル化パターンでは、警告と除外候補のメッセージが表示されます。

  • モデル トランスフォーマーは、すべてのモデル化パターンに対してバリアント変換を実行できるわけではありません。次の場合は例外になります。

    • 保護モデルを参照する Model ブロックがモデルに含まれている場合。

    • [バリアントのアクティベーションのタイミング] パラメーターが update diagram に設定された Variant Source ブロックがモデルに含まれている場合。

  • 1 つ以上のタスクを実行した後は、[このチェックを実行] ボタンと [すべて実行] ボタンが非アクティブになるため、タスクを再実行できません。タスクを再実行する場合は、[モデル トランスフォーマー] を右クリックし、Reset を選択して、モデル トランスフォーマーをリセットします。

  • 変換中は、モデルを変更しないでください。モデルを変更する場合は、[モデル トランスフォーマー] を閉じ、モデルを変更してから、[モデル トランスフォーマー] を再度開きます。

  • モデル トランスフォーマー内のハイパーリンクを機能させるには、リンク先のモデルを開いておかなければなりません。

関連するトピック