Page 1 of 1

Heizungsüberwachung mit Modbus TCP

Posted: 19 Mar 2020, 23:37
by Bobbe1981
Hallo,

ich möchte mit dem RevPi Core meine bestehende Heizung (mit ETA-Regelung) überwachen, über eine benutzerfreundlichere Oberfläche navigieren und bei Bedarf die Steuerung etwas automatisieren. Die Heizungssteuerung soll weiterhin über ETA laufen. Als Kommunikationsschnittstelle habe ich nun meinen RevPi als Modbus-TCP Master sowie die Modbus Funktion am Slave aktiviert und konfiguriert. Ich möchte eigentlich nur die aktuellen Isttemperaturen der einzelnen Räume/Aussenfühler/Kessel usw) von der Steuerung auslesen und die Solltemperatur und deren Zeitspanne schreiben können. Das aktuelle Problem besteht jedoch darin, dass ich die definierten Register noch nicht mal lesen kann.
chrome_BcyC5R1TGC.png
chrome_BcyC5R1TGC.png (21.12 KiB) Viewed 3663 times
putty_Deal4g2VTi.png
putty_Deal4g2VTi.png (32.59 KiB) Viewed 3663 times
Greife ich allerdings über einen ModbusTCPClient auf das Register zu werden mir die Inhalte angezeigt.
Simply_Modbus_TCP_Client_8.1.2_I1LqTA78iw.png
Simply_Modbus_TCP_Client_8.1.2_I1LqTA78iw.png (217.7 KiB) Viewed 3663 times
Herstellerangaben zur Modbus-Schnittstelle:
- Serverport 502
- es müssen immer 2 Register gleichzeitig gelesen werden.
- die Kommunikation ist auf lesen (FC3) und schreiben (FC16) begrenzt.


Folgendes habe ich bereits erfolglos versucht:
- RevPi mit Jesse Image
- RevPi mit Scratch Image
- Nach jeder Änderung wurde Save und Reset Driver durchgeführt
- IP-Adresse des Slaves manuell vergeben sowie über die automatische IP-Suche (Slave wurde gefunden)
- 1bit-Offset bei Adressierung angewendet

Da ich hier leider nicht weiterkomme wäre ich über Hilfe dankbar.


Danke Schöne Grüße
Robert

Re: Heizungsüberwachung mit Modbus TCP

Posted: 25 Mar 2020, 15:40
by Amar
You have to check the First register address in your Simply Modbus TCP client.It might me needed to be incremented by one.This could occur if wrong indexes are read.
Also there seems to be overlap in Input_Word_1 and Input_Word_2

For Register address 4000 ,READ_HOLDING_REGISTERS Quantity 2, values are stored in Input_Word_1 and Input_Word_2
For Register address 5000 ,READ_HOLDING_REGISTERS Quantity 2, values are stored in Input_Word_3 and Input_Word_4

Simultaneous reading of multiple holding registers works at my side.
image-20200325-141505.png
image-20200325-141505.png (67.41 KiB) Viewed 3636 times
00
image-20200325-141332.png
image-20200325-141332.png (17.59 KiB) Viewed 3636 times