Wasserzähler smart machen

Nachdem ich mir für dieses Jahr das “Smartmachen” meiner Energiezähler auf die Fahne geschrieben habe, passt dieser Thread perfekt in mein Vorhaben.
Aktuell bin ich noch an unserem Gaszähler dran, aber anschließend soll die Wasseruhr folgen.
Danke @miwa71 für den Link. :+1:

Hallo @DST73, inzwischen habe ich den Zähler erhalten und auch in Home Assistant eingebunden. Nun habe ich noch eine Frage: wozu dient der Offset und wie erstelle ich ihn?

@hans-u.49 Hierbei handelt es sich bei mir um ein “Helfer” (unter Einstellungen/Helfer) welcher ein Eingabefeld ist und das ich dazu nutze um den aktuellen Zählerstand bzw. die Differenz aus dem aktuellen Zählerstand und dem Verbrauch in m3 des Zählers einzutragen. Somit habe ich im Endeffekt den aktuellen Zählerstand plus den Verbrauch in einem Sensor.

Ich hatte selbiges Problem mit diesem Altair Wasserzähler. Habe etliche Stunden damit investiert ihn halbwegs lesbar zu kriegen, was am Ende auch halbwegs ging aber nie richtig zufriedenstellend war. Die “Liter” habe ich durchaus lesbar bekommen, durch relativ weit “oben” positionieren der Kamera. Mir schien eher das größere Problem das die 2. Kommastelle also der “10er” seitlich versetzte Zahlen auf der trommel hat. Irgend was war dann immer mal wieder nicht lesbar.

Habe jetzt auch auf Induktiven umgestellt. Läuft seit ein paar Tagen und ich bin durchaus zufrieden.

Ich habe diesen Sensor verwendet: LJ12A3-4-Z/BX-5V
Mit diesem hatte ich auch das Problem des prellens.
Es wurde jeder Puls doppelt gezählt. Oder anders, immer wenn die Fahne den Sensor verlassen hat wurde auch gezählt. Ich gehe davon aus das dass auch prellen ist. Um es richtig zu sehen bräuchte man wohl ein oszi?!

Ich habe dies jedoch innerhalb der Platform pulse_meter herausgefiltert, da auch diese platform einen Filter dafür bietet.

  - platform: pulse_meter
    pin:
      number: GPIO2
    name: "Wasserzaehler Flussrate"
    id: water_meter_flow_rate
    unit_of_measurement: "l/min"
    icon: "mdi:pulse"
    internal_filter_mode: PULSE
    internal_filter: 100ms
    timeout: 480s
    total:
      name: "Wasserverbrauch"
      unit_of_measurement: "L"
      icon: mdi:water
      id: water_meter_total
      accuracy_decimals: 0
      device_class: water
      state_class: total_increasing

Ich musste auf Filter mode: PULSE gehen, andere option wäre edge. Denke bei edge zählt er die flanke, und bei mir kam wohl immer noch eine zweite flanke durch das prellen.
Vielleicht hilft ja dem ein odere anderem diese Filter option. Mit den 100ms spiele ich gerade noch etwas rum. Aber im moment sieht es nach zuverlässiger messung aus.

Den langen timeout habe ich gewählt um eine Flussrate auch bei sehr geringem Wasserfluss angezeigt zu bekommen da ich damit eine leckageerkennung ausführen möchte die mir vollautomatisch den Haupthahn abdreht.

1 „Gefällt mir“

Hast du es mittlerweile hinbekommen?
Mit dem ReedKontakt oder mit dem Tür Sensor? Und falls ja wie? Den Sensor unter die blaue Kappe?
Besten Dank;)

Habe die teure Variante gekauft

Damit funktionierts

Danke für dein Antwort.

Und dann mit Shelly Plus i4 DC verbunden? Nach dieser Anleitung? Wasserzähler smart machen und in Home Assistant integrieren

Jap genau… hat wunderbar geklappt

1 „Gefällt mir“

@Philipp_X
Funktioniert das jetzt bei Dir zuverlässig mit dem LJ12A3-4-Z/BX-5V?

