Závlaha
Přehled
11 nezávislých okruhů napájených ze studny, spínaných modbus relé. Max 1 okruh současně (limit studny). Mezi okruhy 10min pauza na regeneraci vodního sloupce.
Skupiny podle typu:
| Skupina | Okruhy | Typ |
|---|---|---|
| Trávníky | 2, 3, 8, 9, 12 | Sprinklery |
| Kapky | 1, 5, 10, 11 | Kapková závlaha |
| Stromy | 7 | Kapky pro stromy |
| Záhony + skleník | 6 | Záhony spolu se sklenikem — vlastní automation, ignoruje déšť |
Řízení
Každý okruh má dva helpery v Home Assistant:
input_boolean.zavlaha_okruh_N_povolen— zapíná/vypíná okruh pro plánované i manuální sekvenceinput_number.zavlaha_doba_{travnik,kapky,zahony,stromy,test}— doba běhu v minutách, společná pro celou skupinu (stromy mají od 2026-06 vlastní dobu, oddělenou od záhonů; test = délka testovacího cyklu po zapnutí helperu)
Ovládání je přes dashboard Zahrada (dashboards/zahrada.yaml).
Test okruhu
Když uživatel přepne input_boolean.zavlaha_okruh_N_povolen z off → on, automation zavlaha_test_okruh spustí daný switch na dobu danou input_number.zavlaha_doba_test (default 2 min). Pokud uživatel během testu přepne další boolean, předchozí se vypne a pustí se nový (mode restart). Před každým testem se preventivně vypnou všechny závlahové switche — ochrana před zůstalým stavem po přerušeném běhu. Test se nespustí, pokud právě běží plánovaná ranní nebo večerní sekvence.
Plánované sekvence
Frekvenci řídí vodní bilance (viz Jak systém rozhoduje), ne pevný kalendář.
| Automation | Čas | Podmínky | Co spouští |
|---|---|---|---|
zavlaha_vyhodnoceni_bilance |
04:00 | — | Přepočte obě vodní bilance z Open-Meteo (nezalévá) |
zavlaha_zahony_rano |
04:30 | Duben–říjen | Záhony + skleník (okruh 6) — krytý, vždy |
zavlaha_rano |
05:00 | Duben–říjen, deficit přes práh (slider, default 4 mm); dešťové veto jen pod 30 °C | Trávníky + kapky + stromy |
zavlaha_zahony_vecer |
20:30 | Duben–říjen, ET0 dnes > 4 mm (horký den) | Záhony + skleník (okruh 6) |
Open-ground jen ráno. Trávníky, kapky a stromy se zalévají výhradně ráno — mokré listy přes noc = houbové choroby. Bývalá večerní sekvence zavlaha_vecer je vypnutá (zakomentovaná v automations.yaml); to byl přesně ten běh, co po bouřce 20.6.2026 lil do kaluží. Jediný povolený večerní běh je skleník (kapka → bez rizika), a jen v horké dny.
Záhony + skleník (okruh 6) zvlášť. Skleník je krytý → déšť na něj neprší → potřebuje zálivku každý den v sezóně (ráno 4:30), plus druhou dávku večer (20:30) jen ve dnech s vysokým výparem. Má vlastní vodní bilanci skleník (počítá jen výpar, déšť ignoruje). Časově mimo hlavní okno — neperou se o studnu.
Ranní sekvence jede trávníky → kapky → stromy; po doběhnutí se bilance plochy resetuje na 0.
Skripty
script.zavlaha_spust_okruh— interní helper. Parametry:okruh(switch),povolen(input_boolean),doba_helper(input_number),pauza_po(bool, defaulttrue). Pokud jepovolen: off, přeskočí celý blok včetně pauzy.script.zavlaha_sekvence_rano,script.zavlaha_sekvence_vecer— volajízavlaha_spust_okruhpro každý okruh v daném pořadí. Poslední okruh v sekvenci mápauza_po: false. Okruh 6 (záhony+skleník) v těchto sekvencích není — má vlastní automations.
Definice: scripts.yaml.
Senzory a zdroj počasí
Řízení nepoužívá žádná lokální čidla — vše z Open-Meteo (free API, bez klíče, souřadnice z zone.home):
sensor.zavlaha_et0_dnes— referenční evapotranspirace (FAO-56, mm/den) = kolik vody se dnes odpaří. Má v sobě teplotu, radiaci, vlhkost i vítr.sensor.zavlaha_srazky_dnes/_vcera/_zitra— naměřené (včera/dnes) a hlášené (zítra) srážky v mm.input_number.zavlaha_bilance_plocha/_sklenik— vodní bilance v mm (viz níže).sensor.zavlaha_max_teplota_dnes— max teplota (met.no), informativní.binary_sensor.zavlaha_predpoved_deste— informativní (ikona na dashboardu). Už není brána — nahradila ji vodní bilance.
Definice: rest.yaml (Open-Meteo), template.yaml (teplota).
Jak systém rozhoduje
Funguje jako vodní bilance (kbelík v mm). Každý den ve 4:00 (zavlaha_vyhodnoceni_bilance) se přidá čistá změna za včerejšek (plně naměřený):
bilance += spadlý déšť včera − odpar (ET0 × kc) včera, ořez na ⟨−50, strop⟩ mm (strop = slider, default 10 mm pro otevřenou plochu; skleník má strop pevně +20).
Záměrně včerejšek, ne dnešek — dnešní hodnoty jsou z velké části předpověď a odpolední déšť by minuly. Hlášený déšť (dnes/zítra) se uplatní jen jako veto v ranní bráně (zavlaha_rano nezalévá, když se na dnešek nebo zítřek čeká ≥ 5 mm), ne v bilanci.
Výjimka — horko: když je předpověď max teploty > 30 °C, dešťové veto se vypne a rozhoduje jen bilance (= naměřený déšť). Důvod: ve vedru je cena za chybný skip (předpověď slíbí déšť, ale mine — Open-Meteo to umí) vysoká — zakořeňující trávník by zbytečně 2–3 dny schnul. Pod 30 °C veto platí dál (šetří vodu a chrání před přemokřením, když fakt zaprší na chladnější půdu).
- Záporná = deficit (sucho) → ráno se zalévá. Kladná = vlhko → přeskočí. Po zálivce se resetuje na 0.
- Vydatný déšť vyšponuje bilanci na strop → systém přirozeně přeskočí několik dní, než to výpar stáhne zpět do deficitu. Tím se neopakuje incident z 20.6. (zálivka do kaluží po bouřce).
- Frekvence vzniká sama: parno → velký výpar → deficit rychle → zalévá ~denně; chladno/zataženo → malý výpar → řidčeji (chrání podmáčená stínná místa); déšť → skip.
- Práh deficitu (jak hluboko smí vyschnout, než zaleje) je slider na dashboardu Zahrada —
input_number.zavlaha_prah_deficit(default 4 mm; menší = častěji, větší = řidčeji). - Strop bilance (kolik "kreditu" po dešti smí bilance nahromadit) je taky slider —
input_number.zavlaha_bilance_strop(default 10 mm pro otevřenou plochu; nižší = kratší pauza po vydatném dešti). Je to zástupný proxy za vsak/gravitační redistribuci, kterou model jinak nepočítá — model má jen výpar jako ztrátu. Skutečný hluboký vsak je u nás nespolehlivý (nepropustný jíl ~40 cm pod povrchem, proto sklon k podmáčení), takže samostatný odtokový člen nedává smysl; nižší strop dělá podobnou práci jednodušeji. Nižší hodnota se hodí pro mladý/mělce zakořeněný trávník v létě (méně rizika, že bilance "sedí" kladná moc dlouho). - Koeficient
kc(plocha 0,8 / skleník 1,0) je natvrdo vzavlaha_vyhodnoceni_bilance.
Když to nefunguje (troubleshooting)
- Nezalévá, i když je sucho: porovnej
input_number.zavlaha_bilance_plochas praheminput_number.zavlaha_prah_deficit. Když je bilance nad −prahem (např. ≥ −4), systém čeká — buď nedávno naměřeně pršelo (Open-Meteo to vidělo), nebo je pod 30 °C a na dnešek/zítřek se čeká ≥ 5 mm deště (veto). Možnosti: sniž práh sliderem (zalévá častěji), nastav bilanci ručně níž v UI, nebo zalej okruh ručně (přepnutí jehoinput_booleanoff→on = krátký test). sensor.zavlaha_*ukazujíunavailable: Open-Meteo je nedostupné. Bilance drží poslední hodnotu a zalévá dál podle ní; po obnovení se samo srovná.- Zalévá moc/málo vody (ne četnost): to není o bilanci, ale o délce dávky — uprav
input_number.zavlaha_doba_*na dashboardu Zahrada. Kotva: ~10 min bylo osvědčené; pozor na podmáčení (jíl ~40 cm pod povrchem špatně odvádí vodu).
Přidání nebo odebrání okruhu
- Přidat / odebrat switch v
modbus/konfiguraci - Přidat / odebrat
input_boolean.zavlaha_okruh_N_povolenv input_boolean.yaml - Přidat / odebrat volání
script.zavlaha_spust_okruhv ranní a večerní sekvenci v scripts.yaml (pozor: okruh 6 do sekvencí nepatří — má vlastní automations v automations.yaml) - Přidat / odebrat položku v dashboardu Zahrada
Plánované rozšíření
- Zigbee soil moisture senzor (
sensor.0xa4c138ab75d4dfcc_soil_moisture) jako podmínka — nezavlažovat pokud je země už vlhká. - Zigbee dešťový senzor pro okamžité přerušení běžící sekvence.