SPS – Liste der Operanden
Zur Programmierung einer SPS werden eine Vielzahl von Operanden benötigt. Dies dient nicht nur der SPS selbst, sondern erleichtert auch den Überblick im Programmiercode zu behalten. Gesetzlich regeln dies grundlegend vier DIN-Normen. Für den Einstieg in die Programmierung reicht folgende Übersicht nach DIN EN 61131 aus, welche die Grundlagen speicherprogrammierbarer Steuerungen enthält.
Wer wirklich professionell in der Praxis programmieren möchte, wirft einen Blick in unseren Artikel zur DIN EN ISO 81346 (hier). Die DIN EN ISO 81346 beinhaltet hunderte Restriktionen. Unser Artikel zählt die in der Praxis gängigsten Typen auf, exotische Operanden werden bei Bedarf nachgeschlagen. Der Vollständigkeit halber muss abschließend die Norm EN 61499 genannt werden, die letztlich nur für die Softwarehersteller relevant ist.
Grob lassen sich die Operanden in vier Gruppen klassifizieren.
- Eingangstypen (Schalter, Sensoren)
- Ausgangstypen ( Motoren, Meldeleuchten)
- Operanden mit besonderer Funktion (Timer, Zähler)
- Operanden welcher der Codestruktur dienen (Organisationsbaustein, Funktionsbaustein)
In der Liste taucht der Begriff Adressbereich. Das ist der Zahlenbereich, den wir für unseren Operanden benutzen und hängt vom jeweiligen Datentyp ab.
SPS – Liste der Operanden
IEC | Step7 | Beschreibung, Beispiel | Datentyp | Adressbereich | Nachkommastelle |
I | E | Eingangsbit, E0.0 | BOOL | 0.0 bis 65535.7 | X.0 bis X.7 |
IB | EB | Eingangsbyte, EB1 | BYTE, CHAR | 0 bis 65535 | ganzzahlig |
IW | EW | Eingangswort, EW10 | WORD, INT, S5TIME, DATE | 0 bis 65534 | ganzzahlig |
ID | ED | Eingangsdoppelwort, ED30 | DWORD, DINT, REAL, TOD, TIME | 0 bis 65532 | ganzzahlig |
Q | A | Ausgangsbit, A2.3 | BOOL | 0.0 bis 65535.7 | X.0 bis X.7 |
QB | AB | Ausgangsbyte, AB4 | BYTE, CHAR | 0 bis 65535 | ganzzahlig |
QW | AW | Ausgangswort, AW10 | WORD, INT, S5TIME, DATE | 0 bis 65534 | ganzzahlig |
QD | AD | Ausgangsdoppelwort, AD10 | DWORD, DINT, REAL, TOD, TIME | 0 bis 65532 | ganzzahlig |
M | M | Merkerbit, M3.2 | BOOL | 0.0 bis 65535.7 | X.0 bis X.7 |
MB | MB | Merkerbyte, MB1 | BYTE, CHAR | 0 bis 65535 | ganzzahlig |
MW | MW | Merkerwort, MW11 | WORD, INT, S5TIME, DATE | 0 bis 65534 | ganzzahlig |
MD | MD | Merkerdoppelwort, MD30 | DWORD, DINT, REAL, TOD, TIME | 0 bis 65532 | ganzzahlig |
PIB | PEB | Peripherieeingangsbyte, PEB20 | BYTE, CHAR | 0 bis 65535 | ganzzahlig |
PQB | PAB | Peripherieausgangsbyte, PAB20 | BYTE, CHAR | 0 bis 65535 | ganzzahlig |
PIW | PEW | Peripherieeingangswort, PEW20 | WORD, INT, S5TIME, DATE | 0 bis 65534 | ganzzahlig |
PQW | PAW | Peripherieausgangswort, PAW20 | WORD, INT, S5TIME, DATE | 0 bis 65534 | ganzzahlig |
PID | PED | Peripherieeingangs-Doppelwort, PED20 | DWORD, DINT, REAL, TOD, TIME | 0 bis 65532 | ganzzahlig |
PQD | PAD | Peripherieausgangs-Doppelwort, PAD20 | DWORD, DINT, REAL, TOD, TIME | 0 bis 65532 | ganzzahlig |
T | T | Timer, T1 | TIMER | 0 bis 65535 | ganzzahlig |
C | Z | Zähler, Z1 | COUNTER | 0 bis 65535 | ganzzahlig |
FB | FB | Funktionsbaustein, FB12 | FB | 0 bis 65535 | ganzzahlig |
OB | OB | Organisationsbaustein, OB3 | OB | 1 bis 65535 | ganzzahlig |
DB | DB | Datenbaustein, DB10, DBX0.0, DBB1, DBW1 | DB, FB, SFB, UDT | 1 bis 65535 | ganzzahlig |
FC | FC | Funktion, FC4 | FC | 0 bis 65535 | ganzzahlig |
SFB | SFB | Systemfunktionsbaustein, SFB35 | SFB | 0 bis 65535 | ganzzahlig |
SFC | SFC | Systemfunktion, SFC32 | SFC | 0 bis 65535 | ganzzahlig |
VAT | VAT | Variablentabelle | 0 bis 65535 | ganzzahlig | |
UDT | UDT | Userdefinierter Datentyp | UDT | 0 bis 65535 | ganzzahlig |