Ich habe den Sensor nun auch in Betrieb genommen, aber bei mir kommt nur Matsche raus. Wenn ich den Hahn kurz aufdrehe geht der Zählerwert extrem nach oben.
Allerdings habe ich erst vor zwei Wochen mit HA angefangen. Zuerst habe ich den Gaszähler in Betrieb genommen. Arbeite mich so langsam in das Thema ein, aber der Wasserzähler Sensor und die Werte machen mich ganz kirre.

Ja, es funktioniert bei mir mit diesem Sensor. Läuft seitdem problemlos. Ich habe minimale Abweichung. Das stört mich aber nicht. Habe auch am Code nichts mehr geändert.
Das ganze ist ja weniger HA sondern eher ESP Home.
Denke du musst den Fehler eher dort suchen.

Hallo zusammen. Gerne gebe ich meinen Senf auch dazu.
Ich nutze für Gas und Wasser ein ESP32CAM mit AI on the Edge. Läuft einwandfrei.
Die Ganzen Helfer für Tag, Monat, etc. spare ich mir, habe ja die Entität ins Energy Dashboard bei Gas respektive Wasser eingebunden. Dann kann ich das da dann mit Kalender auswählen und ablesen, wie viel ich will.

Problematisch war die Ausleuchtung der Wasseruhr/Des Gaszählers. Die geringste Reflektion verursacht Auswertungsfehler. Gas läuft seit mehr als einem halben Jahr absolut störungsfrei. Wasser habe ich erst seit 3 Monaten, läuft aber auch problemlos.

Was ebenfalls schön ist, ich habe mir so mit Strom, Gas, Wasser einige Formeln zusammengestellt und so habe ich eine sehr genaue Nebenkostenabrechnung, bevor die Rechnung kommt. Ich habe damit auch analysen gemacht und Massnahmen ergriffen, um Heizkosten zu sparen. Donnerwetter, das macht sehr viel aus. Die erste Rechnung kam gerade vor einer Woche, und ich war mit meinen Formeln innerhalb der gemessenen 3 Monate (1 Quartal) gerade einmal 2 Franken daneben. Das ist sehr präzise.

Danke für die Rückmeldung. Ich hatte mir für unsere Wasseruhr Sensus 620 Q3 4 eine Halterung nebst Sensor gekauft und mit einem AZ ESP32 in Betrieb genommen. Grundsätzlich läuft es auch, nur die Werte passen überhaupt nicht. Gestern den Startwert initial_value: ‘594’ eingetragen, installiert nebst HA Neustart und mir wird nach 2x Duschen und einer Wäsche Gesamtverbrauch 760L angezeigt = Gagga.

Dank @Yavki seiner Konfiguration konnte ich das erst einmal so in Betrieb nehmen. Entspricht in etwa meinen Vorstellungen und wurde nur leicht angepasst.

@Philipp_X

Wärst Du so nett und könntest uns mal Deine Konfiguration zu Verfügung stellen. Ich würde das gern einmal bei mir damit testen. Vorab lieben Dank dafür.

Anbei mal meine Konfiguration, ob da so alles passt kann ich noch nicht genau beurteilen. Vorerst läuft es so erst einmal, nur eben nicht genau :wink:

Sonst bin ich schon schwer begeistert vom Thema HA. Einstieg war bei mir die Heizung Buderus GB172 smarter zu machen mit EMS-ESP (Buderus KM200 V2 gleich verkauft) gefolgt vom Einbau eines Gaszähler mittels Reed Kontakt. Das läuft so schon ganz gut.

@chopper145

Analyse nebst Maßnahmen ergreifen ist auch mein Ziel, aber davon bin ich noch sehr, sehr weit entfernt :blush:

Danke für Eure Unterstützung.


globals:
  - id: total_pulses
    type: int
    restore_value: false  # Speichern im Flash deaktiviert, wenn nicht notwendig
    initial_value: '594'  # Startwert des Zählers (Ganzzahl)
  - id: imp_ratio
    type: float
    restore_value: false  # Keine Notwendigkeit, die Impulsrate zu speichern
    initial_value: '0.001'  # Impulsrate vom Wasserzähler (0.001 Liter pro Impuls)
    # Wenn z.B. der Original Zählerstand 594,053 ist, dann nur 594 als Zähler Startwert
    # Sensor LJ18A3-8-Z/BX für Wasseruhr Sensus 620 (Deckeldurchmesser 76-78), esp gewechselt auf AZ ESP32
    
