- AFV10D, CENTUM VP, CRC error, DCS commissioning, EcoStruxure Control Expert, FF segment, field device commissioning, FieldMate, FOUNDATION Fieldbus, function block scheduling, industrial automation, Modbus RTU, Modicon M580, Phoenix Contact, process automation, register map, RS485, Schneider Electric, serial communication, Yokogawa
So diagnostizieren Sie Kommunikationsfehler bei Modbus RTU zwischen Schneider Modicon M580 und Phoenix-Contact-I/O-Geräten
Ein praktischer Leitfaden zur Fehlerbehebung mit seriellen Analyzern, Registerkarten und Schneider EcoStruxure Control Expert.
Warum Modbus RTU nicht ausstirbt
Modbus RTU ist einfach, kostengünstig und wird nahezu überall unterstützt. Schneider Modicon M580-SPS verfügen über integrierte serielle Schnittstellen. Phoenix Contact ILC- und Axioline-I/O-Stationen unterstützen Modbus-RTU-Slave-Module. Daher bleibt das Protokoll bei der Modernisierung bestehender Anlagen eine bevorzugte Lösung.
Einfachheit bedeutet jedoch nicht störungsfreien Betrieb. Erstens führen nicht übereinstimmende Baudraten zu lautlosen Ausfällen. Zweitens verursacht eine mangelhafte RS485-Terminierung sporadische Zeitüberschreitungen. Außerdem können doppelte Slave-IDs ganze Segmente zum Absturz bringen. Dieser Leitfaden behandelt praktische Lösungen.
Schritt 1: Serielle Parameter konfigurieren
Öffnen Sie EcoStruxure Control Expert. Navigieren Sie zum Kommunikationsmodul des M580. Stellen Sie die serielle Schnittstelle auf den RS485-Halbduplexmodus ein. Verwenden Sie für Phoenix-Contact-Slaves folgende Grundeinstellungen:
- Baudrate: 19.200 Bit/s
- Datenbits: 8
- Parität: Gerade
- Stoppbits: 1
- Timeout für Slave-Antworten: 1.000 ms
Aktivieren Sie außerdem die Terminierung nur am letzten Gerät. Eine unbeschaltete Vorspannung kann die Logikpegel verfälschen. Vergewissern Sie sich daher, dass der Master bei Bedarf ebenfalls Vorspannungswiderstände bereitstellt.
Schritt 2: Die Registerkarte erstellen
Phoenix-Contact-I/O-Module stellen Prozessdaten als Modbus-Holding-Register bereit. Lesen Sie zunächst das Datenblatt des Moduls, um die Offsets der Eingangs- und Ausgangsregister zu ermitteln. Ordnen Sie anschließend jedes Register in Control Expert mithilfe von %MW oder symbolischen Variablen zu.
Beispielsweise könnte ein 16-kanaliges digitales Eingangsmodul die Adressen 30001–30016 belegen. Ein 4-kanaliges analoges Eingangsmodul könnte 40001–40008 für Rohwerte verwenden. Skalieren Sie analoge Werte stets innerhalb der SPS mithilfe von Structured Text. Beschriften Sie schließlich jede Variable mit dem Namen des Feld-Tags, um Verwechslungen zu vermeiden.
Schritt 3: Fehler mit einem seriellen Analyzer diagnostizieren
Wenn die Kommunikation ausfällt, schließen Sie einen RS485-Analyzer zwischen dem M580 und dem Phoenix-Contact-Slave an. Zeichnen Sie mindestens 20 Nachrichtenzyklen auf. Achten Sie auf folgende Muster:
- Timeouts: Der Master sendet eine Anfrage, erhält jedoch keine Antwort. Überprüfen Sie die Verdrahtung, die Slave-ID und die Baudrate.
- CRC-Fehler: Die Antwort trifft ein, aber die Prüfsumme ist fehlerhaft. Vermuten Sie Störungen oder eine Kabellänge von mehr als 1.200 Metern.
- Ausnahmecodes: Der Slave antwortet mit 0x01 oder 0x02. Überprüfen Sie die Registeradresse und den Funktionscode.
Vertrauen Sie jedoch niemals ausschließlich auf Softwarediagnosen. Ein physischer Analyzer zeigt genau, was über die Leitung übertragen wird. Halten Sie daher in jedem Inbetriebnahme-Werkzeugsatz einen solchen Analyzer bereit.
Schritt 4: Das Netzwerk robust machen
Verwenden Sie für den RS485-Bus ein geschirmtes Twisted-Pair-Kabel. Halten Sie es von Ausgangskabeln für Frequenzumrichter fern. Installieren Sie Ferritkerne, wenn die eingestrahlten Störungen weiterhin bestehen. Verwenden Sie außerdem eine einpunktige Schirmerdung, um Erdschleifen zu vermeiden.
Dokumentieren Sie abschließend die Slave-ID-Liste und die Registerkarte in einer gemeinsam genutzten Tabelle. Zukünftige Techniker werden es Ihnen danken. Diese einfache Gewohnheit halbiert bei Ausfällen den Zeitaufwand für die Fehlerbehebung.
Fazit und Handlungsempfehlung
Modbus RTU zwischen Schneider M580 und Phoenix-Contact-I/O funktioniert zuverlässig, wenn die Parameter übereinstimmen, die Register korrekt zugeordnet sind und die physikalische Ebene störungsfrei ist. Beginnen Sie mit der Prüfung von Baudrate und Parität, überprüfen Sie anschließend die Registeradressen und schließen Sie die Diagnose mit einem seriellen Analyzer ab. Dokumentieren Sie alles, damit die künftige Wartung schneller durchgeführt werden kann.
