Modbus - Probleme beim Setzen von Werten

Hallo zusammen,

ich habe ein seltsames Problem mit meiner Zimmermann Proxon-Heizung.

Die Heizung hängt per ModBus an IP Symcon.

Für die Zieltemperatur der Räume kann man den Wert abfragen und auch wieder Setzen. Dabei wird die Temperatur in zehnfachen Grad Celsius übermittelt und auch gesetzt.
Eine Temperatureinstellung für einen Raum von 23 °C kommt also als SmallInt 230.

Jetzt kann ich natürlich in den Modbus-Einstellungen bei Faktor die Einstellung „Divide 10“ wählen. Damit kommen dann die Werte korrekt als 23,0 °C in IPS an.

Aber scheinbar führt ein „Divide 10“ beim Lesen nicht automatisch zu einem „Multiply 10“. Wenn ich also im WebFront die Temperatur auf 24 °C setze wird aber nur der Wert 24 über den ModBus geschickt, statt 240.

Habe ich nur irgendwo falsch geklickt? Oder benötigt man dafür ein Aktionsskript?

Ich benutze IP Symcon 4.1 testing auf dem Raspberry pi.

Viele Grüße

Gustlp

Bist du dir da ganz sicher? Über das WebFront und über ModBus_WriteRegister sollte es laufen und der Faktor korrekt angewandt werden. Nur die Spezialfunktionen (z.B. ModBus_WriteRegisterSmallInt) werten den Faktor nicht aus

paresy

Hallo paresy,

Danke für die Info. Die Funktion habe ich in der IPS Dokumentation gar nicht gefunden.

Und ja, korrekt. Wenn ich die Werte mit ModBus_WriteRegister schreibe werden sie automatisch mal 10 genommen.

Damit ist mein Programmierproblem gelöst.

Allerdings habe ich wohl noch ein anderes Problem: Die Bedieneinheiten in den Räumen scheinen die ModBus-Befehle alle 30 Sekunden wieder zu überschreiben. Da muss ich wohl nochmal mit Zimmermann reden.

Viele Grüße

Andreas Seemüller