Allen-Bradley EtherNet/IP
EtherNet/IP (CIP, Common Industrial Protocol) ist das Kommunikationsprotokoll, das von Allen-Bradley / Rockwell Steuerungen der Serien ControlLogix / CompactLogix verwendet wird.
Der EIP-Treiber dieses Gateways liest derzeit nur CIP-Attribute (Klasse / Instanz / Attribut). Die bei ControlLogix üblichen symbolischen Tags (z. B. MyController:Pump1.RPM) erfordern einen separaten "Read Tag Service", der in einer zukünftigen Version unterstützt wird. Bis dahin empfiehlt es sich, bei Bedarf symbolischer Tags über ein Gateway wie Kepware zu gehen und sie per OPC-UA zu importieren.
Eingabewerte für das Registrierungsformular
| Eingabefeld | Was eintragen | Beispiel |
|---|---|---|
| IP-Adresse | IP der SPS | 192.168.0.90 |
| Port | EtherNet/IP-Port | 44818 (Standard) |
| Backplane (backplane) | Backplane-Nummer | 1 |
| Slot (local-slot) | CPU-Slot-Nummer | 0 |
Auf SPS-Seite muss das EtherNet/IP-Modul in RSLogix / Studio5000 aktiviert sein.
LOGIX-Karte verwendet denselben TreiberIm Verbindungsregistrierungsbildschirm werden EIP und LOGIX getrennt angezeigt, aber beide nutzen dasselbe Protokoll, denselben Treiber. Es handelt sich lediglich um einen Alias, damit Anwender, die ControlLogix / CompactLogix suchen, sie leichter erkennen. Unabhängig davon, welche Option gewählt wird, ist das Verhalten identisch.
Adressierung der SPS-Tags
EIP-CIP-Koordinaten werden im Format <class>,<instance>,<attribute> eingegeben. Sowohl dezimal als auch hexadezimal (mit 0x beginnend) sind möglich.
| Notation | Bedeutung |
|---|---|
0x01,1,1 | Identity Object → Vendor ID |
0x01,1,2 | Identity Object → Device Type |
0x01,1,7 | Identity Object → Product Name (String) |
0x6B,1,1 | Symbol Class Instanz 1 Attribut 1 |
0x6C,1,1 | Template Class |
Wie ermittelt man die CIP-Koordinaten?
- Attributinformationen im Tag Browser von Studio5000 prüfen
- Vorhandene EIP-Kommunikationspakete mit Wireshark usw. aufzeichnen und analysieren
- Zuordnungstabellen von Hersteller / Systemintegrator verwenden
Wenn Sie mit symbolischen Tags vertrauter sind, ist der oben erwähnte Umweg über Kepware wesentlich einfacher.
Datentyp-Zuordnung
| Wert der SPS | Datentyp | Format-Zusatz |
|---|---|---|
| String (Produktname, Status usw.) | String | (leer) |
| Ganzzahl (Vendor ID, DeviceType usw.) | Integer | (leer) |
| Gleitkommazahl | Float | (leer) |
| Boolean | Boolean | (leer) |
Der EIP-Treiber empfängt die rohen Antwortbytes als String und castet sie anschließend gemäß [Datentyp] in der Nachverarbeitung. Wenn eine Konvertierung großer Ganzzahlen / Gleitkommazahlen erforderlich ist, führen Sie die Nachverarbeitung mit Formeln anwenden durch.
Häufige Probleme und Lösungen
| Symptom / Meldung | Mögliche Ursache | Lösung |
|---|---|---|
| „Connection timeout“ | Port 44818 blockiert, EtherNet/IP-Modul deaktiviert | EtherNet/IP-Modul in RSLogix / Studio5000 aktivieren |
| „Forward Open failure“ | Reck/Slot- oder Backplane-Abweichung | Backplane / Slot gemäß Tabelle oben korrigieren |
| „Class/Instance not found“ | Falsche CIP-Koordinaten | Koordinaten mit Tag Browser in Studio5000 oder Wireshark überprüfen |
| Werte erscheinen verzerrt | Rohe Bytes werden als String übernommen | Little-Endian-Interpretation per Formel oder Weg über Kepware empfehlenswert |
Weiterführende Beispiele / Automatisierte Registrierung
Siehe das EIP-Beispiel unter Erweitert — REST API.