Skip to main content

オブジェクト: アクション

シンボル: _cds_icon_obj_action.png

ファンクションブロックまたはプログラムにアクションを追加できます。すべてのアクションには名前があります。

アクションオブジェクトは追加のコードを実装します。これらのコードは、上位POUの基本実装とは異なる言語でプログラムできます。アクションは多くの場合 SFC で実装されます。アクションには独自の変数宣言はありません。上位のベース実装のデータを処理し、その変数 () を使用しますVARVAR_INPUTVAR_OUTPUTVAR_IN_OUT)。

オブジェクト指向プログラミングでは、ファンクションブロックとその下位アクションを継承することができます。

詳細については、以下を参照してください。 継承POUを生成する際の入力サポート

アクションを挿入

を追加 アクション 関数ブロックまたはプログラムに プロジェクト[オブジェクトを追加]アクション 開いたダイアログで、コマンドを実行し、新しいアクションのプロパティを定義します。

61. アクションを追加

[名前]

アクションの名前

実装言語

使用可能な実装言語のリストボックスから選択



コール

構文:

<program name> . <action name> ( <parameter passing> )

または

<name of function block instance> . <action name> ( <parameter passing> )

<program name> .

[オプション]

プログラムの名前を含むインスタンスパス

プログラムの対応する基本実装でアクションが呼び出される場合は、アクション名を指定すれば十分です。

<name of function block instance> .

[オプション]

ファンクションブロックインスタンスの名前を含むインスタンスパス

ファンクションブロックの対応する基本実装でアクションが呼び出される場合は、アクション名を指定すれば十分です。

<action name>

必須

アクションの名前

( <parameter passing> )

[オプション]

パラメーターを渡す場合、引数はそれぞれの関数ブロックと同じ方法で入力変数と出力変数に渡すことができます。

見る ファンクションブロック

アクションで使用可能な変数は、上位POUで宣言されます。同様に、アクションが呼び出されたときにパラメーターを渡すことができます。変数 (VARVAR_INPUTVAR_OUTPUTVAR_IN_OUT(メソッド呼び出しとは対照的に) 上位プログラムの) またはファンクションブロックインスタンスにアクセスできます。

そのため、グラフィカルエディターでアクションが呼び出されると、ベース POU のすべての I/O が表示されます。

524.

を呼び出す リセット アクション (Counter 別の POU からのファンクションブロック)。

ファンクションブロックのインスタンス化

PROGRAM PLC_PRG
VAR
    Inst : Counter;
END_VAR

を呼び出す リセット IL でのアクション

CAL Inst.Reset(In := FALSE)
LD Inst.Out
ST ERG

を呼び出す リセット ST でのアクション

Inst.Reset(In := FALSE);
Erg := Inst.out;

を呼び出す リセット FBD のアクション

_cds_img_action_fbd.png


525.

ファンクションブロックの宣言 FB_Test

FUNCTION_BLOCK FB_Test
VAR_INPUT
    i_xTest : BOOL;
    i_lrTest : LREAL;
END_VAR
VAR_OUTPUT
    q_xTest : BOOL;
    q_lrTest : LREAL;
END_VAR
VAR
    xSet : BOOL;
    xReset : BOOL;
    SR_0 : SR;
    R_TRIG_0 : R_TRIG;
END_VAR

の実装 Act_Text 各ファンクションブロックの I/O にアクセスできるアクション (FBD 内)

_cds_object_action_example_textact.png


ヒント

アクションはSFC実装言語でよく使用されます。