Mein neuer Wasserzähler von der Gemeinde ist elektrisch auslesbar. Dafür ist ein HRI Zähler-Interface von der Firma Sensus nötig was auf den Wasserzähler montiert wird. (Sensus HRI-B4/8L)
Dieses Interface hat ein M-Bus Interface.
Ich stelle die Zähler-Daten des M-Bus Interfaces über ein M-Bus Master, Modbus Slave Interface auf dem Modbus zur Verfügung (Hersteller ADFweb).
Das Modbus-Signal wird mit der Loxone Modbus Extension dem Miniserver angeboten wo ich den Zählerstand in Litern auslesen kann.
Ich will das ganze mit dem neuen Loxone Zählerbaustein anzeigen lassen.
Problem: Dieser Zählerbaustein kann nicht aus der Änderung von "Mr" den aktuellen Verbrauch ermitteln. Das muss ich also "zu Fuß" machen.
Dafür speichere ich 2 Analogwerte im Abstand von 1 Minute mit 2 Analogspeichern.
Diese Triggere ich mit dem Minuten-Impuls.
Dann wird der spätere Wert vom früheren Wert abgezogen (Subtrahierer), durch 60 geteilt und auf Plausibilität geprüft (darf nicht größer 2 sein, sonst war vorher einer der beiden gespeicherten Analogwerte nicht korrekt, z.B. nach einem System-Neustart was unschöne Peaks erzeugen würde).
Danach wähle ich den Anzeige Wert aus, wenn größer 2 war es eine Fehlmessung und ich gebe 0 aus, ansonsten multipliziere ich das Ergebnis mit 1000 und habe einen Verbrauch in ml/s.
Das ist einer meiner 2 Eingänge für das neue Zähler-Modul. Der andere Eingang ist der Zählerstand in Litern welchen ich direkt über den Modbus bekommen.
So sieht das ganze aus:
Kommentar