ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

有限ステート マシンの概念

有限ステート マシンとは

Stateflow® チャートは、ステート マシンに基づく順序の判定ロジックを含むことができます。有限ステート マシンは、イベントドリブン (リアクティブ) システムの表現です。イベントドリブン システムでは、変更の定義条件が真になった場合に、システムはあるステート (モード) から別のステートに遷移します。

たとえば、ステート マシンを使用して、自動車のオートマチック トランスミッションを表す場合について考えてみます。トランスミッションの動作状態としては、パーキング、リバース、ニュートラル、ドライブ、1 速など多くの操作ステートがあります。ドライバーがセレクト レバーを操作すると、システムはその操作に応じて、あるステートから別のステート (たとえば、パーキングからリバース) に遷移します。

有限ステート マシンの表現

従来から、設計者は真理値表を使用して、有限ステート マシンの入力、出力、およびステートの関係を表してきました。結果の表は、研究中のシステムの動作を制御するために必要なロジックが記載されています。イベントドリブン システムを設計するための別のアプローチとして、ステート間の遷移の条件でロジックを記述することにより、システムの動作をモデル化します。ステートがアクティブであるかどうかは、特定の条件下で発生するイベントによって決められます。状態遷移図とバブル チャートは、この方法に基づいたグラフィカルな表現です。

Stateflow チャートの表現

Stateflow チャートは、状態遷移図、フロー チャート、状態遷移表および真理値表などの形で、順序および組み合わせ論理を含めることができます。状態遷移図は、有限ステート マシンのグラフィカル表現です。"ステート" と "遷移" によって、順序論理システムの基本構成ブロックが形成されます。順序論理を表現するもう 1 つの方法は、状態遷移表です。ここでは、ステート ロジックを表形式で入力できます。また、フローチャートと真理値表によって、組み合わせ論理を 1 つのチャートで表現できます。

Stateflow チャートは、Simulink® モデルにブロックとして含めることができます。Simulink モデルのブロックの集合体が Stateflow マシンです。

Stateflow チャートでは、階層、パラレル化、および履歴の表現が可能です。複雑なシステムも親子関係のオブジェクト構造を定義することで整理できます。たとえば、ステートを別の上位レベルのステート内に構造として配置できます。システムをパラレル化することで、複数の直交するステートを同時にアクティブにできます。また、履歴情報に基づいて、遷移先状態を指定できます。

表記法

表記法で一連のオブジェクトと、各オブジェクト間の関係を管理するルールを定義します。Stateflow チャート表記法は、Stateflow チャート内の設計情報をやり取りする方法を提供します。

Stateflow チャートの表記法は、以下の要素で構成されています。

  • 一連のグラフィカル オブジェクト

  • 一連のテキストベースの非グラフィカル オブジェクト

  • 各オブジェクト間に定義された関係

セマンティクス

セマンティクスは、チャートの表記法の解釈方法を規定するものです。典型的な Stateflow チャートには、遷移とステートに関連するアクションが含まれています。セマンティクスは、チャート実行時の各アクションのシーケンスを規定します。