Unterschiede zwischen einer Funktion und einem Funktionsbaustein

Funktion

Eine Funktion hat die folgenden Eigenschaften:

oIst eine POU (Program Organization Unit), die ein einzelnes direktes Ergebnis zurückgibt

oWird direkt über ihren Namen aufgerufen (nicht über eine Instanz)

oIst nicht instanziiert

oKann als Operand in anderen Ausdrücken verwendet werden

Beispiele: Boolesche Operatoren (AND), Berechnungen, Konvertierung (BYTE_TO_INT)

Funktionsbaustein

Ein Funktionsbaustein hat die folgenden Eigenschaften:

oIst eine POU (Program Organization Unit), die ein oder mehrere direkte Ausgänge zurückgibt

oMuss von einer Instanz aufgerufen werden (Funktionsbausteinkopie mit dediziertem Namen und Variablen)

oHat für jede Instanz einen persistenten Status (Ausgänge und interne Variablen) von einem Aufruf zum anderen aus einem Funktionsbaustein oder Programm

Beispiele: Zeitgeber, Zähler

In dem nachstehenden Beispiel ist Timer_ON eine Instanz des Funktionsbausteins TON:

G-SE-0004468.1.gif-high.gif