Das RevPi Basismodul kann als Modbus RTU Client fungieren, sodass es mit verschiedenen Modbus RTU Server wie Temperatursensoren, Tasten und Bewegungsmeldern kommunizieren kann. Diese Anleitung führt dich durch das Einrichten und Konfigurieren deines RevPi als Modbus RTU Client für robuste industrielle Kommunikation.

Voraussetzungen #

Hardware

✓ RevPi Basismodul (z. B. RevPi Connect 4)
✓ Modbus Server Geräte (z. B. Sensoren, Aktuatoren)
✓ USB-RS485-Adapter (bei Verwendung der USB-Schnittstelle)
ODER
✓ Eingebautes RS485-Terminal (auf RevPi Connect/Connect 4)

Software

✓ Webbrowser (z. B. Google Chrome oder Mozilla Firefox).

Vorbereitung #

Für USB-Verbindung (RevPi Core oder RevPi Connect)

▷ Schließe einen USB-Anschluss des RevPi Basismoduls an den Adapter an.

▷ Verwende einen D-Sub-9-Stecker, um den Adapter mit den Server-Geräten zu verbinden.

▷ Weise die Adresse der Server zu und notiere diese.
Falls notwendig, kannst du dazu Informationen in den Herstelleranweisungen finden.

Note

Wenn du mehrere Server verwendest, musst du sicherstellen, dass jeder Server eine eigene Adresse hat. Wenn zwei oder mehr Server dieselbe Adresse haben, treten Kommunikationsfehler auf.

D-sub connector config
Signal Sub-D Pin

RS485-

1

RS485+

2

GND

5

+5V

6

Einige USB-Serial-Adapter haben möglicherweise nur RS485-Datensignalleitungen (D+ und D-).

usb RS485
Für RS485 Terminal (RevPi Connect/Connect 4)

Die RevPi Connect Modelle sind mit einem RS485-Schraubanschluss für den Direktanschluss ausgestattet. Der Anschluss verfügt über:

  • A (+): positive RS485-Leitung.

  • B (-): negative RS485-Leitung.

  • GND: Erdung.

  • Functional Earth: Sicherstellung der Signalintegrität.

▷ Stelle sicher, dass die Verkabelung korrekt ist, um eine robuste und kostengünstige Integration von RS485-Geräten zu ermöglichen.

Der Anschluss hat übliche A/B-Leitungsanschlüsse (besser markiert als D+ und D-) und Referenzanschlüsse (internes GND und Functional Earth über ein 1-MOhm-RC-Netzwerk).

Verkabelungsbeispiel für RevPi Connect:

Modbus RevPi connect verkabelung

Verkabelungsbeispiel für RevPi Connect 4

Modbus RevPi connect 4 verkabelung

Schritt 1: Konfigurieren der Hardwareverbindungen #

▷ Schließe das RS485-Netzwerk an, indem du die A (+) und B (-) Leitungen vom RevPi RS485 Terminal (oder USB-RS485-Adapter) zu den Server-Geräten verkabelst.

▷ Weise eindeutige Server-Adressen zu.
Nutze das Handbuch des Geräts, um die Adresse zu konfigurieren.

Schritt 2: Modbus RTU Clients in PiCtory konfigurieren #

▷ Füge das Basismodul und den virtuellen Modbus RTU Client zu deiner Konfiguration hinzu, siehe Geräte anordnen.

▷ Ziehe das Basismodul aus dem DEvice Catalog auf die virtuelle Hutschiene.

▷ Öffne den Ordner Virtual Devices im Gerätekatalog.

▷ Ziehe Modbus RTU Slave auf das Basismodul auf der virtuellen Hutschiene.

❯ Der Modbus RTU Client wird nun in der Konfiguration angezeigt.

Modbus RevPi connect 4 wiring

▷ Konfiguriere den Modbus RTU Client, siehe Ein- und Ausgänge konfigurieren.

▷ Wähle den Modbus RTU Client in der Konfiguration aus.

Modbus RevPi connect 4 wiring

▷ Stelle die folgenden Parameter im Werte-Editor ein:

Parameter Beschreibung

Input_

Konfiguriere bis zu 32 Eingabewerte (jeweils 16 Bits)

Output_

Konfiguriere bis zu 32 Ausgabewerte (jeweils 16 Bits)

device_path_

Pfad zur Linux-Gerätedatei (Standard: /dev/ttyRS485)

baud_rate_

Geschwindigkeit der seriellen Verbindung (Standard: 19200)

parity_

Paritätsbit-Konfiguration: Keine, Gerade (Standard), Ungerade

data_bits_

Anzahl der Datenbits (Standard: 8)

stop_bits_

Anzahl der Stopbits (Standard: 1)

Note

Konfiguriere udev-Regeln für konsistente Gerätedateipfade bei der Verwendung mehrerer Geräte des gleichen Typs.

Speichere die Konfiguration und starte den Treiber neu, um die Änderungen anzuwenden.

Schritt 3: Modbus-Befehle konfigurieren #

▷ Wähle das Kontextmenü des Modbus RTU Client in der Konfiguration und wähle Extended Data.

▷ Definiere in der Eingabemaske Befehle, um mit dem Server zu kommunizieren:

Parameter Beschreibung

Slave Addr.

Eindeutige Adresse des Server-Geräts. Diese darf nur ein Mal vergeben werden.

Funktionscode

Modbus-Funktion (z. B. READ_HOLDING_REGISTERS, WRITE_SINGLE_REGISTER).

Registeradresse

Adresse des Modbus-Registers oder Bits (siehe Server-Dokumentation).

Menge

Anzahl der zu lesenden oder zu schreibenden Register/Bits.

Aktionsintervall

Intervall zwischen den Befehlen (in Millisekunden).

Gerätwert

Variablenname im RevPi Prozessabbild für das erste Wort/Bit des Befehls.

Modbus RevPi Connect 4 Verkabelung

▷ Stelle sicher, dass sich die Befehle im Prozessabbild nicht überschneiden.

Note

Bei Geräten, die eine 0-basierte Adressierung verwenden, muss die Registeradresse während der Konfiguration um 1 erhöht werden.

▷ Wähle Datei  Speichern.

▷ Wähle Werkzeuge  Treiber zurücksetzen, um die Konfiguration anzuwenden.

Fehlerbehebung und Fehlercodes #

Wenn Fehler auftreten, überprüfe das Modbus_Client_Status-Register auf den Fehlercode:

Fehlercode Bedeutung

0x10

Gerät nicht gefunden. Überprüfe die Verkabelung.

0x11

Gerät antwortet nicht. Überprüfe die Konfiguration und Registeradresse.

1

ILLEGAL FUNCTION: Ungültiger Funktionscode.

2

ILLEGAL DATA ADDRESS: Ungültige oder schreibgeschützte Registeradresse.

12

INVALID CRC: Beschädigtes Paket. Überprüfe die Verkabelung und Verbindungen.

110

CONNECTION TIMED OUT: Server hat nicht geantwortet.

▷ Zum Zurücksetzen eines Fehlers schreibe manuell 1 in das Client_Status_Reset- oder Action_Status_Reset-Register.

Note

Verwende ein höheres Aktionsintervall bei hoher Systemlast, um Kommunikationsverzögerungen zu vermeiden.

Note

Erweitere die Kapazität des Modbus RTU Clients, indem du mehr Client für zusätzliche Werte hinzufügst.

Weitere Ressourcen #