Programmiersprachen nach IEC 61131-3 (KOP, FUP, AWL, ST, AS)
Wer heute eine Maschine in Betrieb nimmt, trifft fast immer auf eine SPS – und damit auf ein Programm, das in einer bestimmten Sprache geschrieben ist. Was viele überrascht: Es gibt nicht die eine SPS-Sprache, sondern fünf. Sie sind in einer internationalen Norm festgelegt, lassen sich im selben Projekt mischen und haben jeweils ihre eigenen Stärken. Dieser Beitrag zeigt, welche fünf das sind, wie ihre Logik tickt und wann man welche nimmt.
Vorwissen
- Was ist eine SPS? – Aufbau und Funktionsweise
- Zyklischer Programmablauf (EVA-Prinzip)
- Logikgatter: AND, OR, NOT, NAND, NOR, XOR
Lernziele
Nach diesem Beitrag kannst du:
- erklären, warum SPS-Programmiersprachen genormt sind und was die IEC 61131-3 regelt
- die fünf Sprachen KOP, FUP, AWL, ST und AS ihrer Darstellungsart zuordnen (grafisch, textuell, ablauforientiert)
- die typischen Stärken und Grenzen jeder Sprache benennen
- für eine konkrete Aufgabe begründet die passende Sprache auswählen
- nachvollziehen, warum mehrere Sprachen in einem einzigen Projekt sinnvoll kombiniert werden
1. Warum eine Norm für SPS-Sprachen?
In den Anfangsjahren der speicherprogrammierbaren Steuerung kochte jeder Hersteller sein eigenes Süppchen. Wer auf einer Siemens-Anlage programmieren konnte, stand vor einer fremden Steuerung eines anderen Herstellers oft wieder am Anfang. Das Wissen war an ein einzelnes System gebunden, nicht an die Sache selbst.
Genau hier setzt die IEC 61131 an – eine internationale Norm, die SPS-Systeme von der Hardware bis zur Programmierung beschreibt. Der für uns entscheidende Teil ist die IEC 61131-3: Sie legt fest, welche Programmiersprachen es gibt und wie ihre Sprachelemente aufgebaut sind. In Österreich gilt sie als ÖNORM EN 61131-3 und ist damit der verbindliche, herstellerübergreifende Bezugspunkt für die berufliche Praxis.
Wichtig ist das richtige Bild im Kopf: Die Norm definiert nicht eine einzige Sprache mit Varianten, sondern fünf gleichwertige Sprachen. Sie sind kein Entweder-oder. In einem realen Projekt darf – und soll – man sie mischen: ein Programmteil in der einen, ein anderer in der passenderen Sprache.
Die Sprachen laufen auf der SPS im immer gleichen Takt ab: Eingänge lesen, Programm verarbeiten, Ausgänge schreiben. Dieses zyklische Prinzip (EVA) und der grundsätzliche Aufbau einer SPS sind eigene Themen und werden hier vorausgesetzt. Für diesen Beitrag genügt: Egal in welcher der fünf Sprachen geschrieben, das Ergebnis wird intern in dieselbe abgearbeitete Logik übersetzt.
Die fünf Sprachen lassen sich in drei Gruppen einteilen:
| Gruppe | Sprachen | Darstellung |
|---|---|---|
| Grafisch | KOP, FUP | Bildhaft, verschaltet |
| Textuell | AWL, ST | Zeilen aus Befehlen bzw. Code |
| Ablauforientiert | AS | Schritte und Übergänge |
Ein Kollege sagt: „IEC 61131-3 ist die SPS-Programmiersprache.“ Was ist an dieser Aussage falsch?
- a) Die Norm beschreibt gar keine Programmierung, sondern nur Hardware
- b) Die Norm definiert nicht eine, sondern fünf gleichwertige Sprachen
- c) Die Norm gilt nur für einen einzigen Hersteller
- d) Die Norm schreibt vor, dass pro Projekt nur eine Sprache verwendet werden darf
Richtig: b)
Erklärung: Richtig ist b). Die IEC 61131-3 legt fünf Sprachen fest, die gleichwertig nebeneinanderstehen und im selben Projekt gemischt werden dürfen. a) ist falsch, weil gerade Teil 3 die Programmierung regelt. c) trifft nicht zu, der Sinn der Norm ist ja die herstellerübergreifende Vereinheitlichung. d) widerspricht dem Mischprinzip.
Worin lag das zentrale Problem vor der Normung der SPS-Sprachen?
- a) Programmierkenntnisse waren an das jeweilige Herstellersystem gebunden
- b) SPS waren zu langsam für industrielle Anwendungen
- c) Es gab überhaupt keine grafischen Sprachen
- d) Die Zykluszeit war nicht definiert
Richtig: a)
Erklärung: Richtig ist a). Jeder Hersteller hatte eigene Sprachen, sodass Wissen kaum übertragbar war. b) und d) betreffen die Hardware bzw. den Ablauf, nicht das Sprachenproblem. c) ist sachlich falsch, grafische Darstellungen wie der Kontaktplan existierten bereits.
In welche drei Gruppen lassen sich die fünf Sprachen der IEC 61131-3 sinnvoll einteilen?
- a) Schnell, mittel, langsam
- b) Siemens, Beckhoff, B&R
- c) Einfach, mittel, komplex
- d) Grafisch, textuell, ablauforientiert
Richtig: d)
Erklärung: Richtig ist d). KOP und FUP sind grafisch, AWL und ST textuell, AS ist ablauforientiert. a) und c) sind keine in der Norm vorgesehenen Kategorien. b) sind Hersteller, keine Sprachgruppen.
2. Die zwei grafischen Sprachen: KOP und FUP
Die beiden grafischen Sprachen zeigen die Logik als Bild – man sieht, wie Signale verknüpft sind, statt sie aus Textzeilen herauslesen zu müssen. Gerade beim Einstieg ist das ein großer Vorteil.
KOP – der Kontaktplan. KOP stammt direkt aus der klassischen Relais- und Schütztechnik. Eine Logik wird als Strompfad gezeichnet: links eine senkrechte Schiene, von der aus „Strom“ nach rechts durch Kontakte zu einer Spule fließt. Geschlossene Kontakte lassen das Signal durch, offene unterbrechen es. Wer schon einmal einen Stromlaufplan gelesen hat, findet sich sofort zurecht – der Kontaktplan sieht aus wie ein abstrahierter Schaltplan. Das macht KOP besonders bei Elektrikern und Mechatronikern beliebt, die aus der Verdrahtung kommen.
FUP – der Funktionsplan. FUP zeigt dieselbe Logik anders: als verschaltete Funktionsblöcke. Ein Block mit dem Symbol & ist eine UND-Verknüpfung, ein Block mit ≥1 eine ODER-Verknüpfung. Die Signale laufen von links als Eingänge in den Block und kommen rechts als Ergebnis heraus. Wer Logikgatter aus der Digitaltechnik kennt, erkennt FUP sofort wieder – es ist im Grunde die gleiche Denkweise.
Beide Sprachen beschreiben denselben Sachverhalt und lassen sich in den Engineering-Tools oft per Knopfdruck ineinander umwandeln. Welche man nimmt, ist häufig eine Frage der Herkunft und Gewohnheit: KOP für die „Relais-Denker“, FUP für die „Gatter-Denker“.
Wie eine Reihenschaltung zur UND-Bedingung wird, wie ODER-Verknüpfungen entstehen oder wie man eine Selbsthaltung aufbaut, behandeln eigene Beiträge ausführlich – hier wird das nicht vertieft. Für den Überblick reicht: KOP und FUP sind die erste Wahl für überschaubare bis mittlere Verknüpfungslogik – also dort, wo es um „Wenn diese Bedingungen erfüllt sind, dann schalte“ geht.
Ihre Grenze zeigt sich, sobald gerechnet werden muss. Sobald Formeln, viele Variablen oder verschachtelte Abläufe ins Spiel kommen, wird das Bild schnell unübersichtlich und zieht sich über viele Netzwerke. Dann sind die textuellen Sprachen klar im Vorteil.
Das folgende Schema zeigt dieselbe einfache Logik („Ausgang nur, wenn beide Bedingungen erfüllt“) einmal als KOP-Strompfad und einmal als FUP-Block:
Aus welcher technischen Tradition stammt die Darstellungsweise des Kontaktplans (KOP)?
- a) aus der Hochsprachen-Programmierung
- b) aus der klassischen Relais- und Schütztechnik
- c) aus der Pneumatik-Schaltplandarstellung
- d) aus der Regelungstechnik
Richtig: b)
Erklärung: Richtig ist b). KOP bildet einen Strompfad mit Kontakten und Spule ab, genau wie ein abstrahierter Stromlaufplan der Relaistechnik. a) beschreibt eher ST. c) und d) sind eigene Fachgebiete mit anderer Darstellung.
In einem FUP-Programm steht ein Block mit dem Zeichen ≥1 und zwei Eingängen E1 und E2. Welche Verknüpfung liegt vor und wann ist der Ausgang aktiv?
- a) ODER – Ausgang aktiv, sobald mindestens ein Eingang 1 ist
- b) UND – Ausgang aktiv, wenn beide Eingänge 1 sind
- c) NICHT – Ausgang ist das invertierte Eingangssignal
- d) Exklusiv-ODER – Ausgang aktiv, wenn genau ein Eingang 1 ist
Richtig: a)
Erklärung: Richtig ist a). Das Symbol ≥1 steht für die ODER-Verknüpfung: Der Ausgang wird wahr, sobald wenigstens ein Eingang wahr ist. Das UND-Symbol wäre & (b). NICHT und XOR haben eigene Symbole (c, d).
Eine Aufgabe verlangt eine umfangreiche Berechnung mit mehreren Zwischenwerten und einer Formel. Warum sind KOP und FUP dafür eher ungeeignet?
- a) Sie können grundsätzlich keine Ausgänge schalten
- b) Sie laufen nicht im SPS-Zyklus
- c) Sie sind nicht in der IEC 61131-3 enthalten
- d) Die grafische Darstellung wird bei Rechenoperationen schnell unübersichtlich
Richtig: d)
Erklärung: Richtig ist d). Grafische Sprachen glänzen bei Verknüpfungslogik, doch Rechnungen mit vielen Variablen zerfasern das Bild über viele Netzwerke. a), b) und c) sind sachlich falsch – beide Sprachen schalten Ausgänge, laufen im Zyklus und sind genormt.
3. Die zwei textuellen Sprachen: AWL und ST
Wo das Bild an seine Grenzen kommt, übernehmen die textuellen Sprachen. Hier wird Logik nicht gezeichnet, sondern als Folge von Zeilen geschrieben.
AWL – die Anweisungsliste. AWL ist die maschinennächste der fünf Sprachen. Das Programm besteht aus einzelnen Befehlszeilen, die nacheinander abgearbeitet werden: ein Signal laden, mit dem nächsten verknüpfen, das Ergebnis einem Ausgang zuweisen. Die Sprache ist sehr kompakt und liegt nah an dem, was die SPS intern wirklich tut. Der Preis dafür: AWL ist schwer zu lesen und zu warten. Schon bei mittlerem Umfang verliert man leicht den Überblick, weil man jede Zeile einzeln im Kopf nachvollziehen muss. In neuen Projekten ist AWL deshalb stark rückläufig und gilt vielerorts als Auslaufmodell – moderne Systeme setzen kaum noch darauf.
ST – der Strukturierte Text. ST ist eine echte Hochsprache und im Aufbau an Pascal angelehnt. Hier programmiert man mit Konstrukten, die aus der klassischen Softwareentwicklung vertraut sind: Bedingungen mit IF … THEN … ELSE, Fallunterscheidungen mit CASE, Schleifen mit FOR oder WHILE, dazu Variablen und Rechenoperationen. Das macht ST zur mächtigsten der fünf Sprachen, wenn es um komplexe Algorithmen, Berechnungen und Datenverarbeitung geht. Eine längere Formel, die in KOP über zig Netzwerke ginge, steht in ST in einer einzigen Zeile.
Eine Eigenheit von ST bringt Umsteiger aus Sprachen wie C oder Python regelmäßig ins Stolpern: Die Zuweisung wird mit := geschrieben, nicht mit =. Das einfache Gleichheitszeichen = ist in ST ein Vergleich. Wer also einer Variablen einen Wert geben will, schreibt x := 5;, und wer prüfen will, ob x gleich 5 ist, schreibt x = 5. Das ist genau die Pascal-Konvention, und gerade in der Praxis mit Systemen wie B&R oder Beckhoff führt die Verwechslung zu Fehlern, die man lange sucht.
IF taste_start = 1 THEN // = ist hier ein Vergleich
- drehzahl := 1500; // := ist die Zuweisung
- END_IF
Die Wahl zwischen grafisch und textuell läuft am Ende auf eine einfache Frage hinaus: Geht es um Verknüpfungslogik, sind KOP/FUP angenehmer; geht es um Rechnen und komplexe Strukturen, spielt ST seine Stärke aus. AWL kann zwar dasselbe wie ST, ist aber so unkomfortabel, dass es in neuen Anwendungen kaum noch eine Rolle spielt.
Warum wird AWL in neuen SPS-Projekten kaum noch eingesetzt?
- a) AWL ist nicht in der IEC 61131-3 enthalten
- b) AWL kann keine Ausgänge ansteuern
- c) AWL ist zwar kompakt, aber schwer lesbar und wartungsintensiv
- d) AWL ist ausschließlich für grafische Darstellung gedacht
Richtig: c)
Erklärung: Richtig ist c). AWL liegt nah an der Maschinenebene und ist dadurch unübersichtlich und fehleranfällig in der Pflege. a) ist falsch, AWL ist eine der fünf Normsprachen. b) trifft nicht zu. d) verwechselt AWL mit KOP/FUP.
In einem ST-Programm steht die Zeile zaehler := zaehler + 1;. Was bewirkt sie?
- a) Sie weist zaehler seinen bisherigen Wert plus 1 zu
- b) Sie vergleicht, ob zaehler um 1 größer ist als sich selbst
- c) Sie löst einen Syntaxfehler aus, weil := ungültig ist
- d) Sie setzt zaehler dauerhaft auf 1
Richtig: a)
Erklärung: Richtig ist a). := ist die Zuweisung, der rechte Ausdruck wird berechnet und der Variablen zugewiesen – ein klassisches Hochzählen. b) wär ein = als Vergleich erfordern. c) ist falsch, := ist genau der korrekte ST-Operator. d) beschreibt eine andere Anweisung.
Für welche Aufgabe ist ST gegenüber KOP klar im Vorteil?
- a) Eine einfache Verriegelung von zwei Schützen
- b) Das Einlesen eines einzelnen Tasters
- c) Das direkte Schalten einer einzelnen Spule
- d) Eine mehrstufige Berechnung mit Formel und Zwischenwerten
Richtig: d)
Erklärung: Richtig ist d). Berechnungen mit mehreren Variablen stehen in ST kompakt und lesbar da, während sie in KOP über viele Netzwerke zerfasern. a), b) und c) sind einfache Verknüpfungs- bzw. Schaltaufgaben, bei denen die grafische Darstellung mindestens gleichwertig, oft angenehmer ist.
Ein Umsteiger aus C schreibt in ST motor_ein = TRUE;, um einen Ausgang zu setzen, und wundert sich, dass nichts schaltet. Wo liegt der Fehler?
- a) TRUE ist in ST kein gültiger Wert
- b) Er hat einen Vergleich = statt der Zuweisung := verwendet
- c) Ausgänge lassen sich in ST legändlich nicht setzen
- d) Der Strichpunkt am Zeilenende ist überflüssig
Richtig: b)
Erklärung: Richtig ist b). = ist in ST ein Vergleich und liefert nur wahr/falsch, ohne den Ausgang zu setzen. Korrekt wäre motor_ein := TRUE;. a) ist falsch, TRUE ist gültig. c) trifft nicht zu. d) ist falsch, der Strichpunkt schließt die Anweisung korrekt ab.
4. Die Ablaufsprache: AS
Die fünfte Sprache verfolgt eine ganz andere Idee als die übrigen vier. AS – die Ablaufsprache (auch SFC genannt) – beschreibt nicht eine einzelne Verknüpfung, sondern den zeitlichen Ablauf eines Prozesses: erst dieser Arbeitsschritt, dann jener, dann der nächste.
Das Grundgerüst besteht aus zwei Elementen: Schritten und Transitionen. Ein Schritt steht für einen Zustand, in dem eine bestimmte Aktion ausgeführt wird – etwa „Zylinder ausfahren“. Zwischen zwei Schritten liegt eine Transition, also eine Weiterschaltbedingung. Erst wenn diese Bedingung erfüllt ist (zum Beispiel „Endschalter erreicht“), wird der nächste Schritt aktiv und der vorige verlassen. So wandert die Aktivität Schritt für Schritt durch das Programm.
Damit eignet sich AS überall dort, wo ein Prozess in einer klaren Reihenfolge abläuft: Be- und Entladestationen, Verpackungsmaschinen, jede Art von Takt- oder Schrittprozess. Man sieht auf einen Blick, in welcher Phase die Anlage gerade steckt – ein großer Vorteil bei Inbetriebnahme und Fehlersuche.
Wichtig ist die Abgrenzung zu den anderen vier Sprachen: AS strukturiert nur den Ablauf. Was innerhalb eines Schrittes konkret passiert – die eigentliche Aktion und die Transitionsbedingungen – wird meist in einer der anderen Sprachen formuliert, oft in KOP, FUP oder ST. AS ist also weniger ein Konkurrent der übrigen Sprachen als eine Klammer, die sie ordnet.
Verwandt mit AS ist GRAFCET, das demselben Schritt-Transitions-Gedanken folgt. Der Unterschied ist wichtig: AS ist eine ausführbare Programmiersprache, die direkt auf der SPS läuft, während GRAFCET eine herstellerunabhängige Beschreibungs- und Dokumentationsform ist – man legt damit den Ablauf fest und entwickelt das Konzept, setzt es aber anschließend in einer ausführbaren Sprache um. Schrittketten und GRAFCET sind ein eigenes, ausführliches Thema und werden hier nur erwähnt.
Was unterscheidet AS grundlegend von KOP, FUP, AWL und ST?
- a) AS ist die einzige textuelle Sprache
- b) AS läuft nicht im SPS-Zyklus
- c) AS beschreibt den zeitlichen Ablauf eines Prozesses statt einer einzelnen Verknüpfung
- d) AS kann keine Bedingungen auswerten
Richtig: c)
Erklärung: Richtig ist c). AS strukturiert die Reihenfolge von Schritten, während die anderen Sprachen die Logik innerhalb eines Zustands beschreiben. a) ist falsch, AS ist ablauforientiert, nicht textuell. b) trifft nicht zu. d) ist falsch, Transitionen sind genau solche Bedingungen.
In einem AS-Programm bleibt der aktive Schritt bestehen, obwohl die Aktion sichtbar abgeschlossen ist. Wo liegt die wahrscheinlichste Ursache?
- a) Die Transitionsbedingung zum Weiterschalten ist (noch) nicht erfüllt
- b) Der nächste Schritt enthält keine Aktion
- c) Die Sprache AS ist dafür ungeeignet
- d) Es fehlt ein Zuweisungsoperator :=
Richtig: a)
Erklärung: Richtig ist a). Ein Schritt wird erst verlassen, wenn die zugehörige Transition wahr wird – ist die Bedingung nicht erfüllt, bleibt der Schritt aktiv. b) hat keinen Einfluss auf das Weiterschalten. c) ist falsch. d) betrifft ST, nicht die Ablauflogik von AS.
Wie verhält sich AS typischerweise zu den anderen vier Sprachen in einem Projekt?
- a) AS ersetzt alle anderen Sprachen vollständig
- b) AS darf laut Norm nicht mit anderen Sprachen kombiniert werden
- c) AS wird nur für reine Berechnungen verwendet
- d) AS strukturiert den Ablauf, die einzelnen Aktionen werden oft in KOP, FUP oder ST geschrieben
Richtig: d)
Erklärung: Richtig ist d). AS bildet die Schritt-Klammer, innerhalb der die konkreten Aktionen in anderen Sprachen ausgeführt werden. a) und b) widersprechen dem Misch- und Klammerprinzip. c) beschreibt eher ST.
5. Sprache wählen: Vergleich und Praxis
Nachdem alle fünf Sprachen vorgestellt sind, lohnt der direkte Vergleich. Die folgende Tabelle stellt sie nach den Kriterien gegenüber, die in der Praxis über die Wahl entscheiden:
| Sprache | Art | Stärke | Schwäche | Heute |
|---|---|---|---|---|
| KOP | grafisch | Verknüpfungslogik, vertraut für Elektriker | Rechnen, komplexe Abläufe | weit verbreitet |
| FUP | grafisch | Logik als Funktionsblöcke, übersichtlich | Rechnen, große Programme | weit verbreitet |
| AWL | textuell | sehr kompakt, maschinennah | schwer lesbar und wartbar | rückläufig |
| ST | textuell | Berechnungen, Algorithmen, Datenverarbeitung | bei reiner Logik weniger anschaulich | zunehmend |
| AS | ablauforientiert | sequentielle Abläufe, klare Schrittfolge | nicht für Einzelverknüpfungen gedacht | etabliert für Abläufe |
Daraus lassen sich ein paar einfache Faustregeln ableiten. Geht es um eine Verknüpfung – Bedingungen, die zusammen einen Ausgang schalten – greift man zu KOP oder FUP, je nach Gewohnheit. Steht eine Berechnung oder ein Algorithmus an, ist ST die beste Wahl. Beschreibt die Aufgabe einen Schritt-für-Schritt-Prozess, ordnet AS das Ganze. AWL nimmt man in neuen Projekten praktisch nur noch, wenn man bestehenden Altcode pflegen muss.
Eine Aufgabe lautet: „Die Sollposition soll fortlaufend aus Geschwindigkeit und verstrichener Zeit berechnet werden.“ Welche Sprache passt am besten?
- a) KOP
- b) AWL
- c) ST
- d) AS
Richtig: c)
Erklärung: Richtig ist c). Eine fortlaufende Berechnung aus mehreren Größen ist die Paradedisziplin von ST. KOP (a) würde das über viele Netzwerke unübersichtlich abbilden. AWL (b) kann es zwar, ist aber unkomfortabel. AS (d) ordnet Abläufe, rechnet aber nicht selbst.
Für die übersichtliche Sicherheitsverriegelung einer Schutztür mit wenigen UND-Bedingungen wählt ein Mechatroniker bevorzugt:
- a) KOP oder FUP, weil die Verknüpfungslogik dort am anschaulichsten ist
- b) ST, weil es am mächtigsten ist
- c) AWL, weil es am kompaktesten ist
- d) AS, weil eine Tür ein Ablauf ist
Richtig: a)
Erklärung: Richtig ist a). Eine einfache Verknüpfung von Bedingungen ist in den grafischen Sprachen am klarsten ablesbar. b) wäre überdimensioniert. c) opfert Lesbarkeit für Kompaktheit. d) verwechselt eine reine Verriegelung mit einem sequentiellen Prozess.
Welche Aussage zur Kombination der Sprachen in einem Projekt ist korrekt?
- a) Pro Projekt ist laut IEC 61131-3 nur eine Sprache erlaubt
- b) Die Sprachen dürfen frei gemischt werden, jede dort, wo sie am stärksten ist
- c) Grafische und textuelle Sprachen dürfen nie zusammen vorkommen
- d) AS darf nur allein verwendet werden
Richtig: b)
Erklärung: Richtig ist b). Das Mischen ist ausdrücklich vorgesehen und in der Praxis üblich. a), c) und d) behaupten Einschränkungen, die es so nicht gibt.
Warum sollte man vor der Festlegung auf eine Sprache das konkrete Engineering-Tool prüfen?
- a) Weil Tools die Zykluszeit verändern
- b) Weil die IEC 61131-3 je nach Tool andere Sprachen vorschreibt
- c) Weil AWL in manchen Tools schneller läuft als ST
- d) Weil nicht jedes Hersteller-Tool alle fünf Sprachen unterstützt
Richtig: d)
Erklärung: Richtig ist d). Manche Werkzeuge bieten nur eine Teilmenge der Sprachen an, deshalb lohnt der Blick vorab. a) und c) sind sachlich falsch. b) trifft nicht zu, die Norm ist toolunabhängig.
Abschlusstest
Wie viele Programmiersprachen definiert die IEC 61131-3, und in welche Darstellungsarten gliedern sie sich?
- a) Drei Sprachen: grafisch, textuell, gemischt
- b) Fünf Sprachen: zwei grafische, zwei textuelle, eine ablauforientierte
- c) Vier Sprachen: nur grafisch und textuell
- d) Eine Sprache mit fünf Dialekten
Richtig: b)
Erklärung: Richtig ist b). KOP und FUP sind grafisch, AWL und ST textuell, AS ablauforientiert – zusammen fünf. a), c) und d) geben Anzahl oder Einteilung falsch wieder.
Ein Programmierer möchte denselben UND-Zusammenhang einmal als Strompfad und einmal als verschalteten Block darstellen. Welche zwei Sprachen nutzt er?
- a) KOP und FUP
- b) ST und AWL
- c) AS und ST
- d) FUP und AWL
Richtig: a)
Erklärung: Richtig ist a). KOP zeigt den Strompfad mit Kontakten, FUP den &-Block – beide grafisch und ineinander umwandelbar. Die übrigen Kombinationen mischen textuelle oder ablauforientierte Sprachen hinein.
In ST steht: IF druck > 6 THEN ventil := 0; END_IF. Welche Rolle haben > und :=?
- a) Beide sind Zuweisungen
- b) > ist eine Zuweisung, := ein Vergleich
- c) > ist ein Vergleich, := ist die Zuweisung
- d) Beide sind Vergleiche
Richtig: c)
Erklärung: Richtig ist c). > vergleicht den Druck mit 6, und nur wenn das wahr ist, weist := dem Ventil den Wert 0 zu. a), b) und d) verdrehen die Bedeutung der Operatoren.
Welche Sprache gilt in neuen Projekten als rückläufig und wird vor allem noch zur Pflege von Altcode verwendet?
- a) ST
- b) FUP
- c) AS
- d) AWL
Richtig: d)
Erklärung: Richtig ist d). AWL ist maschinennah, aber schwer wartbar und wird zunehmend von ST verdrängt. ST (a) ist auf dem Vormarsch, FUP (b) bleibt verbreitet, AS (c) ist für Abläufe etabliert.
Eine Maschine durchläuft die feste Folge „Spannen → Bohren → Entspannen → Auswerfen“. Welche Sprache strukturiert diesen Ablauf am sinnvollsten?
- a) AWL
- b) KOP
- c) AS
- d) FUP
Richtig: c)
Erklärung: Richtig ist c). Eine feste Schrittfolge mit Weiterschaltbedingungen ist genau das Einsatzgebiet der Ablaufsprache. KOP und FUP (b, d) eignen sich für die Logik innerhalb der Schritte, nicht für den Gesamtablauf. AWL (a) ist hier unübersichtlich.
Was ist gemeint, wenn man sagt, AS sei oft eine „Klammer“ für die anderen Sprachen?
- a) AS verbietet die Verwendung anderer Sprachen
- b) AS fasst mehrere SPS zu einer zusammen
- c) AS gibt den Ablauf vor, während die Aktionen in den Schritten in KOP, FUP oder ST programmiert werden
- d) AS übersetzt die anderen Sprachen in Maschinencode
Richtig: c)
Erklärung: Richtig ist c). AS ordnet die Reihenfolge, die konkreten Aktionen entstehen in anderen Sprachen. a) widerspricht dem Mischprinzip. b) und d) beschreiben keine Eigenschaft der Ablaufsprache.
Ein Einsteiger schreibt in ST temperatur = 80;, um der Variablen einen Wert zu geben, und das Programm verhält sich nicht wie erwartet. Was ist passiert?
- a) Der Wert 80 ist außerhalb des gültigen Bereichs
- b) Statt der Zuweisung := wurde der Vergleich = verwendet
- c) ST kennt keine Variablen
- d) Es fehlt die IF-Bedingung
Richtig: b)
Erklärung: Richtig ist b). = vergleicht in ST nur und liefert wahr/falsch, ohne den Wert zu setzen; korrekt wäre temperatur := 80;. a), c) und d) treffen nicht zu.
Warum war die Einführung der IEC 61131-3 für die Praxis ein Fortschritt?
- a) Sie machte SPS billiger
- b) Sie verbot grafische Sprachen
- c) Sie verkürzte die Zykluszeit der SPS
- d) Sie schaffte herstellerübergreifend einheitliche Sprachelemente, sodass Wissen übertragbar wurde
Richtig: d)
Erklärung: Richtig ist d). Vor der Norm war Programmierwissen an einzelne Systeme gebunden; die Norm schuf einen gemeinsamen Standard. a) und c) sind keine Ziele der Norm. b) ist falsch, grafische Sprachen sind ausdrücklich enthalten.
Für eine umfangreiche Datenverarbeitung mit Schleifen und Fallunterscheidungen ist welche Sprache am besten geeignet?
- a) KOP
- b) FUP
- c) ST
- d) AS
Richtig: c)
Erklärung: Richtig ist c). Schleifen (FOR, WHILE) und Fallunterscheidungen (CASE) sind Sprachmittel von ST. Die grafischen Sprachen (a, b) bilden das nur mühsam ab, AS (d) strukturiert Abläufe, keine Datenverarbeitung.
Welche Aussage über das Kombinieren der fünf Sprachen ist richtig?
- a) Sie ist technisch unmöglich
- b) Sie ist in einem Projekt üblich, etwa AS für den Ablauf, ST für Berechnungen, KOP für Verriegelungen
- c) Sie ist nur bei einem einzigen Hersteller erlaubt
- d) Sie führt zwangsläufig zu längeren Zykluszeiten
Richtig: b)
Erklärung: Richtig ist b). Genau dieses aufgabengerechte Mischen ist gängige Praxis. a) und c) sind falsch, das Mischen ist vorgesehen und herstellerübergreifend möglich. d) ist eine erfundene Folge ohne sachlichen Grund.
Ein FUP-Block trägt das Zeichen &. Wann ist sein Ausgang aktiv?
- a) sobald mindestens ein Eingang 1 ist
- b) nur wenn alle Eingänge 1 sind
- c) wenn genau ein Eingang 1 ist
- d) immer, unabhängig von den Eingängen
Richtig: b)
Erklärung: Richtig ist b). & ist die UND-Verknüpfung – der Ausgang wird nur wahr, wenn alle Eingänge wahr sind. a) beschreibt ODER (≥1), c) das Exklusiv-ODER, d) ist sachlich falsch.
Welche Reihenfolge ordnet die Sprachen korrekt ihrer Darstellungsart zu?
- a) KOP = grafisch, ST = textuell, AS = ablauforientiert
- b) KOP = textuell, ST = grafisch, AS = ablauforientiert
- c) AWL = grafisch, FUP = textuell, AS = grafisch
- d) ST = ablauforientiert, AS = textuell, FUP = grafisch
Richtig: a)
Erklärung: Richtig ist a). KOP ist grafisch, ST textuell, AS ablauforientiert. Die anderen Zuordnungen vertauschen die Kategorien.
Glossar
- IEC 61131-3
- Teil 3 der internationalen Norm IEC 61131, der die Programmiersprachen für speicherprogrammierbare Steuerungen und ihre Sprachelemente festlegt.
- KOP (Kontaktplan)
- Grafische SPS-Sprache, die Logik als Strompfad mit Kontakten und Spule darstellt, abgeleitet aus der Relais- und Schütztechnik.
- FUP (Funktionsplan)
- Grafische SPS-Sprache, die Logik als verschaltete Funktionsblöcke (z. B. & für UND, ≥1 für ODER) darstellt.
- AWL (Anweisungsliste)
- Textuelle, maschinennahe SPS-Sprache aus einzelnen Befehlszeilen; sehr kompakt, aber schwer lesbar und in neuen Projekten rückläufig.
- ST (Strukturierter Text)
- Textuelle SPS-Hochsprache in Anlehnung an Pascal, mit IF, CASE, Schleifen und Berechnungen; nutzt := zum Zuweisen und = zum Vergleichen.
- AS (Ablaufsprache)
- Ablauforientierte SPS-Sprache (auch SFC), die einen Prozess in Schritte und Transitionen gliedert und so sequentielle Abläufe beschreibt.
- Schritt
- In der Ablaufsprache ein Zustand, in dem eine bestimmte Aktion ausgeführt wird.
- Transition
- In der Ablaufsprache die Weiterschaltbedingung zwischen zwei Schritten; ist sie erfüllt, wird der nächste Schritt aktiv.