binary_sensor:
  - platform: gpio
    id: internal_pulse_counter
    pin:
      number: GPIO27
      # Leitung Schwarz an G27 (GPIO27), Leitung Blau an GND, Leitung Braun an 5V
      # mode: INPUT_PULLUP  # GPIO27 als Eingang mit Pullup-Widerstand, ohne mode-Attribut, wird standardmäßig der Pin als reiner Eingang ohne Pullup- oder Pulldown-Widerstand konfiguriert.
      inverted: true  # Signal invertieren test 21.12.2024
    name: "Wasserzähler-Impuls"
    # Diese Filter sorgen dafür, dass der Sensor zuverlässig arbeitet und nur gültige Impulse erkennt
    filters:     
      - delayed_on: 100ms  # Test mit 100ms  Debouncing, der Impuls muss mindestens 50ms dauern, um als gültig zu zählen
      - delayed_off: 400ms  # Test mit 500ms Nach dem Impuls muss eine Pause von mindestens 100ms folgen
    on_press:
      then:
        - lambda: 'id(total_pulses) += 1; ESP_LOGD("Wasserzähler", "Aktueller Zählerstand: %d", id(total_pulses));'

# Sensoren
sensor:
 # Sensor für Wasserverbrauch
  - platform: template
    name: "Wasserverbrauch gesamt"
    id: wasser_verbrauch_total
    device_class: energy
    unit_of_measurement: "m³"
    state_class: "total_increasing"
    icon: "mdi:water"
    accuracy_decimals: 3
    lambda: |-
      return id(total_pulses) * id(imp_ratio);  
    # Umrechnung - zählt alle Impulse hoch und rechnet diese um in m³ 

  - platform: template
    name: "Wasserverbrauch in Liter"
    id: wasser_verbrauch_liter
    device_class: water
    unit_of_measurement: "Liter"
    state_class: "total_increasing"
    icon: "mdi:water"
    accuracy_decimals: 0
    lambda: |-
      return id(total_pulses);  
    # Berechnung in Litern (Anzahl der Impulse)

Ich habe einfach einen Wasserzähler mit Reed-Kontakt gekauft und in Reihe zum Originalzähler gehängt. Kostet keine 50€. Und selbst bei einem Wechsel von der Wasseruhr läuft alles weiter wie bisher.

2 „Gefällt mir“

Gefällt mir sehr gut - stimmen die Werte bei Dir immer? Schade das ich so etwas nicht früher gesehen habe, finde ich eigentlich besser als mit dem Sensor. Wo und welchen Reed-Kontakt hast Du da gekauft? Besten Dank

Der Reed ist da schon mit dabei. Ich habe einen Shelly uni plus zur Auswertung. Der Zähler mach einen Impuls pro 0,25l. Läuft jetzt seit letzten Freitag. Werte schauen sehr gut aus. Bei einem Test mit einem 20l Eimer gab es keine Abweichung. Aktuell auch keine Abweichung zur Wasseruhr. Aber es wurde auch noch nicht so viel Wasser verbraucht.

Der nutzt die beiden Stifte der Sichtscheibe als Halter oder? Kann man doch sicherlich auch mit dem ESP32 in Betrieb nehmen ohne Shelly. Wo hast Du den geholt - habe auf die schnelle das hier gefunden. Vorerst versuche ich erst einmal mein Lösung ordentlich zum laufen zu bringen, da ja nun alles vorhanden ist :wink:
https://www.stark-elektronik.de/p/wohnungswasserzaehler-fuer-warmwasser-inkl-reed-kontaktgeber-1-liter-imp

Gibt es mit versch. Gewinden und auch mit 1 Impuls pro Liter.

Danke, wird an meiner Wasseruhr Sensus 620 Q3 4 wohl nicht funktionieren - die Umsetzung ist Klasse.

Ich wollte mir halt die Bastlerei und die Versuche ersparen. Und wenn die Wasseruhr getauscht wird geht es dann vielleicht von vorne los. So war die Sache halt ruckzuck erledigt.

Das klingt nach einer sehr guten Alternative. Den Zähler hatte ich tatsächlich auch schon im Auge.

Wie sieht deine espHome-Config dafür aus? Natürlich nur, wenn Du sie veröffentlichen möchtest.

Vielen lieben Dank dir!