Das RevPi Basismodul kann als Modbus RTU Master fungieren, sodass es mit verschiedenen Modbus RTU Slaves wie Temperatursensoren, Tasten und Bewegungsmeldern kommunizieren kann. Diese Anleitung führt dich durch das Einrichten und Konfigurieren deines RevPi als Modbus RTU Master für robuste industrielle Kommunikation.
Voraussetzungen #
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 Slave-Geräten zu verbinden.
-
Weise die Adresse der Slaves zu und notiere diese. Falls notwendig, kannst du dazu Informationen in den Herstelleranweisungen finden.
Note
|
Wenn du mehrere Slaves verwendest, musst du sicherstellen, dass jeder Slave eine eigene Adresse hat. Wenn zwei oder mehr Slaves dieselbe Adresse haben, treten Kommunikationsfehler auf. |

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-).

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:

Verkabelungsbeispiel für RevPi Connect 4

Schritt 1: Konfigurieren der Hardwareverbindungen #
-
Schließe das RS485-Netzwerk an:
Verkabele die A (+) und B (-) Leitungen vom RevPi RS485 Terminal (oder USB-RS485-Adapter) zu den Slave-Geräten. -
Weise eindeutige Slave-Adressen zu:
Jeder Slave muss eine eindeutige Adresse haben. Entnehme das Handbuch des Geräts, um die Adresse zu konfigurieren.
Doppelte Slave-Adressen führen zu Kommunikationsfehlern.
Schritt 2: Konfigurieren des Modbus RTU Masters in PiCtory #

▷ Füge das Basismodul hinzu und füge den virtuellen Modbus RTU Master zu deiner Konfiguration hinzu.
▷ Ziehe das Basismodul aus dem Gerätekatalog auf die virtuelle Hutschiene.
▷ Öffne den Ordner Virtuelle Geräte im Gerätekatalog.
-
Ziehe Modbus RTU Slave auf das Basismodul auf der virtuellen Hutschiene.
❯ Der Modbus RTU Master wird nun in der Konfiguration angezeigt

- Wähle den Modbus RTU Master in der Konfiguration aus.

-
Stelle die folgenden Parameter im Wert-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: |
baud_rate |
Geschwindigkeit der seriellen Verbindung (Standard: |
parity |
Paritätsbit-Konfiguration: Keine, Gerade (Standard), Ungerade |
data_bits |
Anzahl der Datenbits (Standard: |
stop_bits |
Anzahl der Stopbits (Standard: |
Note
|
Konfiguriere udev-Regeln für konsistente Gerätedateipfade bei der Verwendung mehrerer Geräte des gleichen Typs. |
Schritt 3: Konfigurieren der Modbus-Befehle #
-
Erweiterte Daten öffnen:
▷ Klicke mit der rechten Maustaste auf den Modbus RTU Master in der Konfiguration und wähle Erweiterte Daten. -
Modbus-Befehle hinzufügen:
❯ Definiere in der Eingabemaske Befehle, um mit dem Slave zu kommunizieren:
Parameter | Beschreibung |
---|---|
Slave Addr. |
Eindeutige Adresse des Slave-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 Slave-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. |

Note
|
|
-
Speichern und Zurücksetzen:
▷ Klicke auf .
▷ Klicke auf , um die Konfiguration anzuwenden.
Fehlerbehebung und Fehlercodes #
Wenn Fehler auftreten, überprüfe das Modbus_Master_Status-Register auf den Fehlercode:
Fehlercode | Bedeutung |
---|---|
|
Gerät nicht gefunden. Überprüfe die Verkabelung. |
|
Gerät antwortet nicht. Überprüfe die Konfiguration und Registeradresse. |
|
ILLEGAL FUNCTION: Ungültiger Funktionscode. |
|
ILLEGAL DATA ADDRESS: Ungültige oder schreibgeschützte Registeradresse. |
|
INVALID CRC: Beschädigtes Paket. Überprüfe die Verkabelung und Verbindungen. |
|
CONNECTION TIMED OUT: Slave hat nicht geantwortet. |
Zum Zurücksetzen eines Fehlers schreibe manuell 1
in das Master_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 Masters, indem du mehr Master für zusätzliche Werte hinzufüst. |