Function Block Diagram エディタ (FBD)

概要

Function Block Diagram (FBD) は、ForgeIEC Studio がサポートする 3 つの グラフィカル IEC 61131-3 言語のうちの 1 つです。FBD プログラムは、 ファンクションおよびファンクションブロックの呼び出し明示的な 配線接続 によって相互に — そして入力および出力変数に — 配線したもの で構成されます。Ladder Diagram とは異なり、FBD には 電源レール が ありません: 各接続は 1 つの出力ピンを 1 つ以上の入力ピンに運ぶ単一の ワイヤです。

エディタのレイアウト

FBD エディタは 3 部構成のウィジェットです:

+---------------------------------------------+
| Toolbar (Select | Wire | Block | Var | ...) |
+--------------------------------+------------+
|                                |            |
|       QGraphicsView            |  Variable  |
|       Grid + Zoom + Pan        |  table     |
|                                |  (right)   |
|                                |            |
+--------------------------------+------------+
  • 上部のツールバー: ツールの切り替え (Select、Wire、Place Block、 Place In-/Out-Variable、Comment、Zoom)。
  • QGraphicsView: 背景グリッド (10 px マイナー、50 px メジャー) と 中ボタンパンを備えた描画面。マウスホイールでカーソル中心のズーム。
  • 右側の変数テーブル: ドック可能で、POU のローカル変数を表示します。 テーブルからのドラッグ&ドロップでエディタに in-/out-variable アイテム を作成します。

ツール

ツール効果
Selectアイテムの選択、移動、削除。
Wire出力ポートをクリックし、次に入力ポートをクリック — 接続が作成されます。
Place Blockライブラリからファンクションまたはファンクションブロックをドロップ。ピンリスト (左に入力、右に出力) はライブラリ定義から取得されます。
InVar / OutVar入力変数または出力変数アイテムを配置。名前はダイアログで入力し、GVL、Anvil、Bellows 修飾の変数も可能です。
Commentセマンティクスを持たない自由記述メモ。

ブロックとピン

ブロックアイテム はファンクション (ADD, SEL, …) またはファンクション ブロック (TON, CTU, …) への呼び出しを表します。アイテムはヘッダ にタイプ名、その下にインスタンス名 (FB のみ)、サイドにポートを表示 します:

        +---- TON -----+
        | tonA         |
   IN --| IN          Q|-- timeUp
   PT --| PT         ET|-- elapsed
        +--------------+

入力は 常に左、出力は 常に右 にあります。否定ピンはポートに 小さな円でマークされます。

ライブラリドラッグ

ライブラリパネルから、任意の標準またはユーザーブロックを エディタに 直接ドラッグ&ドロップ できます。リリース時に、ピンリストはライブラリ 定義から取得されます。ファンクションブロックの場合、エディタはローカル 変数セクションに自動的に VAR インスタンスエントリを作成します。

ST へのラウンドトリップ

コンパイル時、ForgeIEC コンパイラは FBD 本体を Structured Text に翻訳 します。データフローによるブロックのトポロジカルソートが実行順序を 決定します。したがって: 任意の FBD 本体は意味的に ST 本体と等価 であり、言語の選択は純粋に可読性の問題です。

例 — TON によるオンディレイタイマー

TON (オンディレイタイマー) は入力信号を設定可能な時間だけ遅延します。 FBD では以下を行います:

  • 入力変数 startTON インスタンスの IN ピンに配線、
  • T#5s入力変数PT ピンに配線、
  • Q 出力を 出力変数 lampe に接続。

ST では次のようになります:

PROGRAM PLC_PRG
VAR
    start  AT %IX0.0 : BOOL;
    lampe  AT %QX0.0 : BOOL;
    tmr    : TON;
END_VAR

tmr(IN := start, PT := T#5s);
lampe := tmr.Q;
END_PROGRAM

これは FBD 図からコンパイラが生成する形そのものです — 変数インスタンス tmrBlock ボックスで、2 本のワイヤが 2 つの := 代入です。

関連項目