PLCcheck

S5 → S7 Adress-Konverter

Siemens S5-SPS-Adressen in S7-Äquivalente umrechnen mit detaillierten Erklärungen.

Beispiele

Konvertierungsergebnis

S5-Adresse eingeben, um das S7-Äquivalent zu sehen.

Deutsche Mnemonik (E/A/M/Z)Englische Mnemonik (I/Q/M/C)S5-AdresseDB10 DW 5KONVERTIERUNGSERGEBNISS7 Deutsch (AWL)DB10.DBW 10S7 Englisch (STL)DB10.DBW 10S7 SCL"DB10".DBW_10Berechnung5 × 2 = 10⚠ DW-Adressen in S7 immer mit 2 multiplizieren (Byte-Adressierung)Beispiele: E 0.0 · MW 100 · DB10 DW5 · T 1
Konvertierung: DB10 DW 5 wird in S7 zu DB10.DBW 10 — Wort-Adresse × 2 = Byte-Adresse

Wozu dieser Konverter?

Bei der Migration von Siemens S5 auf S7 ist die Adress-Umwandlung eine der größten Fehlerquellen. Eingänge und Ausgänge sind unkompliziert — E 0.0 bleibt E 0.0. Aber sobald Datenbausteine ins Spiel kommen, kippt die Logik: S5 verwendet Wort-Adressierung (DW), S7 verwendet Byte-Adressierung (DBW). Eine S5-Adresse DB10 DW 5 wird in S7 zu DB10.DBW 10 — der Wert verdoppelt sich. Wer auch nur eine einzige Adresse vergisst, produziert stille Datenkorruption im laufenden Prozess.

Dieser Konverter rechnet jede S5-Adresse in ihr S7-Äquivalent um — mit Erklärung, warum sich der Wert ändert, welche Warnungen zu beachten sind und wie der passende SCL-Zugriff aussieht. Unterstützt werden Eingänge (E), Ausgänge (A), Merker (M/MB/MW/MD), Datenbausteine (DB/DW/DL/DR/Datenbit), Timer (T), Zähler (Z) und Peripherie (PE/PA). Sowohl deutsche als auch englische Mnemonik (I/Q/M/C).

Die DW × 2 Regel — erklärt

Das ist die wichtigste Regel bei der S5→S7-Adresskonvertierung. Wer sie vergisst, produziert Fehler, die erst beim Anlagentest auffallen — oder im schlimmsten Fall im Produktivbetrieb.

In S5 wird jedes Datenwort (DW) als 16-Bit-Einheit adressiert: DW 0, DW 1, DW 2, DW 3. Zwischen DW 0 und DW 1 liegen 16 Bit (2 Byte). Physisch belegt DW 0 die Bytes 0–1, DW 1 die Bytes 2–3, DW 2 die Bytes 4–5 — und so weiter. In S7 wird auf dieselben Bytes zugegriffen, aber die Adresse ist die Byte-Adresse selbst. Deshalb muss die S5-Wort-Adresse immer mit 2 multipliziert werden, um die S7-Byte-Adresse zu erhalten.

Physische Byte-Zuordnung im DatenbausteinS5 Wort-AdressePhysisches ByteS7 Byte-AdresseDW 001DBW 0DW 123DBW 2DW 245DBW 4DW 367DBW 6DW 489DBW 8DW 51011DBW 10DW 5 × 2 = DBW 10
Jedes S5-Datenwort belegt physisch 2 Bytes — die S7-Adresse ist die erste Byte-Adresse dieses Worts
S5-AdresseS7-AdresseBerechnung
DB10 DW 0DB10.DBW 00 × 2 = 0
DB10 DW 1DB10.DBW 21 × 2 = 2
DB10 DW 5DB10.DBW 105 × 2 = 10
DB10 DW 50DB10.DBW 10050 × 2 = 100
DB10 DW 100DB10.DBW 200100 × 2 = 200

Für einzelne Datenbits gilt zusätzlich: Bit 0–7 liegen im Low-Byte (ungerade Byte-Adresse = Wort × 2 + 1), Bit 8–15 liegen im High-Byte (gerade Byte-Adresse = Wort × 2). Beispiel: S5 D 3.7 ist in S7 DBX 6.7 (Low-Byte), S5 D 3.15 ist DBX 7.7 (High-Byte, Bit 15 − 8 = 7).

