Skip to main content

Objekt: Aktion

Symbol: _cds_icon_obj_action.png

Sie können einem Funktionsbaustein oder einem Programm Aktionen hinzufügen. Jede Aktion hat einen Namen.

Das Aktionsobjekt implementiert zusätzlichen Code, der in einer anderen Sprache programmiert sein kann als die Basisimplementierung des übergeordneten Programmierbausteins. Aktionen werden häufig in AS implementiert. Eine Aktion hat keine eigene Variablendeklaration. Sie arbeitet mit den Daten ihrer übergeordneten Basisimplementierung und verwendet deren Variablen (VAR, VAR_INPUT, VAR_OUTPUT, VAR_IN_OUT).

In der objektorientierten Programmierung ist es möglich, einen Funktionsbaustein zusammen mit seinen untergeordneten Aktionen zu vererben.

Für weitere Informationen siehe: Eingabeunterstützung beim Erzeugen von erbenden Bausteinen,

Aktion einfügen

Sie fügen einem Funktionsbaustein oder einem Programm eine Aktion mit dem Befehl ProjektObjekt hinzufügenAktion hinzu und legen die Eigenschaften der neuen Aktion im sich öffnenden Dialog fest.

Tabelle 61. Aktion hinzufügen

Name

Name der Aktion

Implementierungssprache

Ausgewählt aus der Combobox-Liste mit den verfügbaren Implementierungssprachen



Aufruf

Syntax:

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

oder

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

<program name> .

Optional

Instanzpfad mit Name des Programms

Wenn eine Aktion in der zugehörigen Basisimplementierung des Programms aufgerufen wird, genügt die Angabe des Aktionsnamens.

<name of function block instance> .

Optional

Instanzpfad mit Name der Funktionsbaustein-Instanz

Wenn eine Aktion in der zugehörigen Basisimplementierung des Funktionsbausteins aufgerufen wird, genügt die Angabe des Aktionsnamens.

<action name>

Obligatorisch

Name der Aktion

( <parameter passing> )

Optional

Bei der Parameterübergabe können so wie beim zugehörigen Funktionsbaustein Argumente an die Eingabe- und Ausgabevariablen übergeben werden.

Siehe Funktionsbaustein

Die in der Aktion verfügbaren Variablen sind im übergeordneten Baustein deklariert. Gleichwohl können beim Aktionsaufruf Parameter übergeben werden. Es kann auf die Variablen (VAR, VAR_INPUT, VAR_OUTPUT, VAR_IN_OUT) des übergeordneten Programms oder der Funktionsbaustein-Instanz (anders als beim Methodenaufruf) zugegriffen werden.

Beim Aufruf einer Aktion in einem grafischen Editoren werden deshalb alle E/As des Basisbausteins angezeigt.

Beispiel 524. Beispiel

Aufrufe der Aktion Reset (Funktionsbaustein Counter) von einer anderen POU aus.

Instanzierung des Funktionsbausteins

PROGRAM PLC_PRG
VAR
    Inst : Counter;
END_VAR

Aufruf der Aktion Reset in AWL

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

Aufruf der Aktion Reset in ST

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

Aufruf der Aktion Reset in FUP

_cds_img_action_fbd.png


Beispiel 525. Beispiel

Deklaration des Funktionsbausteins 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

Implementierung der Aktion Act_Text (in FUP) mit Zugriff auf die E/As des zugehörigen Funktionsbausteins

_cds_object_action_example_textact.png


Tipp

Aktionen werden häufig in der Implementierungssprache AS verwendet.