3.2 KiB
3.2 KiB
Einführung in ST und PLC-Programmierung mit CODESYS
Was ist ST (Structured Text)?
Structured Text (ST) ist eine der fünf standardisierten Programmiersprachen nach IEC 61131-3 zur Programmierung von speicherprogrammierbaren Steuerungen (SPS). Es ist eine textbasierte Hochsprache, die an Pascal oder Ada erinnert.
Merkmale
- Klare, strukturierte Syntax
- Unterstützt Kontrollstrukturen wie
IF
,CASE
,FOR
,WHILE
,REPEAT
- Unterstützt Funktionen, Funktionsbausteine und Prozeduren
- Ideal für komplexe Berechnungen und Algorithmen
- Bessere Lesbarkeit für Entwickler mit klassischem Programmierhintergrund
Grundstruktur eines ST-Programms
VAR
x: BOOL;
counter: INT := 0;
END_VAR
IF x THEN
counter := counter + 1;
END_IF;
Was ist CODESYS?
CODESYS ist eine IEC-61131-3-konforme, herstellerunabhängige Entwicklungsumgebung zur Programmierung von SPS. Es unterstützt mehrere Programmiersprachen und viele Zielsysteme (Controller unterschiedlicher Hersteller).
Hauptfunktionen
- Unterstützung aller IEC-61131-3-Sprachen inkl. ST
- Grafische und textbasierte Editoren
- Integrierter Simulator
- Visualisierung und Debugging-Werkzeuge
- Unterstützung für Industrieprotokolle (CAN, Modbus, EtherCAT usw.)
Typische Elemente der ST-Programmierung in CODESYS
Element | Beschreibung |
---|---|
VAR /VAR_INPUT |
Definition von Variablen und Eingängen |
PROGRAM , FUNCTION_BLOCK , FUNCTION |
Kapselung von Logik in wiederverwendbaren Bausteinen |
IF , CASE , FOR |
Kontrollstrukturen |
TON , TP , CTU |
Standard-Funktionsbausteine für Timer und Zähler |
PLC_PRG |
Hauptprogramm eines CODESYS-Projekts |
Beispiel: Zähler mit ST in CODESYS
PROGRAM PLC_PRG
VAR
btnStart: BOOL;
counter: INT := 0;
END_VAR
IF btnStart THEN
counter := counter + 1;
END_IF;
Vorteile von ST in der Praxis
- Modularität: Komplexe Funktionen lassen sich leicht kapseln und wiederverwenden.
- Lesbarkeit: Insbesondere für Entwickler mit Hintergrund in klassischen Sprachen.
- Flexibilität: Kombination mit grafischen Sprachen (FBD, LD) im selben Projekt möglich.
Typischer Ablauf bei der Entwicklung mit ST in CODESYS
- Projekt erstellen (z. B. „Standardprojekt“)
- Zielgerät auswählen (Controller oder CODESYS Control Win)
- Programmstruktur erstellen (
PLC_PRG
, Funktionsbausteine, etc.) - Variablen definieren
- Logik in ST schreiben
- Simulation oder Download auf Steuerung
- Test und Debugging
- Visualisierung (optional)
Literatur und Weiteres
- IEC 61131-3 Norm
- Offizielle CODESYS-Dokumentation
- ST-Referenzhandbuch
- OpenPLC Projekt (freies ST-Lernumfeld)
\newpage