Modbus RTU mit RevPiCore 3+ / RevPiConnect
Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hallo zusammen.
Für ein aktuelles Projekt möchte ich zwei RevPicore 3+ über ModBus RTU miteinander kommunizieren lassen.
Test 1:
- 2 Stück RS485 USB Adapter beschafft
- Einer ist mit Laptop, der andere mit RevPi Core 3+ verbunden
- RevPiCore 3+ als Slave konfiguriert
- Auf Laptop Seite den QModMaster als Master
--> Weder senden noch empfangen klappt
Test 2:
- analog zu Test 1, jedoch mit RevPi Connect an Stelle des Core 3+
--> Senden und empfangen klappt einwandfrei.
Hat hierzu jemand eine Idee, woran das liegen kann?
Für ein aktuelles Projekt möchte ich zwei RevPicore 3+ über ModBus RTU miteinander kommunizieren lassen.
Test 1:
- 2 Stück RS485 USB Adapter beschafft
- Einer ist mit Laptop, der andere mit RevPi Core 3+ verbunden
- RevPiCore 3+ als Slave konfiguriert
- Auf Laptop Seite den QModMaster als Master
--> Weder senden noch empfangen klappt
Test 2:
- analog zu Test 1, jedoch mit RevPi Connect an Stelle des Core 3+
--> Senden und empfangen klappt einwandfrei.
Hat hierzu jemand eine Idee, woran das liegen kann?
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hi agrotop, danke für die gute Fehlerbeschreibung. Bitte in PiCtory, ob der "device_path" korrekt gesetzt ist. Z.B. "/dev/ttyUSB0".
Prüfe, ob die Leitungen am USB-RS485 Wandler eventuell vertauscht sind.
Wenn nichts hilft, dann im Modbus Tutorial nochmals schritt-für-schritt schauen, wo eine Abweichung sein könnte.
Z.B. Parameter serielle Schnittstelle, Slave ID, etc.
Code: Select all
lsusb
Wenn nichts hilft, dann im Modbus Tutorial nochmals schritt-für-schritt schauen, wo eine Abweichung sein könnte.
Z.B. Parameter serielle Schnittstelle, Slave ID, etc.
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hallo Dirk,
vielen Dank für die schnelle Antwort.
Ich habe mit beiden Geräten (Connect und Core3+) nochmal alles gemäß Tutorial eingestellt.
Es ist immer noch so, dass die Kommunikation (Senden und Empfangen) mit dem Connect funktioniert, mit dem Core3+ leider nicht. Wenn als device_path der falsche angegeben ist, erhält man im QModMaster entsprechend eine Fehlermeldung. Dies ist nicht der Fall.
An der Verkabelung kann es nicht liegen, da diese in den beiden Tests die gleiche war (mit Connect bzw. mit Core3+)
vielen Dank für die schnelle Antwort.
Ich habe mit beiden Geräten (Connect und Core3+) nochmal alles gemäß Tutorial eingestellt.
Es ist immer noch so, dass die Kommunikation (Senden und Empfangen) mit dem Connect funktioniert, mit dem Core3+ leider nicht. Wenn als device_path der falsche angegeben ist, erhält man im QModMaster entsprechend eine Fehlermeldung. Dies ist nicht der Fall.
An der Verkabelung kann es nicht liegen, da diese in den beiden Tests die gleiche war (mit Connect bzw. mit Core3+)
- Attachments
-
- ModBusTest_RevPiCore3+.PNG (107.85 KiB) Viewed 5384 times
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hi danke für die guten Screenshots. Bitte prüfe Deine PiCtory Konfiguration mit . In beiden Geräten wird in Offset 75 geschrieben.
Code: Select all
piTest -d
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hi agrotop, könnte es sein, dass Du das Image geklont hast?
Wenn ja dann musst Du auf dem geklonten System einmal folgendes ausführen - mit Deinen Werten - und neu starten:
Wenn ja dann musst Du auf dem geklonten System einmal folgendes ausführen - mit Deinen Werten - und neu starten:
Code: Select all
pi@RevPi40302:~ $ sudo revpi-factory-reset
Usage: revpi-factory-reset <compact|connect|core> <serial> <mac addr>
(see front plate)
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hi,
When you use Core3 or Connect as Modbus RTU slave ,check the slave address in piCtory.Default slave ID is 1 when you add it in piCtory.As per your screenshot, Qmodbus Master is trying to connect with slave ID 0.
Here is a sample working connection.(Same for Core also)
When you use Core3 or Connect as Modbus RTU slave ,check the slave address in piCtory.Default slave ID is 1 when you add it in piCtory.As per your screenshot, Qmodbus Master is trying to connect with slave ID 0.
Here is a sample working connection.(Same for Core also)
KUNBUS
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hallo.dirk wrote: ↑18 Sep 2020, 15:34 Hi danke für die guten Screenshots. Bitte prüfe Deine PiCtory Konfiguration mit. In beiden Geräten wird in Offset 75 geschrieben.Code: Select all
piTest -d
Ist das Schreiben in Offset 75 nicht üblich für alle Geräte?
Welchen Offset sollte ich erwarten?
Mfg
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hi,Amar wrote: ↑23 Sep 2020, 13:48 Hi,
When you use Core3 or Connect as Modbus RTU slave ,check the slave address in piCtory.Default slave ID is 1 when you add it in piCtory.As per your screenshot, Qmodbus Master is trying to connect with slave ID 0.
Here is a sample working connection.(Same for Core also)
2020-09-23 13_45_27-Window.png
thank you for the answer.
I have already tried different "Slave Addr" in QModMaster with always the default "modbus_address" of 1 in PiCtory.
The result:
- with "Slave Addr" 0 in QModMaster --> see Core3+#modbus_address_1#QMod_0
- with "Slave Addr" 1 in QModMaster --> see Core3+#modbus_address_1#QMod_1
- with "Slave Addr" 2 in QModMaster --> see Core3+#modbus_address_1#QMod_2
- Attachments
-
- Core3+#modbus_address_1#QMod_2.PNG (25 KiB) Viewed 5143 times
-
- Core3+#modbus_address_1#QMod_1.PNG (91.13 KiB) Viewed 5143 times
-
- Core3+#modbus_address_1#QMod_0.PNG (85 KiB) Viewed 5143 times
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hallo,dirk wrote: ↑21 Sep 2020, 15:36 Hi agrotop, könnte es sein, dass Du das Image geklont hast?
Wenn ja dann musst Du auf dem geklonten System einmal folgendes ausführen - mit Deinen Werten - und neu starten:
Code: Select all
pi@RevPi40302:~ $ sudo revpi-factory-reset Usage: revpi-factory-reset <compact|connect|core> <serial> <mac addr> (see front plate)
nein, da wurde nichts geklont. Die sind alle frisch aus der Verpackung.
Re: Modbus RTU mit RevPiCore 3+ / RevPiConnect
Hallo nochmals.
Soeben habe ich den RevPiCore3+ per Image, das ich gleich Anfangs erstellt hatte, "zurückgesetzt".
Jetzt funktioniert das Senden / Empfangen vom Laptop (ModBus Master) mit dem RevPiCore3+ genau so wie dem RevPi Connect.
So weit so gut.
Nächster Schritt ist nun:
a) RevPiCore 3+ soll ModBus Master werden; RevPi Connect soll ModBus Slave bleiben
--> Test über Terminal
b) Test der ModBus Master - Slave Kommunikation mit Python
Was ist hier zu beachten, bzw. wie kann vorgegangen werden?
Soeben habe ich den RevPiCore3+ per Image, das ich gleich Anfangs erstellt hatte, "zurückgesetzt".
Jetzt funktioniert das Senden / Empfangen vom Laptop (ModBus Master) mit dem RevPiCore3+ genau so wie dem RevPi Connect.
So weit so gut.
Nächster Schritt ist nun:
a) RevPiCore 3+ soll ModBus Master werden; RevPi Connect soll ModBus Slave bleiben
--> Test über Terminal
b) Test der ModBus Master - Slave Kommunikation mit Python
Was ist hier zu beachten, bzw. wie kann vorgegangen werden?