Cilj
Po vselitvi v hišo sva po nekaj dnevih želela posesati tla. Ugotovila sva, da je velik osrednji prostor kar zahtevno sesati, ker je težko slediti kje je že bilo posesano in kje še ne. Nekje na sredini prvega sesanja sem obupal, šel na Aliexpress in nabavil naš prvi robotski sesalec. Po nekaj mesecih sem nabavil še dodatna dva, za vsako nadstropje enega.
Nastavil sem urnik sesanja, ob fiksnih intervalih vsakih nekaj dni dopoldne. Ko je med delom od doma med sestankom robot priropotal v pisarno, sem dojel, da je težko najti specifično uro, ko sesalci ne bodo nikogar motili. Želel sem, da bi bila hiša vedno posesana, a da robota ne bi nikoli videl, niti slišal sesati - torej, ko nobenega ni doma.
Na srečo sem v Home Assistant že imel vključene GPS podatke mobilnih naprav, tako da je bilo odstonost članov družine enostavno zaznati. Vse kar je ostalo je priprava urnika dela, saj se različni prostori umažejo različno hitro.
Strojna oprema
Na nakup sesalcev je močno vplivala podpora programski opremi Valetudo, ki omogoča izključitev povezave do oblaka in lokalno integracijo v Home Assistant. To omogoči neodvisnost od podpore proizvajalca in bolj stabilno integracijo.
Sesalci:
- Roborock S5 Max (klet)
- Dreame Z10 Pro (pritličje)
- Dreame Z10 Pro (mansarda)
Slednja imata praznilno postajo, ki periodo praznjenja povečata iz nekaj dni na enkrat letno.
Integracija v Home Assistant
Integracija je izvedena preko protokola MQTT, ki ga podpira program Valetudo. Omogoča zbiranje statusov seslaca, nastavitev začetka sesanja in tloris prostora.
Implementacija logike
Vsa programska logika je napisana v dodatku AppDaemon, ki omogoča poganjanje Python kode in interakcijo s Home Assistant.
Program definira urnik in druge nastavitve posameznih sesalcev.
- Klet: Začni sesati vedno ko vsi oddidejo od doma, ampak samo predprostor.
- Pritličje: Začni sesati vedno, ko vsi oddidejo od doma, v definiranem vrstnem redu sob. Začni z jedilnico in kuhinjo, ki sta najbolj obremenjeni. Vrstni red je pomemben, ker smo kdaj od doma le nekaj 10 minut, kar je premalo za celotno nadstropje, vseeno pa je dobro, da se posesa ključne sobe.
- Mansarda: Začni sesati, ko vsi oddidejo, ampak samo čez ni bilo posesano več kot štiri dni. Če ni bilo priložnosti za sesanje več kot 7 dni, posesaj v dopoldanskem času, ne glede na prisotnost članov.
Program mora nadzirati še naslednje:
- Vsak sesalec ima definiran čas sesanja, ki predstavlja zadovoljivo količino posesane površine. Ko je presežena, se šteje, kot da je delo za danes končano. S tem preprečim, da bi sesalci posesali celo hišo večkrat, če odidemo večkrat v enem dnevu.
- Vsak sesalec spremlja servisni interval za posamezne komponente, ko pretečejo, to obvestijo preko Telegrama.
- Sesanje je omejeno med 7:00 in 19:30. To prepreči situacijo, da ko greva z zaročenko ven, sesalci ne težijo varuški in spečima otrokoma.