Allen-Bradley / Rockwell — EtherNet/IP
EtherNet/IP (CIP, Common Industrial Protocol) ist das Kommunikationsprotokoll, das die PLCs der Serien ControlLogix / CompactLogix von Allen-Bradley / Rockwell verwenden.
Der EIP-Treiber dieses Gateways liest derzeit ausschließlich CIP-Attribute (class / instance / attribute). Die bei ControlLogix üblichen symbolischen Tags (z. B. MyController:Pump1.RPM) erfordern einen eigenen „Read Tag Service“, der in einer späteren Version unterstützt wird. Wenn Sie bis dahin symbolische Tags benötigen, empfehlen wir, die Daten über ein Gateway wie Kepware per OPC-UA zu beziehen.
Eingabewerte im Registrierungsformular
| Eingabefeld | Was einzutragen ist | Beispiel |
|---|---|---|
| IP-Adresse | IP der PLC | 192.168.0.90 |
| Port | EtherNet/IP-Port | 44818 (Standard) |
| Backplane (backplane) | Backplane-Nummer | 1 |
| Slot (local-slot) | CPU-Slot-Nummer | 0 |
Auf PLC-Seite muss das EtherNet/IP-Modul in RSLogix / Studio5000 aktiviert sein.
Schreibweise der PLC-Adresse eines Tags
Die CIP-Koordinate wird im Format <class>,<instance>,<attribute> eingegeben. Zulässig sind sowohl Dezimalwerte als auch Hexadezimalwerte mit dem Präfix 0x.
| Schreibweise | Bedeutung |
|---|---|
0x01,1,1 | Identity Object → Vendor ID |
0x01,1,2 | Identity Object → Device Type |
0x01,1,7 | Identity Object → Product Name (Zeichenkette) |
0x6B,1,1 | Symbol Class instance 1 attribute 1 |
0x6C,1,1 | Template Class |
Wie ermittelt man die CIP-Koordinate?
- Attributinformationen im Tag Browser von Studio5000 prüfen
- Bestehende EIP-Kommunikationspakete z. B. mit Wireshark mitschneiden und auswerten
- Mapping-Tabellen des Herstellers bzw. des Integrationspartners nutzen
Wenn Ihnen symbolische Tags vertrauter sind, ist der oben genannte Weg über Kepware deutlich einfacher.
Zuordnung des Datentyps
| Wert in der PLC | Datentyp | Formathilfe |
|---|---|---|
| Zeichenkette (Produktname, Status usw.) | String | (leer) |
| Ganzzahl (Vendor ID, DeviceType usw.) | Integer | (leer) |
| Gleitkommazahl | Float | (leer) |
| Boolean | Boolean | (leer) |
Der EIP-Treiber übernimmt die Roh-Bytes der Antwort unverändert als Zeichenkette und castet sie anschließend in der Nachverarbeitung gemäß [Datentyp]. Ist eine Umwandlung großer Ganzzahlen oder Gleitkommawerte erforderlich, verarbeiten Sie diese über Formel anwenden nach.
Häufige Probleme und Lösungen
| Symptom / Meldung | Mögliche Ursache | Lösung |
|---|---|---|
| „Connection timeout“ | Port 44818 blockiert, EtherNet/IP-Modul inaktiv | EtherNet/IP-Modul in RSLogix / Studio5000 aktivieren |
| „Forward Open failure“ | rack/slot oder backplane stimmen nicht überein | backplane / slot anhand der obigen Tabelle korrigieren |
| „Class/Instance not found“ | Falsche CIP-Koordinate | Koordinate im Tag Browser von Studio5000 oder mit Wireshark prüfen |
| Werte erscheinen verstümmelt | Roh-Bytes werden unverändert als String übernommen | Interpretation als Little-Endian per Formel oder Weg über Kepware empfohlen |
Ausführlichere Beispiele / automatisierte Registrierung
Siehe die EIP-Beispiele unter Erweitert — REST API.