Jak změřit spotřebu vody v domácnosti

Ať už doma používáte vodu z městského rozvodu nebo vlastní studny, mít přehled o denní spotřebě vody je užitečné. Většina lidí bude nejspíš chtít předejít velkým částkám ve vyúčtování, já se o množství spotřebované vody začal zajímat kvůli nízké hladině vody v naší studni. Vyzkoušel jsem několik způsobů, nakonec jsem koupil vodoměry připravené pro vzdálený odečet a připojil je do Home Assistant.

Zpočátku jsem spotřebu vody jenom odhadoval

Ve studni máme čerpadlo, které plní tlakovou nádobu ve sklepě. Změřil jsem si, kolik vody z nádrže vypustím od plného natlakování, až po opětovné sepnutí tlakového spínače. Podle toho, jak dlouho čerpadlo běží nebo kolikrát nádobu natlakovalo, dokážu odhadnout spotřebu vody. Postupně jsem odhadoval pomocí těchto dvou metod.

  • Pokud od plného natlakování, do opětovného sepnutí čerpadla vypustím 30 litrů a čerpadlo za den sepne 10x, odhadl jsem spotřebu vody na 300 litrů. Ale co když mám nějakou spotřebu vody i během sepnutého čerpadla? Například větší odběr pračky nebo zalévání zahrady.
  • Započítal jsem i čas běhu čerpadla. Když z plně natlakované nádoby, až k dalšímu sepnutí čerpadla, vypustím 30 litrů, znamená to, že čerpadlo při svém běhu zase do tlakové nádoby doplní 30 litrů. A pokud běží 6 minut, znamená to, že čerpadlo doplní 0,083 litru za sekundu. Pokud tedy čerpadlo za den běželo v součtu 1 hodinu, odhadnutá spotřeba byla 300 litrů.

Když jsem pak zvolil přesnější metodu pomocí vodoměru, zjistil jsem, že odhadovaná spotřeba vody byla zhruba o 1/3 větší než ta reálná.

Zde je schéma zapojení modulu ESP-01, digitální vstup GPIO-00 jsem použil jako binární senzor a vstup GPIO-02 jsem využil pro měření teploty a vlhkosti ve sklepě.

Schéma zapojení ESP-01

Tento ESPhome kód se staral o odesílání naměřených dat (stav tlakového spínače (on/off), teplota a vlhkost).

sensor:
  - platform: dht
    pin: GPIO2
    model: DHT11
    update_interval: 4s
    temperature:
      name: "Teplota ve sklepě"
      filters:
        - sliding_window_moving_average:
            window_size: 15
            send_every: 15
            send_first_at: 15
    humidity:
      name: "Vlhkost ve sklepě"
      filters:
        - sliding_window_moving_average:
            window_size: 15
            send_every: 15
            send_first_at: 15
binary_sensor:
  - platform: gpio
    pin:
      number: 0
      mode: INPUT_PULLUP
    name: "Sepnutí čerpadla"
    filters:
      - invert:
      - delayed_on_off: 500ms

Tímto kódem jsem v Home Assistant zpracovával údaje o času běhu čerpadla, počtu jeho sepnutí a odhadoval spotřebu vody. Kód je bez záruky jakékoliv funkčnosti, objevil jsem ho ve starých zálohách a nevím, jestli mu něco nechybí. Případně, zda je zrovna tato verze funkční.

sensor:
 - platform: history_stats
    name: Water pump ON today
    entity_id: binary_sensor.sepnuti_cerpadla
    state: "on"
    type: time
    start: "{{ now().replace(hour=0, minute=0, second=0) }}"
    end: "{{ now() }}"
  - platform: template
    sensors:
      spotreba_vody:
        friendly_name: "Vypočítaná spotřeba vody"
        unit_of_measurement: "litrů"
        value_template: "{{ (states('sensor.water_pump_on_today') | float * 500) | round(2) }}"
  - platform: history_stats
    name: Počet sepnutí čerpadla
    entity_id: binary_sensor.sepnuti_cerpadla
    state: "on"
    type: count
    start: "{{ now().replace(hour=0, minute=0, second=0) }}"
    end: "{{ now() }}"
  - platform: statistics
    entity_id: sensor.spotreba_vody
    state_characteristic: count
    sampling_size: 20
  - platform: statistics
    entity_id: binary_sensor.sepnuti_cerpadla
    state_characteristic: count
    sampling_size: 20
    max_age:
      minutes: 30

Pro měření spotřeby teplé vody jsem namontoval vodoměr

Na začátku roku jsem se rozhodl pro stavbu solární elektrárny svépomocí. Do té doby jsme vodu ohřívali kombinovaným kondenzačním kotlem. Když jsem v létě připravoval trubky pro zapojení bojleru, nechal jsem si prostor pro osazení vodoměru.

