Die für die Programmierung im CFC Editor verfügbaren Grafikelemente werden in einer Toolbox bereitgestellt. Die Toolbox kann mit dem Befehl im Menü in einem Ansichtsfenster geöffnet werden.
Wählen Sie das gewünschte Element in der Toolbox aus, und verwenden Sie die Ziehen-und-Ablegen-Methode, um es in das Editorfenster einzufügen.
Neben den Programmierelementen gibt es auch einen Eintrag an oberster Stelle der Werkzeugliste. Solange dieser Eintrag ausgewählt ist, hat der Cursor die Form eines Pfeils, und Sie können Elemente im Editorfenster auswählen, um sie zu positionieren und zu bearbeiten.
Name |
Symbol |
Beschreibung |
---|---|---|
Seite |
![]() |
Die Seitenzahl wird entsprechend der Position der Seite automatisch vergeben. Sie können den Namen (in diesem Fall |
Kontrollpunkt |
![]() |
Kontrollpunkte werden benötigt, um ein manuell geändertes Routing von Verbindungslinien zu korrigieren. Dadurch wird verhindert, dass die Änderung durch den Befehl rückgängig gemacht wird. Mithilfe von zwei Kontrollpunkten können Sie ein bestimmtes Segment einer Linie definieren, deren Routing Sie ändern möchten. |
Eingang |
![]() |
Sie können den durch |
Ausgang |
![]() |
|
Baustein |
![]() |
Ein Baustein kann Operatoren, Funktionen, Funktionsbausteine oder Programme darstellen. Sie können den durch
Wenn Sie einen Funktionsbaustein einfügen, wird ein anderer Wenn ein vorhandener Baustein durch einen anderen ersetzt wird (mittels Änderung des eingegebenen Namens) und der neue Baustein eine andere Mindest- oder Höchstanzahl an Ein- oder Ausgangsanschlüssen aufweist, werden die Anschlüsse entsprechend angepasst. Wenn Anschlüsse entfernt werden müssen, wird der unterste zuerst entfernt. |
Sprung |
![]() |
Das Sprung-Element wird verwendet, um die Position anzugeben, an der die Programmausführung fortgesetzt werden soll. Diese Position ist durch eine Marke definiert (siehe unten). Deswegen müssen Sie den durch |
Sprungmarke |
![]() |
Eine Marke kennzeichnet die Position, zu der das Programm springen kann (siehe Sprung-Element). Im Online-Modus wird automatisch eine Return-Marke zur Kennzeichnung des Endes einer POU eingefügt. |
return |
![]() |
Im Online-Modus wird automatisch ein Return-Element in der ersten Spalte und nach dem letzten Element im Editor eingefügt. Bei der schrittweisen Verarbeitung erfolgt automatisch ein Sprung zum Return-Element, bevor die Ausführung der POU beendet wird. |
Kompositor |
![]() |
Ein Kompositor dient dazu, einen Eingang eines Bausteins vom Typ „Struktur“ zu handhaben. Der Kompositor zeigt die Strukturkomponenten an und macht sie so dem Programmierer im CFC-Editor zugänglich. Zu diesem Zweck müssen Sie den Kompositor wie die betroffene Struktur nennen (indem Sie |
Selektor |
![]() |
Ein Selektor dient im Gegensatz zum Kompositor dazu, einen Ausgang eines Bausteins vom Typ „Struktur“ zu handhaben. Der Selektor zeigt die Strukturkomponenten an und macht sie dem Programmierer im CFC-Editor zugänglich. Zu diesem Zweck müssen Sie den Selektor wie die betroffene Struktur nennen (indem Sie |
Kommentar |
![]() |
Mit diesem Element kann ein Kommentar in das Diagramm eingefügt werden. Markieren Sie den Platzhaltertext, und ersetzen Sie ihn durch einen beliebigen Text. Ein Zeilenumbruch innerhalb eines Kommentars kann mithilfe der Tastenkombination Strg + Eingabe eingefügt werden. |
Verbindungsmarke – Quelle Verbindungsmarke – Ziel |
![]() ![]() |
Zwischen Elementen können Verbindungsmarken anstelle von Verbindungslinien verwenden werden. Dies dient zur Vereinfachung komplexer Diagramme. Um eine gültige Verbindung herzustellen, weisen Sie am Ausgang eines Elements eine Quell-Verbindungsmarke und am Eingang des anderen Elements eine Ziel-Verbindungsmarke (siehe unten) zu. Weisen Sie beiden Marken denselben Namen zu (keine Unterscheidung von Groß-/Kleinschreibung). Benennung:
Die erste Quell-Verbindungsmarke, die in den CFC-Editor eingefügt wird, erhält standardmäßig die Benennung Um eine Verbindungsmarke im Diagramm zu verwenden, ziehen Sie sie aus der Toolbox in das Editorfenster, und verbinden Sie anschließend den Anschluss mit dem Ausgangs- oder Eingangsanschluss des entsprechenden Elements. Alternativ können Sie eine vorhandene normale Verbindungslinie mit dem Befehl konvertieren. Dieser Befehl ermöglicht auch die Rückkonvertierung von Verbindungsmarken zu normalen Verbindungslinien.Beispielabbildungen hierzu finden Sie im Kapitel Verbindungsmarke. |
Eingangsanschluss |
![]() |
Abhängig vom Bausteintyp kann ein weiterer Eingang hinzugefügt werden. Dazu muss das Bausteinelement im CFC-Netzwerk ausgewählt und das Eingangsanschluss-Element auf dem Baustein gezeichnet werden. Sie können eine Eingangs- oder Ausgangsverbindung zu einer anderen Position im Baustein ziehen, indem Sie die -Taste gedrückt halten. |
Ausgangsanschluss |
– |
Abhängig vom Bausteintyp kann ein weiterer Ausgang hinzugefügt werden. Dazu muss das Bausteinelement im CFC-Netzwerk ausgewählt und das Ausgangsanschluss-Element auf dem Baustein gezeichnet werden. Sie können eine Eingangs- oder Ausgangsverbindung zu einer anderen Position im Baustein ziehen, indem Sie die -Taste gedrückt halten. |
Ein CFC-Programm cfc_prog
verarbeitet eine Instanz eines Funktionsbausteins fublo1
, welche eine Eingangsvariable struvar
des Strukturtyps hat. Verwenden Sie den Kompositor, um auf die Strukturkomponenten zuzugreifen.
Strukturdefinition stru1
:
TYPE stru1 :
STRUCT
ivar:INT;
strvar:STRING:='hallo';
END_STRUCT
END_TYPE
Deklaration und Implementierung des Funktionsbausteins fublo1
:
FUNCTION_BLOCK fublo1
VAR_INPUT
struvar:STRU1;
END_VAR
VAR_OUTPUT
fbout_i:INT;
fbout_str:STRING;
END_VAR
VAR
fbvar:STRING:='world';
END_VAR
fbout_i:=struvar.ivar+2;
fbout_str:=CONCAT (struvar.strvar,fbvar);
Deklaration und Implementierung des Programms cfc_prog
:
PROGRAM cfc_prog
VAR
intvar: INT;
stringvar: STRING;
fbinst: fublo1;
erg1: INT;
erg2: STRING;
END_VAR
Kompositor-Element
1 Kompositor
2 Funktionsbaustein mit Eingangsvariable struvar
des Strukturtyps stru1
Ein CFC-Programm cfc_prog
verarbeitet eine Instanz eines Funktionsbausteins fublo2
, welche eine Ausgangsvariable fbout
des Strukturtyps stru1
hat. Verwenden Sie den Selektor, um auf die Strukturkomponenten zuzugreifen.
Strukturdefinition stru1
:
TYPE stru1 :
STRUCT
ivar:INT;
strvar:STRING:='hallo';
END_STRUCT
END_TYPE
Deklaration und Implementierung des Funktionsbausteins fublo1
:
FUNCTION_BLOCK fublo2
VAR_INPUT CONSTANT
fbin1:INT;
fbin2:DWORD:=24354333;
fbin3:STRING:='hallo';
END_VAR
VAR_INPUT
fbin : INT;
END_VAR
VAR_OUTPUT
fbout : stru1;
fbout2:DWORD;
END_VAR
VAR
fbvar:INT;
fbvar2:STRING;
END_VAR
Deklaration und Implementierung des Programms cfc_prog
:
VAR
intvar: INT;
stringvar: STRING;
fbinst: fublo1;
erg1: INT;
erg2: STRING;
fbinst2: fublo2;
END_VAR
Die Abbildung zeigt ein Selektorelement, bei dem die nicht verwendeten Anschlüsse entfernt wurden, indem der Befehl
ausgeführt wurde.
1 Funktionsbaustein mit Ausgangsvariable fbout
des Strukturtyps stru1
2 Selektor