Deutsche vs. internationale Mnemonik

Siemens-SPSen unterstützen zwei Befehlssätze, die sich in den Adress-Präfixen unterscheiden. Die deutsche Mnemonik ist in S5 Standard, S7 akzeptiert beides. Bei der Migration muss entschieden werden, welche verwendet wird — innerhalb eines Projekts sollte das konsistent sein.

KategorieDEENHinweis
EingangEIBit- und Wort-Adressen identisch in beiden Notationen
AusgangAQIn S5 war A die Standard-Notation
MerkerMMIdentisch in beiden Sprachen
TimerTTIdentisch, aber IEC-Timer empfohlen
ZählerZCUnterschiedliches Präfix
Peripherie EingangPEPIPeripheral Input
Peripherie AusgangPAPQPeripheral Output
DatenbausteinDBDBIdentisch, aber DW → DBW Umrechnung

Konvertierungsbeispiele aus der Praxis

Typische Adressen aus realen S5-Programmen und ihre S7-Äquivalente, in der Reihenfolge von einfach bis komplex:

1. Einfache E/A-Zuweisung

S5 AWL
U E 0.0
=  A 4.0
S7 STL / SCL
U "Start_Taster"   // E 0.0
=  "Motor_EIN"      // A 4.0

E/A-Adressen bleiben numerisch identisch. Bei englischer Mnemonik: I 0.0 / Q 4.0.

2. Merker-Wort kopieren

S5 AWL
L MW 100
T MW 200
S7 STL / SCL
L MW 100          // unverändert
T MW 200

Merker-Adressen sind in S5 und S7 numerisch identisch. Keine Umrechnung nötig.

3. Datenwort lesen — die klassische Stolperfalle

S5 AWL
A  DB 10
L  DW 5
S7 STL / SCL
L  "Rezept".DBW 10   // war DW 5 → × 2 = 10

Die S5-Adresse DW 5 wird in S7 zu DBW 10. Hier passieren die meisten Migrationsfehler.

4. Einzelnes Datenbit setzen

S5 AWL
A  DB 20
S  D 3.7
S7 STL / SCL
S  "Status".DBX 6.7  // DW 3 Bit 7 → Byte 6 (Low), Bit 7

Bit 0–7 liegen im Low-Byte (ungerades Byte = Wort×2+1). Bit 7 bleibt Bit 7.

5. High-Byte-Bit (Bit 8–15)

S5 AWL
A  DB 20
U  D 3.15
S7 STL / SCL
U  "Status".DBX 7.7  // DW 3 Bit 15 → Byte 7 (High), Bit 7

Bit 8–15 liegen im High-Byte. Die Bit-Nummer in S7 ist Bit minus 8: hier 15 − 8 = 7.

6. Timer in S7-SCL

S5 AWL
U  E 1.0
L  KT 030.2
SD T 1
S7 STL / SCL
"Timer_Verzoegerung"(
    IN := "Startbedingung",
    PT := T#30s
);

Timer-Nummer bleibt, aber die S5-Timer-Befehle (SI/SE/SD/SS/SA) werden durch IEC-Bausteine (TP/TON/TOF) ersetzt. Siehe Timer-Rechner für Details.

Häufige Fehler bei der Adress-Migration

Fünf Fehler, die bei der S5→S7-Migration immer wieder auftreten — und wie man sie vermeidet:

Fehler 1: DW-Adressen nicht verdoppelt

Der Klassiker. DW 5 wird in S7 NICHT zu DBW 5, sondern zu DBW 10. Wer das vergisst, liest in S7 die Daten aus einem völlig anderen Speicherbereich — ohne dass der Compiler warnt. Die Anlage läuft scheinbar normal an, aber die Sollwerte stimmen nicht mehr mit den Ist-Werten überein.

Fehler 2: Byte-Adressen (DL/DR) falsch zugeordnet

DL (Datenwort links) ist das High-Byte, DR (rechts) das Low-Byte. In S7-Byte-Adressierung: DL → gerade Byte-Adresse (Wort × 2), DR → ungerade Byte-Adresse (Wort × 2 + 1). Wer links und rechts vertauscht, lädt Nutzdaten an der falschen Stelle.

Lösung: Merksatz: DL (links) = gerade Byte-Adresse, DR (rechts) = ungerade Byte-Adresse.

Fehler 3: Timer-Nummern stimmen, aber Timer-Verhalten nicht

T 1 in S5 und T 1 in S7 haben dieselbe Nummer, aber in TIA Portal / S7-1500 werden die klassischen S5-Timer-Befehle (SI/SE/SD/SS/SA) nicht mehr unterstützt. Wer nur die Adresse konvertiert und den Timer-Typ ignoriert, produziert einen nicht lauffähigen Code.

Lösung: Zusätzlich zur Adress-Konvertierung immer den Timer-Typ auf IEC-Timer (TP/TON/TOF) umstellen.

Fehler 4: Zähler-BCD vs. INT-Konvertierung vergessen

S5-Zähler speichern Werte BCD-kodiert. S7-Zähler (auch die Legacy-Variante) verwenden INT. Bei der Migration müssen Zählerstände, die in Datenbausteinen zwischengespeichert sind, umformatiert werden — sonst zeigen die HMI/SCADA-Systeme falsche Werte an.

Lösung: IEC-Zähler (CTU/CTD/CTUD) verwenden — die arbeiten nativ mit INT.

Fehler 5: Merker-Suffixe übersehen

In S5 gab es die Syntax FY (Flag-Byte), FW (Flag-Wort), FD (Flag-Doppelwort). In S7 heißen diese MB, MW, MD. Wer eine Find-and-Replace-Migration ohne Berücksichtigung der Suffixe macht, übersieht Byte-Zugriffe komplett.

Lösung: Immer auch FY/FW/FD im Quellcode suchen und zu MB/MW/MD migrieren.

Verwandte Werkzeuge und Referenzen

Schnellreferenz

S5S7 (DE)S7 (EN)Hinweis
E 0.0E 0.0I 0.0Identisch
EW 0EW 0IW 0Identisch
A 4.0A 4.0Q 4.0Identisch
M 10.0M 10.0M 10.0Identisch
F 0.0M 0.0M 0.0F → M
FY 10MB 10MB 10FY (Byte) → MB
T 1T 1T 1IEC-Timer verwenden!
Z 3Z 3C 3Z → C (EN)
DB10 DW5DB10.DBW 10DB10.DBW 10DW × 2 = DBW
DB10 DL5DB10.DBB 10DB10.DBB 10High-Byte (×2)
DB10 DR5DB10.DBB 11DB10.DBB 11Low-Byte (×2+1)
DB10 D5.3DB10.DBX 11.3DB10.DBX 11.3Bit 0–7 → Low-Byte
DB10 D5.8DB10.DBX 10.0DB10.DBX 10.0Bit 8–15 → High-Byte
PEW 128PEW 128PIW 128Identisch

Häufig gestellte Fragen

Wie konvertiere ich S5-DB-Adressen nach S7?
S5 verwendet Wort-Adressierung (DW 0, DW 1, DW 2…), S7 verwendet Byte-Adressierung (DBW 0, DBW 2, DBW 4…). Multiplizieren Sie die S5-Wortadresse mit 2: DW 5 → DBW 10. Dies gilt für alle DB-Zugriffsarten (DW → DBW, DL → DBB gerade, DR → DBB ungerade).
Was ist der Unterschied zwischen DW- und DBW-Adressierung?
DW (Datenwort) ist die S5-wortbasierte Adresse innerhalb eines Datenbausteins. DBW (Datenbaustein-Wort) ist die S7-bytebasierte Adresse. Da jedes Wort 2 Bytes belegt: DBW-Adresse = DW-Adresse × 2. Beispiel: DW 5 belegt Bytes 10–11, wird also DBW 10.
Wie unterscheiden sich S5-Timer von S7-Timern?
Die Timer-Nummern (T 1, T 2, etc.) werden direkt übernommen, aber S5- und S7-Legacy-Timer unterscheiden sich im Nachtriggerverhalten und Zeitformat (S5 nutzt BCD-kodiertes S5TIME). Für neue S7-Projekte immer IEC-Timer verwenden: TON (Einschaltverzögerung), TOF (Ausschaltverzögerung), TP (Impuls).
Was ist aus den F-Adressen (Flags) von S5 geworden?
In S5 hießen Merker-Bits 'Flags' mit dem Prefix F (z.B. F 0.0, FW 100). In S7 heißen sie 'Merker' mit dem Prefix M. Die Adressen sind numerisch identisch: F 0.0 = M 0.0, FW 100 = MW 100. Beachte: FY (Flag-Byte) wird zu MB.
Muss ich E/A-Adressen bei der Migration von S5 nach S7 ändern?
Eingangs- und Ausgangs-Adressen (E/A bzw. I/Q) sind numerisch identisch. E 0.0 bleibt E 0.0 (oder I 0.0 auf Englisch). Prüfen Sie jedoch die Hardware-Konfiguration in TIA Portal, besonders bei dezentraler Peripherie (ET 200).
Warum wird DW 5 zu DBW 10 statt DBW 5?
S5 verwendet Wort-Adressierung (jedes DW ist 16 Bit), S7 verwendet Byte-Adressierung (jedes DBW beginnt an einer Byte-Position). Ein S5-Datenwort belegt physisch 2 Bytes. DW 0 liegt auf Bytes 0–1, DW 1 auf Bytes 2–3, DW 5 auf Bytes 10–11. Die S7-DBW-Adresse ist die Byte-Adresse selbst — daher immer S5-Wort × 2.
Wie konvertiere ich einzelne Datenbits von S5 nach S7?
Für Bit 0–7 (Low-Byte): S7-Adresse = DBX [Wort × 2 + 1].[Bit]. Für Bit 8–15 (High-Byte): S7-Adresse = DBX [Wort × 2].[Bit − 8]. Beispiel: S5 D 3.7 → S7 DBX 7.7 (Low-Byte, Bit 7). S5 D 3.15 → S7 DBX 6.7 (High-Byte, Bit 15 − 8 = 7).
Was ist der Unterschied zwischen DL und DR?
DL steht für Datenwort links (High-Byte), DR für Datenwort rechts (Low-Byte). DL liegt auf der geraden Byte-Adresse (Wort × 2), DR auf der ungeraden (Wort × 2 + 1). In S7-Byte-Adressierung: S5 DL 5 → S7 DBB 10, S5 DR 5 → S7 DBB 11.
Muss ich Timer- und Zähler-Adressen umrechnen?
Nein, die Nummern bleiben identisch. T 1 in S5 ist T 1 in S7. Aber: Die Timer-Befehle selbst (SI/SE/SD/SS/SA) werden in S7-1500 nicht mehr unterstützt — dort müssen IEC-Timer (TP/TON/TOF) verwendet werden. Ebenso bei Zählern: statt ZV/ZR die IEC-Zähler CTU/CTD/CTUD.
Was ist mit indirekten Adressierungen wie DO FW oder LIR?
Diese S5-Befehle haben kein direktes S7-Äquivalent. Sie müssen manuell umstrukturiert werden, typischerweise mit Pointer-Variablen, AR1/AR2-Registern (S7-Classic) oder ARRAY-Zugriffen in SCL (S7-1500). Das ist der häufigste Grund, warum der Siemens-S5/S7-Konverter einen Code nicht automatisch migrieren kann.
Gibt es einen Unterschied zwischen E und I in der Mnemonik?
Nur optisch. E ist die deutsche Schreibweise für Eingang, I die internationale Schreibweise für Input. Beide adressieren denselben physischen Eingang. E 0.0 und I 0.0 sind identisch. In S5 war E Standard, in S7 sind beide Schreibweisen möglich. Wichtig ist Konsistenz innerhalb eines Projekts.

Komplettes S5-Programm migrieren?

PLCcheck Pro konvertiert vollständige S5-Programme nach S7 — alle Adressen, Timer, Zähler, DB-Strukturen und Funktionsbausteine — mit vollständiger Dokumentation und E/A-Zuordnung.

PLCcheck Pro testen →

Nicht verbunden mit Siemens AG. S5, S7, STEP 5, STEP 7 und TIA Portal sind Marken der Siemens AG.