Při výběru vodoměru jsem hledal takový, který má vytvořenou přípravu pro elektronický odečet impulzů. Vyrábí a prodává ho česká firma Bonega. Design webu sice mají z minulého desetiletí a e-shop vůbec nevedou, ale paní, které objednávku pošlete e-mailem, je velmi příjemná a ochotná.

Když zde budete objednávat vodoměry, nezapomeňte, že k nim potřebujete i senzor s kabelem (40 cm) pro připojení k vlastnímu systému měření. Mě to při objednávce vůbec nenapadlo, ale hodná paní na druhé straně e-mailu se mě na to zeptala.

Vodoměry Bonega včetně senzorů s kabelem

Než budete vodoměr instalovat, popřemýšlejte, jestli také náhodou nepotřebujete držák vodoměru se šroubením. Je to užitečná maličkost, která usnadní instalaci (a případnou výměnu) vodoměru nejen v malých prostorech.

Pokud nejste zdatní instalatéři, dejte si také pozor na velikosti závitů vodoměrů.

  • 3/4″ trubka má 1″ závit
  • 1/2″ trubka má 3/4″ závit

Senzor vodoměru jsem připojil k vysílači impulzů

Pro zpracování impulzů z číselníku vodoměru používám Zigbee tlačítko z IKEA. Pokud je dobrý signál, je to celkem stabilní řešení, i když se občas ztratí nějaký ten impulz. Hlavně, když probíhá aktualizace nebo restart Home Assistant, počítejte s tím, že o přenášené impulzy přijdete.

Další nedostatek tohoto řešení je, že se hodně rychle vybíjí originální knoflíková baterie. Denní spotřebu teplé vody máme v průměru 50 litrů, takže tlačítko denně odešle 100 impulzů. Originální baterie v mém případě vydrží ani ne měsíc. Pravděpodobně je to způsobeno i tím, že senzor vodoměru může zůstat sepnutý a v tomto případě IKEA tlačítko nepřejde do úsporného režimu (neusne a nešeří spotřebu).

Problém s rychlým vybíjením baterie jsem vyřešit změnou napájení a použil jsem tužkové baterie. To také nevypadá jako ideální řešení. Použil jsem 2 nabíjecí baterie, které mají jen 1,2V, takže v Home Assistant se stav baterie zobrazuje jako kriticky nízký. Tato část bude chtít ještě předělat.

Jak připojit impulzní snímač k IKEA Trådfri

Připojení je velmi jednoduché, tlačítko rozebereme a na 2 pájecí plošky, původně určené pro diodu D1, připájíme vodiče impulzního snímače. Stínění odstřihneme nebo zaizolujeme, ať uvnitř nedělá neplechu (třeba náhodné vyzkratování dalších součástek). Připájené vodiče jsem zakápnul lepidlem z tavné pistole.

Zakreslené připojení vodičů
Připájené a zafixované vodiče

Pravděpodobně nebudete chtít nechat krabičku otevřenou a budete hledat nějaké vhodné víčko. Pro svůj projekt jsem vymodeloval o trochu vyšší víčko, které při stisknutí nestiskne tlačítko SW1, takže neodešle žádný impulz. Model víčka je ke stažení z Printables.com. Víčko je připravené s jedním nebo s dvěma otvory – pro kabel impulzního snímače a pro kabel od baterií.

IKEA Trådfri s vyvedeným impulsním snímačem
3D model vyvýšeného víčka pro IKEA Trådfri

IKEA tlačítko jsem integroval do Home Assistanta

Pro čtení impulzů vodoměru potřebujeme nejen tlačítko, ale i nějaký Zigbee2MQTT USB stick. Já používám CC2652P, měl by mít lepší příjem signálu oproti CC2531 (které jsou levnější). Pokud nevíte, co je MQTT, můžete se podívat do mého článku Jak zprovoznit MQTT server Mosquitto na Synology DS218

