Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Stateflow での操作点の使用

操作点とは、シミュレーション中の特定の時間における Simulink® モデルの完全なステートのスナップショットです。Stateflow® チャートの場合、操作点には以下が含まれます。

  • チャートステートのアクティビティ

  • チャートのローカル データの値

  • チャートの出力データの値

  • MATLAB® 関数内および Truth Table ブロック内の固定データの値

操作点には、Stateflow オブジェクトが階層順にリストされています。

  • グラフィカル オブジェクトはタイプ (ボックス、関数、またはステート) によってグループ化され、各グループ内ではアルファベット順に並べられています。

  • チャート データはスコープ (ブロック出力またはローカル) によってグループ化され、各グループ内ではアルファベット順に並べられています。

たとえば、以下の操作点は Stateflow オブジェクトの階層構造を示しています。

c = 

  Block:    "shift_logic"    (handle)    (active)
  Path:     sf_car/shift_logic

  Contains:

    + gear_state         "State (AND)"          (active)
    + selection_state    "State (AND)"          (active)
      gear               "State output data"    gearType [1, 1]
      down_th            "Local scope data"     double [1, 1]
      up_th              "Local scope data"     double [1, 1]

ツリー構造になっており、グラフィカル オブジェクトと非グラフィカル オブジェクトが、チャート階層内におけるそれぞれの場所にマッピングされています。名前の競合が存在する場合は、1 つ以上のアンダースコアが名前の最後に表示されています。こうして、すべてのオブジェクトに、操作点階層内における一意識別子が与えられています。ステートのないフロー チャートにはステートや固定データが含まれていないため、ステートのないフロー チャートの操作点は空です。

Simulink モデル内の他のブロックに対する操作点の使用の詳細については、シミュレーションの操作点の保存と復元 (Simulink)を参照してください。

長いシミュレーションのセグメントへの分割

長いシミュレーションの実行中はいつでも、モデルのすべての操作点を保存できます。その後、その操作点を読み込み、そのシミュレーションの特定のセグメントを実行できます。実行は t = 0 からでなくてもよいため、時間が節約できます。

詳細は、長いシミュレーションのセグメントへの分割 を参照してください。

様々な設定に対するチャートの応答のテスト

チャートの操作点を変更して読み込み、様々な設定に対するチャートの応答をテストできます。チャートのローカル データまたは出力データの値をシミュレーションの中間で変更するか、またはステート アクティビティを変更した後、チャートの応答をテストできます。

操作点の読み込みと変更には、以下のような利点があります。

  • 特定の操作点を読み込むことにより、特殊なチャート コンフィギュレーションもテストできます。

  • 同じチャート コンフィギュレーションを様々な設定でテストできます。

詳細は、以下を参照してください。

関連するトピック