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.
Greife ich allerdings über einen ModbusTCPClient auf das Register zu werden mir die Inhalte angezeigt.
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
Heizungsüberwachung mit Modbus TCP
Re: Heizungsüberwachung mit Modbus TCP
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. 00
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. 00
KUNBUS