Attribut: dataflow
Mit dem Pragma steuern Sie den Datenfluss in der Abarbeitung von Funktionsbausteinen im FUP/KOP/AWL-Editor. Das Attribut legt fest, an welchem Eingang oder Ausgang eines Funktionsbausteins die Weiterverbindung zum nächsten oder vorherigen Baustein anliegt.
Sie dürfen nur einen Eingang und einen Ausgang in der Deklaration eines Funktionsbausteins mit dem Attribut auszeichnen.
Bei Funktionsbausteinen ohne Attribut 'dataflow'
wird automatisch der Datenfluss bestimmt: Zunächst wird die Verbindung zwischen einem Ausgang und einem Eingang gleichen Datentyps gelegt. Dabei wird zuerst immer die oberste Eingangs- oder Ausgangsvariable der Funktionsbausteine genommen. Wenn es keine Variablen mit übereinstimmendem Datentyp gibt, wird der obersten Ausgang mit dem obersten Eingang der benachbarten Bausteins verbunden.
Syntax:
{attribute 'dataflow'}
Einfügeort | Zeile oberhalb der Zeile mit der Deklaration der entsprechenden Variablen |
| Kennzeichnet den Eingang oder Ausgang des Funktionsbausteins, der mit dem vorherigen oder nächsten Baustein verbunden ist |
Die Verbindung zwischen FB
und dem vorhergehenden Funktionsbaustein erfolgt über die Eingangsvariable i1
. Die Verbindung zwischen FB
und dem nachfolgenden Funktionsbaustein erfolgt über die Ausgangsvariable outRes1
.
FUNCTION_BLOCK FB VAR_INPUT r1 : REAL; {attribute 'dataflow'} i1 : INT; i2 : INT; r2 : REAL; END_VAR VAR_OUTPUT {attribute 'dataflow'} outRes1 : REAL; out1 : INT; g1 : INT; g2 : REAL; END_VAR