SCL vs. Kontaktplan vs. FUP
Welche SPS-Sprache sollten Sie verwenden?
Ein umfassender technischer Vergleich der IEC 61131-3 SPS-Programmiersprachen – und warum SCL (Strukturierter Text) der klare Sieger für moderne industrielle Automatisierung und KI-Codegenerierung ist.
Die 5 IEC 61131-3 Sprachen auf einen Blick
Die Norm IEC 61131-3 definiert fünf standardisierte SPS-Programmiersprachen, die von allen großen Herstellern verwendet werden: SCL (Structured Control Language / Strukturierter Text), KOP (Kontaktplan), FUP (Funktionsplan), GRAPH (Schrittkette) und AWL (Anweisungsliste, mittlerweile veraltet). Jede hat ihre Stärken – aber sie sind nicht gleichermaßen für moderne Workflows geeignet.
Der Aufstieg der KI-gestützten Entwicklung, der Versionsverwaltung und der Software-Engineering-Praktiken in der industriellen Automatisierung hat die Kalkulation grundlegend verändert. Textbasierte Sprachen haben entscheidende Vorteile gegenüber grafischen, wenn es um Tooling, Zusammenarbeit und Automatisierung geht. Dieser Leitfaden schlüsselt jede Sprache auf, damit Sie eine fundierte Entscheidung treffen können.
Die vier aktiven SPS-Sprachen
Stärken, Schwächen und wann man welche IEC 61131-3 Sprache einsetzt
SCL — Structured Control Language
Strukturierter Text (ST) im Siemens TIA Portal
SCL ist eine höhere, Pascal-ähnliche Textsprache. Sie unterstützt die vollständige prozedurale Programmierung: IF/ELSIF/ELSE, CASE, FOR, WHILE, REPEAT, Funktionsaufrufe und komplexe Datenstrukturen. Sie ist die SPS-Sprache, die universellen Programmiersprachen wie C oder Python am nächsten kommt.
KOP — Kontaktplan
Die klassische grafische Sprache der Relaistechnik
Der Kontaktplan (KOP) bildet elektrische Relaisschaltpläne mit Strompfaden, Schließern und Spulen nach. Er wurde für Elektriker entwickelt, die auf die SPS-Programmierung umsteigen, und bleibt die am weitesten verbreitete Sprache in der Praxis – insbesondere für einfache Verknüpfungssteuerungen.
FUP — Funktionsplan
Signalfluss-orientierte grafische Programmierung
FUP stellt Logik als miteinander verbundene Blöcke dar, wobei Daten über Linien zwischen ihnen fließen. Er eignet sich gut für kontinuierliche Steuerungen, analoge Signalverarbeitung und PID-Anwendungen. Vertraut für Ingenieure mit Hintergrund in Regelungstechnik oder Elektronik.
GRAPH — Schrittkette
Schrittbasierte Programmierung sequentieller Prozesse
GRAPH (oder SFC) strukturiert Programme als eine Sequenz von Schritten und Transitionen. Jeder Schritt führt Aktionen aus; Transitionen definieren, wann zum nächsten Schritt gewechselt wird. Es ist die ideale Sprache für Batch-Prozesse und sequentielle Abläufe.
Detaillierter Sprachvergleich
8 Dimensionen, die für die moderne SPS-Entwicklung zählen
| Merkmal | SCL | KOP | FUP | GRAPH |
|---|---|---|---|---|
| Lesbarkeit (komplexe Logik) | Hervorragend | Schlecht | Mittelmäßig | Gut (Sequenzen) |
| KI-Codegenerierung | Nativ | Nicht möglich | Nicht möglich | Über SCL-Äquivalent |
| Komplexe Algorithmen | Volle Unterstützung | Sehr begrenzt | Begrenzt | Nicht zutreffend |
| Code-Wiederverwendbarkeit | Hoch (parametrisierte FBs) | Niedrig (Copy-Paste) | Mittelmäßig | Mittelmäßig |
| Git-Versionsverwaltung | Volle Diff-Unterstützung | Nur Binärdateien | Nur Binärdateien | Nur Binärdateien |
| Inline-Dokumentation | Kommentare + REGION | Nur Netzwerktitel | Minimal | Schritt-Anmerkungen |
| Debugging | Variablenbeobachtung + Breakpoints | Visueller Online-Status | Signalfluss online | Schritthervorhebung |
| Performance (Ausführung) | Hoch (optimierter Compiler) | Hoch | Hoch | Hoch |
| Lernkurve (Programmierer) | Niedrig (vertraute Syntax) | Mittel | Mittel | Mittel |
| Lernkurve (Elektriker) | Mittel-Hoch | Niedrig (Relaislogik) | Niedrig-Mittel | Mittel |
Wann man welche Sprache einsetzt
Praxisleitfaden zur Wahl der richtigen IEC 61131-3 Sprache
Wählen Sie SCL, wenn…
- Sie Schleifen, Arrays, komplexe Mathematik oder String-Verarbeitung benötigen
- Ihr Team Git nutzt und ordentliche Versionsverwaltung und Code-Reviews wünscht
- Sie KI-Tools zur Generierung oder zum Refactoring von SPS-Code nutzen möchten
- Sie wiederverwendbare Funktionsbaustein-Bibliotheken erstellen
- Sie einen Hintergrund im Software-Engineering haben
Wählen Sie KOP, wenn…
- Die Logik rein binär ist (Kontakte, Spulen, einfache Verriegelungen)
- Das Instandhaltungspersonal aus Elektrikern besteht, die den Code lesen müssen
- Visuelles Online-Debugging von Logik im Relais-Stil kritisch ist
- Sie eine alte Relaistafel 1-zu-1 ersetzen
Wählen Sie FUP, wenn…
- Sie kontinuierliche Regelungen mit vielen PID-Schleifen implementieren
- Signalrouting und -transformation das Hauptanliegen sind
- Ihr Team einen Hintergrund in Regelungstechnik/Elektronik hat
- Die Logik primär eine Kette von Signalverarbeitungsbausteinen ist
Wählen Sie GRAPH, wenn…
- Der Prozess eine strikte lineare oder verzweigte Abfolge von Schritten ist
- Bediener den aktuellen Schritt visualisieren und mit ihm interagieren müssen
- Integrierte Pause/Fortsetzen-Funktionen und Schrittdiagnose erforderlich sind
- Ziehen Sie SCL-Zustandsmaschinen als textbasierte Alternative in Betracht
Warum SCL bei der KI-gestützten Entwicklung gewinnt
Vier strukturelle Gründe, warum Strukturierter Text die einzige SPS-Sprache ist, die wirklich von der KI-Codegenerierung profitiert
KI generiert Text
KI-Sprachmodelle – Claude, GPT-4o, Gemini – produzieren Text. SCL ist Text. Kontaktplan und FUP sind grafische Formate, die nur innerhalb des TIA Portal-Editors existieren. Es gibt keine Textdarstellung eines KOP-Netzwerks, die generiert und dann importiert werden kann. SCL hat keine solche Einschränkung.
Volle algorithmische Ausdrucksstärke
Wenn Sie eine komplexe Anforderung beschreiben – einen PID-Wrapper mit Anti-Windup, einen Ringpuffer, eine CRC-Berechnung – kann SCL dies vollständig ausdrücken. KOP würde hunderte Netzwerke erfordern oder kann die Logik schlicht nicht darstellen. KI kann vollständiges, funktionales SCL für praktisch jeden Automatisierungsalgorithmus generieren.
Passt in bestehende Software-Workflows
KI-generierter SCL-Code kann in einem Pull Request geprüft, in einem Git-Repository mit aussagekräftigen Diffs gespeichert, mit automatisierten Tools getestet und in CI/CD-Pipelines integriert werden. Nichts davon ist mit grafischen KOP- oder FUP-Dateien möglich. SCL macht SPS-Code zu einem vollwertigen Bestandteil eines Software-Engineering-Workflows.
Iterative Verfeinerung funktioniert
Mit SCL können Sie einen generierten Baustein in einen Chat mit der KI kopieren, Änderungen anfordern und die verbesserte Version zurückkopieren. Diese schnelle Iterationsschleife ist zentral für eine produktive KI-gestützte Entwicklung. Bei KOP erfordert jede Änderung eine manuelle grafische Bearbeitung – die KI-Feedbackschleife bricht vollständig ab.
Migration von KOP zu SCL
Praktische Tipps für Teams, die auf Strukturierten Text umsteigen
Die Migration einer bestehenden KOP-Codebasis auf SCL ist eine bedeutende, aber lohnende Investition. Der empfohlene Ansatz ist kein „Big Bang“-Rewrite, sondern eine inkrementelle Migration: Neue Funktionsbausteine werden in SCL geschrieben, während bestehende KOP-Bausteine migriert werden, wenn sie wesentliche Änderungen benötigen.
Die meisten Siemens TIA Portal-Projekte unterstützen das freie Mischen von Sprachen. Ein in SCL geschriebener FB kann aus einem KOP-Netzwerk aufgerufen werden und umgekehrt. Das bedeutet, dass die Migration auf Bausteinebene erfolgen kann, ein FB nach dem anderen, ohne den Rest des Projekts zu stören.
Starten Sie mit neuem Code
Schreiben Sie alle neuen Funktionsbausteine ab dem ersten Tag in SCL. Dies bietet Ihnen sofort die Vorteile der Versionsverwaltung, ohne bestehenden, getesteten Code anzufassen.
Nutzen Sie KI für die Konvertierung
Beschreiben Sie das Verhalten eines bestehenden KOP-Bausteins einer KI und bitten Sie sie, das SCL-Äquivalent zu generieren. Prüfen und testen Sie das Ergebnis – das ist oft schneller als ein manuelles Neuschreiben.
Migrieren bei Änderungen
Wenn ein KOP-Baustein eine wesentliche Änderung benötigt, konvertieren Sie ihn zu diesem Zeitpunkt in SCL. Vermeiden Sie es, KOP nur für die Konvertierung zu ändern – warten Sie auf einen natürlichen Auslöser.
Schulen mit kleinen Bausteinen
Lassen Sie das Team mit einfachen Konvertierungen beginnen: ein Motor-Start/Stopp-FB mit einem Timer. Bauen Sie Vertrauen auf, bevor Sie komplexe Ablauflogik in Angriff nehmen.
Häufig gestellte Fragen (FAQ)
Ist SCL zur Laufzeit schneller als Kontaktplan?
In Bezug auf die Ausführungszeit der SPS-CPU werden alle fünf IEC 61131-3 Sprachen auf modernen SPS wie der Siemens S7-1500 in denselben Maschinencode übersetzt. Unterschiede in der Laufzeit-Performance sind für die überwiegende Mehrheit der Anwendungen vernachlässigbar. Die Wahl der Sprache hat keinen nennenswerten Einfluss auf die Zykluszeit bei typischer Logik. Die Vorteile von SCL liegen vollständig in den Bereichen Entwicklung, Wartung und Tooling – nicht in der Ausführungsgeschwindigkeit.
Kann ich SCL und Kontaktplan im selben TIA Portal-Projekt mischen?
Ja. TIA Portal unterstützt das Mischen von Sprachen innerhalb eines einzigen Projekts vollständig. Jeder Organisationsbaustein, Funktionsbaustein oder jede Funktion kann in einer anderen Sprache geschrieben sein. Ein in KOP geschriebener OB kann problemlos einen in SCL geschriebenen FB aufrufen. Diese Flexibilität pro Baustein ermöglicht eine schrittweise Migration und lässt jeden Baustein die am besten geeignete Sprache nutzen.
Was ist der Unterschied zwischen SCL und ST (Strukturierter Text)?
SCL (Structured Control Language) ist der Siemens-Markenname für die Sprache Strukturierter Text (ST), die in der IEC 61131-3 definiert ist. Sie sind auf Sprachebene funktionell identisch. Andere Hersteller verwenden unterschiedliche Namen: Rockwell verwendet ST, Beckhoff verwendet ST, Codesys verwendet ST. Wenn in der Siemens-Dokumentation von SCL die Rede ist, ist dieselbe Sprache gemeint wie IEC 61131-3 Strukturierter Text.
Sollte ich SCL oder Kontaktplan lernen, wenn ich neu in der SPS-Programmierung bin?
Wenn Sie einen Hintergrund im Software-Engineering haben, lernen Sie zuerst SCL – die Syntax ist vertraut und dorthin bewegt sich die moderne industrielle Automatisierung. Wenn Sie aus dem Bereich Elektrotechnik oder Relaistechnik kommen, ist der Einstieg mit KOP natürlich; steigen Sie dann auf SCL um, sobald Sie sich mit SPS-Konzepten vertraut fühlen. Für die langfristige Karriereentwicklung und KI-gestützte Workflows zahlt sich die Investition in SCL-Kenntnisse deutlich aus.