一方通行路の交差点のモデル化
この例では、Stateflow® の信号機システムで制御される一方通行路の交差点をモデル化します。Stateflow チャートは、アクティブ ステートの出力を使用して、各信号機のステートを追跡します。信号機の動作は、Stateflow マスクのパラメーターで制御されます。
交差点モデル
アニメーション化された信号機の各段階は、Stateflow チャートの出力データによって決定されます。出力データの値はそれぞれ、サブステート Light1Controller
および Light2Controller
のアクティブな子に対応します。
トラフィック コントローラー
Stateflow チャート Traffic Controller は、2 つのトラフィック コントローラーを並列で制御します。各コントローラーは、交差点の交通渋滞、Simulink® からの入力、チャートのマスク パラメーターに基づき、進行先の信号の段階を決定します。詳細については、マスクを作成して Simulink とパラメーターを共有を参照してください。
アクティブ ステートの出力
Light1Controller
と Light2Controller
の両方の子アクティビティは、列挙型データを介して Simulink に出力されます。Stateflow がこのデータを自動的に管理します。詳細については、アクティブ ステート データによるステート アクティビティの監視を参照してください。
信号機コントローラーの一方 (たとえば
Light1Controller
) を開きます。右クリックし、[プロパティ] を選択します。
[監視する出力の作成] オプションが選択されていることを確認して
Child activity
に設定します。[データ名] フィールドは、リンクされているインスタンスの出力データ名に対応しています。
この出力は、
Light1
と呼ばれるチャート レベル出力にマッピングされます。
シミュレーション
モデルをシミュレートし、交通信号ブロックのそれぞれが動作する様子を観察します。