SPS Programmiersprache: FUP (Funktionsplan)

Um was geht es hier?

Es soll hier die SPS Programmiersprache FUP erklärt werden. Dies steht für Funktionsplan. Im Englischen heißt sie FBD. FBD bedeutet Funktion Block Diagram. Am Ende dieses Artikels sollst du einfache Programme in ihr erstellen können.

Allgemeines zu FUP (Funktionsplan)

Die SPS Programmiersprache FUP ist eine grafisch aufgebaute aus Blöcken. Gelegentlich wird sie auch als FBS bezeichnet. FBS bedeutet Funktionsbausteinsprache. FUP ist der Norm DIN EN61131-3 definiert. Du bist ihr schonmal in der Einführung begegnet. Anhand der alternativen Bezeichnung FBS wird klar, dass es hier um Bausteine geht. Diese werden miteinander verknüpft. Diese Verknüpfung nennt man Schaltnetz. Schaltnetze sind Funktionen aus Logikgattern ohne Speicher. Hier werden aus definierten Eingangssignalen ein oder mehrere Ausgangssignale gebildet. Die Schaltung merkt sich nichts. Dies versteht man unter Schaltnetz. Der Vollständigkeit wegen möchte ich Schaltwerk erwähnen. Dieses System kann Zustände speichern. Dies kann ein Zwischenergebnis, Eingang oder Ausgang sein.

Funktionen zu FUP (Funktionsplan)

Anhand von Funktionsblöcken wird hier eine Schaltung erstellt. Der Funktionsplan kennt die Logikbausteine NOT, AND, OR und XOR. Diese Bausteine sind dir aus dem Artikel Logikgatter bekannt. Im Gegensatz zum KOP kennt sie keinen Öffner. Dies muss hier mit dem NOT realisiert werden.

 TIA-Portal FUP Funktionsplan

Die Abbildung zeigt nochmals das Beispiel mit der Lampe. Du kennst es aus der Einführung. Der Helligkeitssensor ist mit einem Kreis versehen. Dies ist ein NOT. Es invertiert das Signal. Somit braucht die Programmiersprache keinen Öffner. Weitere Bausteine findest du in der rechten Seitenleiste. Hier ist unter anderem das exklusive Oder (XOR). Alternativ geht das auch über die Symbolleiste. Klicke hierzu auf den "??" Block. Ganz rechts in der Symbolleiste ist der "=" Block. Dieser macht eine Zuweisung. Hier schaltet er die Lampe. Siehe hierzu nochmal das Bild.

Vielleicht ist dir der gelbe Stern aufgefallen. Dieser befindet sich in den Blöcken unten links. Mit ihm kannst du neue Eingänge erstellen. Drücke einmal auf ihn um ein AND mit drei Eingängen zu erzeugen.

Beispiel TIA Portal Motor

Dies sind die einfachen Funktionen. Zu erwähnen ist noch ein Vergleich. Dargestellt ist es im oberen Bild. Stelle dir vor du hast einen Motor. Von diesem Motor misst du die Drezahl. Ab einer bestimmten Drehzahl soll eine Warnung erfolgen. Diese kann akustisch oder visuell sein. Hierzu vergleichst du Soll- und Istdrezahl. Verbal ausgedrückt heißt dies: "Wenn die Motordrehzahl größer ist als Wert X, dann schalte Bit A." Der Vergleich hat hier die Kurzform ">=". Hierbei ist der Variablentyp noch erforderlich. Hierzu später mehr. Soweit zum Funktionsplan. Eigentlich ganz einfach, oder?