シンプルステートマシン
単純なステートマシンは、状態、状態遷移を制御する遷移、およびアクションまたはメソッドで構成されます。これにより、有限マシンの動作を設計および実装できます。
ステートチャートを使用したアプリケーションの作成
で新しいプロジェクトを作成します 標準プロジェクト テンプレート。ために PLC_PRGの、 を選択 UMLステートチャート 実装言語。
プロジェクトが作成されます。
デバイスツリーで、アプリケーションを選択して[ コンテキストメニューで。
名前の付いた機能ブロックを作成します
FB_Simple_Machineの中に UMLステートチャート(SC) 実装言語。
プログラムで機能ブロックをインスタンス化します
PLC_PRG関数ブロックインスタンスの呼び出しを実装します。PROGRAM PLC_PRG VAR fb_Simple_Machine_A : FB_Simple_Machine; END_VAR fb_Simple_Machine_A();プロジェクトを名前を付けて保存
SimpleMachine.project。
ステートチャートとしてのフローロジックの設計
マシンの要件の例:
機械は状態にあります
Idle初期化フェーズの後。イベントが発生すると、マシンは状態に切り替わります
DoIt。すべてのアクションとメソッドが処理されると、完了イベントがトリガーされ、マシンはアイドル状態に戻ります。
機械をアイドル状態から状態に切り替えることができます
Exitそして最後の状態に。
この場合の機械の設計は以下のとおりです。

デザインには、フローロジックを制御するガード条件はまだ含まれていません。さらに、アクションまたはメソッドはまだ呼び出されていないため、マシンはまだ動作していません。
デバイスツリーで、機能ブロックをダブルクリックします FB_Simple_Machine エディターを開き、上記の図を作成します。
ガード条件の変数の宣言
PROGRAM FB_Simple_Machine
VAR
bInitDone : BOOL := FALSE;
bShutDown : BOOL := FALSE;
bDoSomething : BOOL := FALSE;
bDoFinished : BOOL := FALSE;
END_VARユーザー入力は、通常、ユーザーインターフェイスを介してユーザーが外部で設定するブール変数にマップされます。ステートチャートでガード条件として変数を割り当てると、フローロジックが切り替え可能になります。変数は制御変数として機能します。

メソッドとアクションの追加
フローロジックをステートチャートとして実装したら、状態と遷移に機能を追加します。そうすることで、あなたは州を拡張します ENTRY、 DO、 と EXIT アクションまたはメソッド。アクションまたはメソッドを遷移に追加することもできます。これは、状態遷移で1回呼び出されます。
いずれかを選択して、状態にアクションを追加できます。
、
、 また
シンボル。あなたはクリックすることができます
トランジションにアクションを追加するための記号。

遷移にアクションを割り当てると、時間の動作がわずかに異なる同様のロジックを設計できます。

の中に デバイス ビューでは、アクションとメソッドの割り当てを追跡できます。アクションとメソッドはで作成されました ST 実装言語。
