Main Content

モデルの階層構造の確認

Simulink® モデルを階層的コンポーネントに整理することができます。階層モデルでは、上位レベルでシステムを表示でき、モデルの階層構造を下に移動して順次下位レベルのモデルの詳細を表示できます。

モデルの階層構造の表示

開始するには、smart_braking モデルを開きます。

モデルで次のようにします。

  • アクセル ペダルを踏むと、車両が動く。

  • 近接センサーが車両と障害物の間の距離を測定する。

  • その近接度に基づいてアラート システムがアラームを発生させる。

  • アラームは、自動的にブレーキを制御して衝突を回避する。

モデルを作成するときに、ブロックを互いに接続して、システム ダイナミクスを表す複雑なコンポーネントをモデル化できます。このモデルにおいて、Vehicle、Proximity sensor、Alert system はいずれも、サブシステムの階層構造の中に存在している複数のブロックから成る複雑なコンポーネントです。サブシステムの内容を表示するには、サブシステムをダブルクリックします。

完全なモデルの階層構造の表現を表示するには、モデル ブラウザーを開きます。

  1. [モデル ブラウザーの非表示/表示] ボタンが Simulink エディターの左下隅に表示されるまで、モデル ウィンドウを垂直方向に展開します。

  2. [モデル ブラウザーの非表示/表示] ボタンをクリックします。

モデル ブラウザーを見ると、最上位レベルで表示されているすべてのサブシステムが、それぞれ独自のサブシステムを持っていることが分かります。サブシステム ノードを展開して、これに含まれるサブシステムを表示します。モデル ブラウザーの階層をナビゲートできます。たとえば、Proximity センサー ノードを展開して、Sensor model サブシステムを選択します。

アドレス バーに、現在表示しているサブシステムが表示されます。サブシステムを別のウィンドウで開くには、サブシステムを右クリックし、[新規ウィンドウで開く] を選択します。

サブシステムのすべての入力端子または出力端子は、そのサブシステム内に対応する Inport ブロックまたは Outport ブロックを持っています。これらのブロックは、サブシステムとその親とのデータ転送を表しています。システムに複数の入力端子または出力端子が含まれている場合、Inport ブロックまたは Outport ブロック上の数は、サブシステム インターフェイスでの端子の位置を示します。

信号属性の表示

Simulink の信号線は、ブロック間のデータ転送を表しています。信号には、モデル内の機能に対応するプロパティがあります。

  • 次元 — スカラー、ベクトルまたは行列

  • データ型 — string、double、符号なし整数など

  • サンプル時間 — 信号の値が更新される固定の時間間隔 (連続サンプリングの場合は 0)

モデル内のすべての信号のデータ型を表示するには、[デバッグ] タブの [情報のオーバーレイ] で、[基本データ型] をクリックします。

The top level view of the model smart_breaking has an annotation that indicates the data type on each signal line.

モデルに信号線に沿ってデータ型が表示されます。Alert system という名前のサブシステムの出力を除き、ほとんどの信号は double です。サブシステムをダブルクリックして調べてみましょう。

The contents of the subsystem named Alert system show the signal data type annotations on the signal lines.

このサブシステムのデータ型のラベルによると、データ型の変更は Alert device という名前のサブシステムで発生しているようです。サブシステムをダブルクリックして調べてみましょう。

The contents of the subsystem named Alert device contains a Data Type Conversion block. The signal data type annotations indicate the data type for the input and output signals of the Data Type Conversion block.

Alert device コンポーネントが、信号 Alert index を double から整数に変換します。データ型はソースで設定するか、Signal Attributes ライブラリの Data Type Conversion ブロックを使用することができます。既定のデータ型である double は、数値精度が最も高く、すべてのブロックでサポートされています。また、double データ型はメモリと計算能力も最も多く消費します。その他の数値データ型は、メモリや計算能力が限られている組み込みシステムのモデル化に使用できます。

サンプル時間を表示するには、[デバッグ] タブの [情報のオーバーレイ] で、[サンプル時間] セクションから [色] をクリックします。モデルが更新され、モデルの各サンプル時間が、凡例に従って色分けされて表示されます。

Color coding in the top level view of the model smart_breaking indicates the sample time associated with each block, port, and signal line.

The Timing Legend groups sample times based on type and indicates the sample time that corresponds to each color in the block diagram.

  • 連続ダイナミクスを持つブロックまたは信号は黒色です。連続サンプル時間をもつ信号は、指定された許容誤差の値をソルバーで満たす必要が生じるごとに更新されます。

  • 定数のブロックまたは信号は、マゼンタです。シミュレーションを通して変更されません。

  • 最も少ない固定の間隔で更新される離散ブロックまたは信号は赤色です。離散サンプル時間をもつ信号は、固定の間隔で更新されます。モデルに異なる固定サンプル時間を持つコンポーネントが含まれている場合、各離散サンプル時間は色分けされます。

  • 離散信号と連続信号が混在するマルチレート サブシステムは黄色です。

信号のトレース

このモデルは、定数入力と離散出力を持ちます。サンプリング スキームの変わり目を特定するには、ソース ブロックを通して出力信号をトレースします。

  1. モデル ブラウザーを開くには、[モデル ブラウザーの非表示/表示] ボタン が Simulink エディターの左下隅に表示されるまで、モデル ウィンドウを垂直方向に展開します。次に、[モデル ブラウザーの非表示/表示] ボタンをクリックします。

  2. 出力信号の伝播元のトレースを開始するには、信号を選択します。次に、[信号] タブで [伝播元までトレース] をクリックします。

    Simulink エディターが信号トレース モードになります。信号トレース モードではモデル キャンバスが白ではなくグレーになり、トレース パスが目立つようになります。

    ヒント パネルでは、信号トレース モードで実行できるアクションのヒントおよび各アクションに対応しているキーボード ショートカットが示されます。ヒント パネルを最小化するには、キーボードの ? キーを押します。ヒント パネルを元に戻すには、キーボードの ? キーをもう一度押します。

    In the top level of the model smart_breaking, the output signal and the subsystem named Alert system, which produces the output signal, are highlighted yellow.

  3. 出力信号の伝播元のトレースを続けるには、左矢印キーを押します。

    The Simulink Editor navigates inside the subsystem named Alert system to highlight the next source block that affects the value of the output signal.

  4. 左矢印キーを押し続け、Alert logic という名前のサブシステム内の Subtract ブロックに達するまで出力信号の伝播元をトレースします。信号パスで Subtract ブロックに達すると、Subtract ブロックには 2 つの入力端子が含まれているため、トレースを続行するにはパスを選択する必要があります。選択されているパスを示すために、トレース対象の次のセグメントが青色で強調表示されます。既定では、最初の入力端子がトレース続行用に選択されています。下矢印キーを押して、マイナス入力端子のパスを選択します。

    Inside the subsystem named Alert logic, the signal path is highlighted in yellow up to the Subtract block. The signal connected to the minus input port of the Subtract block is highlighted blue.

  5. 離散化のソースを見つけるには、端子のサンプル時間を表す各端子名の色に注目しながら、左矢印キーを押し続けます。

    Inside the subsystem named Sensor model, the Zero Order Hold block and the Outport block named proximity sensor output are highlighted.

Sensor model サブシステムの Zero-Order Hold ブロックは、信号を連続から離散に変換します。

関連するトピック