IEC 61131-3 Funktionen und Funktionsbausteine
IEC 61131-3 Funktionen
Eine Funktion (kurz FU) ist eine POE mit mehreren Eingangsparametern und genau einem Ausgangsparameter (Rückgabewert). Das Aufrufen einer Funktion mit denselben Eingangswerten liefert immer das gleiche Ergebnis. Der Rückgabewert kann ein einfacher Datentyp sein. In einer Funktion können andere Funktionen aufgerufen werden, jedoch keine Funktionsbausteine oder Programme. Rekursive Aufrufe sind nicht erlaubt.
Funktionen können nur elementare Datentypen verarbeiten. Werden anwenderdefinierte Datentypen, wie z.B. STRUCTs oder ARRAYs in Funktions-POEs verwendet, führt dies zu einem Compilerfehler (Fehlermeldung des CIL-Generators).
Die IEC 61131-3 definiert Standard-Funktionen. Abhängig von der eingesetzten Hardware und vom Steuerungstyp stehen möglicherweise nicht alle Standard-Funktionen zur Verfügung. Zusätzliche Firmware-Funktionen sind evtl. verfügbar.
Die IEC 61131-3 definiert u.a. die folgenden Standardfunktionen:
IEC 61131-3 Funktionsbausteine
Ein Funktionsbaustein (kurz FB) ist eine POE mit mehreren Eingangs- und Ausgangsparametern und internem Speicher. Der Wert, den ein Funktionsbaustein als Ergebnis zurückgibt, hängt vom aktuellen Wert seines internen Speichers ab. In einem Funktionsbaustein können weitere Funktionsbausteine oder Funktionen, aber keine Programme aufgerufen werden. Rekursive Aufrufe sind nicht erlaubt.
Die IEC 61131-3 definiert Standard-Funktionsbausteine. Abhängig von der eingesetzten Hardware und vom Steuerungstyp sind möglicherweise nicht alle Standardfunktionsbausteine verfügbar. Zusätzliche Firmware-Funktionsbausteine können evtl. verwendet werden.
Um einen Funktionsbaustein in einem anderen Funktionsbaustein oder Programm aufzurufen, muss in der aufrufenden POE eine Instanz des aufgerufenen FBs mit einem eindeutigen Instanznamen erstellt und deklariert werden. Die Instanzdeklaration muss in die 'Variablen'-Tabelle eingefügt werden (direkt oder während der Bearbeitung des Codes). Jede FB-Instanz ist in der 'Variablen'-Tabelle deklariert. Diese Deklaration enthält den eindeutigen FB-Instanznamen, den Funktionsbausteinnamen und das Deklarationsschlüsselwort 'Lokal' (angezeigt in der Spalte 'Verwendung').
Weitere Infos
Weitere Informationen zur Instanziierung von Funktionsbausteinen finden Sie im Thema "Funktionsbaustein-Instanziierung". |
Die IEC 61131-3 definiert u.a. die folgenden Standard-Funktionsbausteine: