Zum Hauptinhalt springen

PLC-Adresseingabe — vollständiger Leitfaden nach Protokoll

Diese Referenz fasst die im Tag-Registrierungsdialog am häufigsten verwechselten Punkte — PLC-Adresse sowie Datentyp / format — protokollweise an einer Stelle zusammen. Ausführliche Anleitungen zu den einzelnen PLCs sind auf die jeweilige Seite unter Leitfaden nach PLC-Typ verlinkt.


1. Allgemein — die 4 Felder des Registrierungsformulars

Die 4 Felder, die im Tag-Registrierungsdialog (Tag registrieren) zusammen mit der PLC-Adresse angegeben werden:

FeldBedeutungBeispiel
PLC-AdresseRohadresse, die der Treiber an die PLC sendetD00309 (LS), D100 (Melsec), DB1.DBW0 (S7)
DatentypTyp, den Java/JS erhältInteger / Long / Float / Double / String / Boolean
format (Formathilfe)Option zur abweichenden Interpretation derselben AdresseDW / UI / REAL / STR[10] / BIN[3] usw.
Formel (fomula)Nach dem Lesen angewandter arithmetischer Ausdruck${VALUE}*0.1 / sqrt(${VALUE})

💡 format ist entscheidend: Dieselbe PLC-Adresse kann als 16-Bit / 32-Bit / Gleitkomma / Zeichenkette / Bit interpretiert werden. Bleibt format leer, wird ein 16-Bit-Signed-Integer angenommen (Default der meisten Treiber).


2. LS XGT (XGI / XBC / XBM) — Treiber LS

Speicherbereiche

BuchstabeBereichHäufig verwendet
DData Register✅ Daten (am häufigsten)
MMemory (Bit)✅ Statusbits
KKeep Relay (nichtflüchtig)✅ Spannungsausfallsicher
FFlagSystembits
TTimerTimer-Istwert
CCounterZähler-Istwert
RFile Register(je nach Serie)
PI/OExterne Ein-/Ausgänge

Schreibweise-Beispiele

Wert in der PLCDatentypformatAdressbeispielHinweis
16-bit signedInteger(leer)D00309Default
16-bit unsignedIntegerUI oder UWD003000–65535
32-bit signedIntegerDWD00600D00600~D00601
32-bit unsignedLongUDW oder DUWD006900–4_294_967_295
64-bit signedLong(leer + dt=Long)D00700D00700~D00703
32-bit floatFloatREALD00450IEEE 754
64-bit doubleDoubleLREALD00500IEEE 754
Bit (M/K/F/T/C/P)Boolean(leer)M02704Bitbereich
Bit Nr. N eines WortesBooleanBIN[N]D00309 (BIN[3])Bit 3
Zeichenkette mit N Wörtern (= 2N Zeichen)StringSTR[N]D00500 (STR[10])low-byte-first
ByteIntegerB oder UBD001001 Byte

Details: LS Electric


3. Mitsubishi MELSEC (Q / L / iQ-R) — Treiber MELSEC

Speicherbereiche

Die folgenden Geräte sind die einzigen, die der Treiber lesen und schreiben kann.

BuchstabeBereichEinheitHäufig verwendet
DData RegisterWort✅ am häufigsten
MInternal RelayBit
BLink RelayBit
X / YInput / OutputBitI/O
WLink RegisterWort
RFile RegisterWort
T / CTimer / CounterWortIstwert
LLatch RelayBit
FAnnunciatorBitMeldung
VEdge RelayBit
SStep RelayBit
ZIndex RegisterWort
SD · SM · ZR können nicht gelesen werden

Systemgeräte (SD / SM) und erweiterte Dateiregister (ZR) werden von diesem Treiber nicht unterstützt. Auch wenn sie als Tag registriert werden, schlägt das Lesen fehl. Werden Systemzustandswerte benötigt, kopieren Sie diese im PLC-Programm in den Bereich D und lesen Sie diese Adresse.

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)D100
16-bit unsignedIntegerUWD100
32-bit signedIntegerDWD100 (D100~D101)
32-bit unsignedLongUDWD100
32-bit floatFloatREALD100
BitBoolean(leer)M100, B0010
ZeichenketteStringSTR[N]D200 (N Wörter)

⚠ Die Option Controller-Typ (controller-type) befindet sich im Registrierungsformular — da sich die Gerätecodes der Q/L-Serie und der iQ-R unterscheiden. Bei falscher Einstellung: Wrong device code.

Details: Mitsubishi MELSEC


4. Siemens S7 (S7-300 / 400 / 1200 / 1500) — Treiber S7

Speicherbereiche

BereichSchreibweiseBedeutung
DB (Data Block)DB<n>.DB<X>0am häufigsten — benutzerdefinierter Datenbaustein
M (Merker)M<X>0Interner Speicher
I (Input)I<X>0 oder E<X>0Eingang
Q (Output)Q<X>0 oder A<X>0Ausgang
C / TC0 / T0Counter / Timer

<X> = Datenbreite:

  • B = Byte (8-bit)
  • W = Word (16-bit)
  • D = DWord (32-bit, Integer oder Float)
  • X<bit> = Bit (z. B. M0.3)

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)DB1.DBW0
32-bit signedIntegerDWDB1.DBD0
32-bit floatFloatREALDB1.DBD4
BitBoolean(leer)DB1.DBX0.0 (Bit 0 von Byte 0 in DB1)
ZeichenketteStringSTR[N]DB1.DBB0 (inkl. S7-STRING-Header)

⚠ Option rack / slot — die Rack- / *Slot-*Nummer der PLC aus dem TIA Portal (meist 0/1 oder 0/2). Bei falschen Werten: connection refused.

Details: Siemens S7


5. Modbus TCP — Treiber MODBUS

Bereiche / Funktionscodes

BereichFunktionscodeBit/WortSchreibweise
CoilFC1 / FC5 / FC15Bitcoil:<n>
Discrete InputFC2Bit (read-only)discrete-input:<n>
Holding RegisterFC3 / FC6 / FC16Wortholding-register:<n>
Input RegisterFC4Wort (read-only)input-register:<n>

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)holding-register:1
16-bit unsignedIntegerUIholding-register:1
32-bit signedIntegerDWholding-register:1 (HR1+HR2)
32-bit floatFloatREALholding-register:1
32-bit float (byte-swap)FloatREAL_BS(je nach Treiberoption)
BitBoolean(leer)coil:5
Eingangsbit (read-only)Boolean(leer)discrete-input:0
Adress-Basis — 1 oder 0?

Das ist herstellerabhängig (Startnummer des Modbus-Slaves). Der Treiber MODBUS des Gateway sendet die Eingabe unverändert als PDU — tragen Sie daher direkt die PDU-Adresse aus dem Slave-Handbuch ein.

Details: Modbus TCP


6. OPC-UA — Treiber OPCUA

NodeId-Schreibweise

OPC-UA identifiziert über die NodeId — Standardformat:

ns=<NamespaceIndex>;s=<StringId>
ns=<NamespaceIndex>;i=<NumericId>
ns=<NamespaceIndex>;g=<GuidId>
ns=<NamespaceIndex>;b=<ByteStringId>

Schreibweise-Beispiele

ServerNodeIdHinweis
Kepwarens=2;s=Channel1.Device1.Tag1Kanal.Gerät.Tag
Ignitionns=1;s=[default]Tag1/SubTag-Pfad
PlantPulse-eigener OPC-UA-Serverns=2;s=SITE_00001.OPC_00303.TAG_TEST_00042site.opc.tag
Numerische IDns=2;i=1234Numerische ID

Datentypen

Bei OPC-UA hält der Server den Typ selbst데이터 타입 / format des Gateway dienen nur als Interpretationshinweis. Üblicherweise:

Server-Node-TypBei der Registrierungformat
Int16 / Int32 / Int64Integer / Long(leer)
Float / DoubleFloat / Double(leer)
BooleanBoolean(leer)
StringString(leer)

Details: OPC-UA


7. AB EtherNet/IP / Logix — Treiber EIP / LOGIX

Schreibweise (auf Basis von Logix-Tagnamen — Symbol Addressing)

ControlLogix / CompactLogix greifen direkt über den Tagnamen zu:

DatenTypformatAdressbeispiel
DINTIntegerDWMyTag
INTInteger(leer)Pump.Speed
REALFloatREALTank.Level
BOOLBoolean(leer)Motor.Run
STRINGString(Logix-STRING-Struktur)Recipe.Name
Array(Skalar)(leer)Array[5] (Index direkt)

Schreibweise (PLC-5 / SLC-500 — Logical Addressing)

AB-ETH-Karten verwenden eine andere Form:

DatenAdressbeispiel
WordN7:0 (file 7, element 0)
FloatF8:0
BitB3:0/0

Option backplane / slot — in welchem Slot sich die PLC befindet. 1 (CPU) ist üblich.

Details: AB EtherNet/IP


8. HTTP-Push — Treiber HTTP (Gegenrichtung)

Das Gateway liest nicht von der PLC — hier pusht eine externe Quelle Daten an das Gateway.

SchreibweiseBedeutung
<area>/<key>Freier Bezeichner — wird mit dem extern gesendeten Pfad abgeglichen

Beispiel für den POST-Body:

{ "tag_id": "TAG_OUTDOOR_TEMP", "value": "23.4" }

format / 데이터 타입 sind lediglich Metadaten zur Ablage. Die PLC-Adresse ist ein beliebiger Schlüssel — frei benennbar, je nachdem, mit welchem Schlüssel extern gepusht wird.

Details: HTTP-Push


9. Motor Sense — Treiber MOTOR_SENSE (über OPC-UA)

Empfängt KOPENS-Motorsense-Geräte über OPC-UA. Automatische Suche je Asset.

ArtAutomatisch befüllte PLC-Adresse
HEALTH INDEX<ASSET_ID>.health.<metric>
SIGNAL<ASSET_ID>.signal.<metric>

Eine manuelle Eingabe erfolgt in der Regel nicht — die Assets werden automatisch erkannt.

Details: Motor Sense


10. OMRON FINS — Treiber FINS

Speicherbereiche

BuchstabeBereich
DDM (Data Memory) — am häufigsten
HHolding Relay
WWork Area
AAuxiliary
T / CTimer / Counter
CIOCore I/O

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)D100
32-bit signedIntegerDWD100
FloatFloatREALD100
BitBoolean(leer)H0.05 (Bit 5 von Wort 0)

Optionen Network/Node/Unit — Routing-Informationen im FINS-Header (SA1 / DA1 usw.). Gemäß PLC-Handbuch einstellen.


11. PANASONIC MEWTOCOL — Treiber MEWTOCOL

Speicherbereiche

BuchstabeBereich
DTData Register
RInternal Relay
X / YInput / Output
T / CTimer / Counter

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)DT0
32-bit signedIntegerDWDT0
BitBoolean(leer)R0.0

12. FATEK FACON — Treiber FATEK

Speicherbereiche

BuchstabeBereich
RRegister (Word)
M / Y / XMemory / Output / Input (Bit)
DDiscrete

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)R0
BitBoolean(leer)M0, Y10

13. GE SRTP — Treiber GE

Speicherbereiche (GE Fanuc / Emerson PACSystems)

BuchstabeBereich
RRegister
AI / AQAnalog Input / Output
I / QDiscrete Input / Output
MInternal

Schreibweise-Beispiele

DatenTypformatAdressbeispiel
16-bit signedInteger(leer)R1
32-bit signedIntegerDWR1
FloatFloatREALR1
DiscreteBoolean(leer)I1

14. EMERSON DELTAV — Treiber DELTAV (geplant)

Schreibweise über DST (Data Service Tag) oder I/O reference von DeltaV:

SchreibweiseBedeutung
MODULE/PARAMETER.FIELDz. B.: MOD01/AI1.PV

Vor Fertigstellung des offiziellen Treibers — Anbindung über OPC-UA- oder OPC-DA-Gateway (Kepware) empfohlen.


15. AB EtherNet (PLC-5 / SLC-500) — Treiber AB-ETH

Identisch zum Abschnitt PLC-5/SLC-500 unter 7. EIP / Logix:

BereichSchreibweise
WordN7:0
FloatF8:0
BitB3:0/0
OutputO:0/0
InputI:0/0

16. Beckhoff TwinCAT/ADS — Treiber ADS (geplant)

Schreibweise über TwinCAT-Variablennamen (Symbol-based):

DatenSchreibweise-Beispiel
VariableMAIN.PumpSpeed
ArrayMAIN.Tanks[5].Level
StructGVL.Recipe.Name

Zusätzliche Optionen: NetID + Port (üblicherweise 851 für PLC1).


17. PROFINET — Treiber PROFINET (geplant)

Schreibweise auf Basis von Slot/Subslot bei Siemens / allgemeinen Profinet-IO-Geräten:

SchreibweiseBedeutung
<slot>/<subslot>/<index>z. B.: 1/1/0

Echtzeit-Steuerungsprotokoll — das Gateway wird nur nicht-echtzeitfähiges Lesen unterstützen.


18. CANopen — Treiber CANOPEN (geplant)

Schreibweise über das OD (Object Dictionary) von CANopen:

SchreibweiseBedeutung
<index>:<sub>z. B.: 0x6041:0 (Statusword)

Erfordert eine CAN-Bus-Schnittstellenkarte (USB-CAN / PCIe-CAN).


19. BACnet/IP — Treiber BACNET (geplant)

BACnet-Objektschreibweise:

SchreibweiseBedeutung
<object-type>:<instance>.<property>z. B.: analog-input:1.present-value
Object typesanalog-input / analog-output / analog-value / binary-input / binary-output / binary-value / multi-state-*

Domäne Gebäudeautomation / HVAC / Beleuchtung.


20. KNXnet/IP — Treiber KNXNET (geplant)

Schreibweise der KNX-Gruppenadresse (3-stufig):

SchreibweiseBedeutung
<main>/<middle>/<sub>z. B.: 1/0/5 (Beleuchtungskanal 5)
DPT (Data Point Type)DPT_Switch / DPT_Value_Temp usw.

Standard der Gebäudeautomation (vorwiegend EU).


21. Open Protocol (Atlas Copco) — Treiber OP

Basiert auf Ergebnismeldungen von Verschraubungen (Schrauber / Drehmomentregler):

SchreibweiseBedeutung
MID:<msg-id>.<param>z. B.: MID:0061.tightening_id (ID des Verschraubungsergebnisses)
Common MIDs0001 (Kommunikationsaufbau) / 0030 (Parametersatz) / 0061 (Verschraubungsergebnis)

Speziell für Verschraubungs- und Montageprozesse in der Linie — Anbindung an einen Controller, nicht an eine PLC.


22. format-Optionen — Gesamttabelle für alle Treiber

Werte, die häufig im Feld Formathilfe des Registrierungsformulars eingetragen werden. Die Unterstützung unterscheidet sich je Treiber:

formatBedeutungUnterstützende Treiber
(leer)16-bit signed integer (meist Default)alle
B8-bit signed byteLS / Melsec
UB8-bit unsigned byteLS / Melsec
UI / UW / UWORD16-bit unsigned wordLS / Melsec / Modbus
DW32-bit signed dwordLS / Melsec / S7 / Modbus / EIP / Logix
UDW / DUW / UDWORD32-bit unsigned dwordLS / Melsec / Modbus
UL64-bit unsigned longLS
REAL32-bit float (IEEE 754)alle
LREAL64-bit doubleLS / S7
STR[N]Zeichenkette mit N Wörtern / N BytesLS (Wort) / Melsec / S7 / Modbus
BIN[N]Extraktion des N-ten Bits eines WortesLS
X oder BITBit (Synonym für Boolean)LS / Modbus

Stimmt die Option nicht exakt überein, erfolgt der Abgleich ohne Berücksichtigung der Groß-/Kleinschreibung + ohne Leerzeichen. dw / Dw / D W werden alle als DW erkannt.


23. Häufige Fallstricke — für alle Treiber

SymptomUrsache / Abhilfe
32-Bit-Wert ist eine völlig andere Zahlformat leer → Interpretation als 16-Bit. DW oder REAL angeben
Gleitkommawert ist 0 oder NaNProblem mit der Byte-Reihenfolge (Endianness). REAL_BS (byte-swap) oder fomula swap32 ausprobieren
Bit ist immer falseBit-Schreibweise auf einem Wortbereich (D) — stattdessen Bitbereich (M/B/coil:) oder BIN[N] verwenden
Zeichenkette verstümmeltUnterschied low-byte-first vs. high-byte-first. LS verarbeitet das automatisch, S7 STRING enthält einen Header — Länge STR[N] exakt angeben
Wrong device code (Melsec)controller-type falsch auf Q/L statt iQ-R (oder umgekehrt) gesetzt. Im Formular ändern und OPC neu starten
BadTypeMismatch (OPC-UA)Der registrierte Datentyp weicht vom Node-Typ des Servers ab. An den servereitigen Typ angleichen
connection refused (S7)Rack / Slot falsch. Korrekte Werte im TIA Portal prüfen
Alle Tags lesen 0Adressbereich ist korrekt, aber die PLC gibt diese Adresse nicht aus. Logik im PLC-Programm prüfen, die Werte in diesen Speicher schreibt

24. Weiterführende Informationen