Zigbee2MQTT v Home Assistant krok po kroku

  1. V HACS (hassio/dashboard) > Obchod s doplňky > Repozitáře, přidáme nové úložiště doplňků (https://github.com/zigbee2mqtt/hassio-zigbee2mqtt)
  2. Do Home Assistant nainstalujeme plugin „Zigbee2MQTT“
  3. Do Home Assistant nainstalujeme plugin „Terminal & SSH“
  4. Do Raspberry Pi (nebo do zařízení, na kterém běží Home Assistant) zapojíme USB Stick CC2652P
  5. V Terminal & SSH spustíme příkaz „ls -l /dev/serial/by-id“ který zobrazí označení portu, do kterého je USB stick připojen
  6. Přejdeme do nastavení pluginu „Zigbee2MQTT“ (v HASSIO)
  7. V části „serial“ upravíme název portu na označení, které jsme získali z terminálu např. „port: /dev/ttyUSB0“
  8. V části „mqtt“ upravíme odkaz na MQTT server např. „server: mqtt://192.168.1.1:1883“
  9. Doplníme uživatelské jméno a heslo pro MQTT
  10. Spustíme plugin „Zigbee2MQTT“ a v jeho nastavení povolíme parametr (permit_join: false) na (permit_join: true). Slouží k párování nových zařízení. Až budeme s připojováním nových zařízení hotovi, tak parametr opět vrátíme na false.
  11. Klikneme na uložit

Párování IKEA Trådfri tlačítka s Zigbee2MQTT

Vše potřebné máme připraveno, tak můžeme tlačítko „integrovat“ do Home Assistanta. Párování IKEA Trådfri tlačítka E1812 je jednoduché.

  1. Spustíme plugin „Zigbee2MQTT“ a necháme ho otevřený. Uvidíme zde informace ohledně průběhu párování. Pro více informací můžeme v menu kliknout na záložku „Logy“.
  2. Do tlačítka vložíme baterie.
  3. Položíme tlačítko těsně vedle antény Zigbee koordinátoru CC2652P.
  4. 4x stiskneme párovací tlačítko (reset) IKEA Trådfri, umístěné kousek od baterie.
  5. Červená LED, vestavěná do tlačítka, se rozbliká.
  6. Po chvilce je zařízení úspěšně připojeno.
  7. Tlačítko si v Home Assistant pojmenujeme nějakým lidsky přívětivým názvem.

Zpracování impulzů vodoměru v Home Assistant

V tuto chvíli nám už chybí poslední krok – vytvořit senzor v Home Assistantu, který bude ukazovat spotřebu vody. Nejprve si vytvoříme pomocníka, tedy počítadlo, které bude zrcadlit číselník vodoměru. Zrcadlení hodnoty zajistíme automatizací. Následně vytvoříme senzor, který z pomocníka udělá entitu, která půjde použít v panelu energie.

Vytvoření pomocníka

  1. V Nastavení Home Assistant > Zařízení a služby > Pomocníci, klikneme v pravém dolním rohu na tlačítko „+ Vytvořit pomocníka“.
  2. Ze seznamu vybereme počítadlo.
  3. Pomocníka pojmenuje třeba „Pomocník vodoměr – teplá“
  4. Zvolíme si ikonku (já jsem použil mdi:water-boiler)
  5. Jako počáteční hodnotu použijeme aktuální stav vodoměru, „opíšeme“ všechny číslice, vynecháme desetinnou čárku a nakonec přidáme nulu navíc (protože vodoměr měří po půl litrech). Pokud je na vodoměru hodnota 1,023 m³, jako počáteční hodnotu zapíšeme 10230.
  6. Velikost kroku nastavíme na 5 (bude to pro nás znamenat 0,5 litru).
  7. Klikneme na tlačítko vytvořit

Vytvoření automatizace

  1. V Nastavení Home Assistant > Automatizace a scény > Automatizace, klikneme v pravém dolním rohu na tlačítko „+ Vytvořit automatizaci“.
  2. Vybereme možnost začít s prázdnou automatizací.
  3. Spouštěč automatizace bude „zařízení“, kde v názvu zařízení vybereme náš vodoměr, pojmenovaný jako „vodoměr teplá“ a spouštěcí signál bude „brightness_move_up“ action“.
  4. Podmínku necháme prázdnou.
  5. Akce bude navýšení hodnoty pomocníka počítadla
    • akci vybereme „zavolat službu“
    • službu vybereme „Counter: Increment“
    • entitu vybereme našeho pomocníka „Pomocník vodoměr – teplá“
  6. Klikneme na tlačítko „Uložit“ a naši novou automatizaci pojmenujeme třeba „Odečet vodoměru – teplá voda“ a do popisu vložíme nějaký výstižný popis funkce. Já použil text: „Přes Ikea Shortcut Button snímá impulsy vodoměru Bonega“
Nastavení automatizace pro odečet hodnoty vodoměru

Vytvoření senzoru

Senzor vytvoříme doplněním vlastního YAML kódu do souboru configuration.yaml

template:
  - sensor:
      - name: "Teplá voda"
        unique_id: tepla_voda
        unit_of_measurement: m³
        device_class: water
        state_class: total_increasing
        state: >
          {{ states('counter.pomocnik_vodomer_tepla') | float * 0.0001 }}

Přidání senzoru do panelu Energie

  1. V Nastavení Home Assistant > Ovládací panely > Energie > dlaždice „Spotřeba vody“, klikneme na odkaz „Přidat zdroj vody“.
  2. Vybereme náš senzor „sensor.tepla_voda“
  3. Můžeme ponechat volbu „nesledovat náklady“
  4. Klikneme na uložit a máme hotovo, Home Assistant první spotřebu vody vykreslí po 1-2 hodinách.
Graf spotřeby teplé vody Home Assistant

Protože je článek už celkem rozsáhlý, informace rozdělím do dvou dílů. V následujícím článku popíšu další variantu, kterou používám – vytvoření vlastního zařízení, které zpracovává impulzy ze senzoru vodoměru. Základem je deska s ESP32 / ESP8266 a zpracování dat pomocí ESPhome.

Diskuze

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Přejít nahoru
Scroll to Top