Čisto pravi računalnik: Platforma za pametni dom (Hass.io)
Raspberry Pi lahko služi za mnoge namene, dva zanimiva in zabavna načina uporabe sem že opisal. A če gledanje filmov in serij ter igranje starih igric za vas niso prava stvar, vas mogoče premami platforma, s katero lahko vaša hiša, stanovanje, pisarna postanejo prav zares pametni.
Pametna hiša je želja marsikaterega tehnološkega navdušenca. A kljub široki in pestri ponudbi izdelkov je izbira pristopa pri takem projektu vse prej kot enostavna. Pri resnejših projektih se lahko začetno navdušenje hitro umakne racionalnemu razmišljanju o raznolikih tehnoloških standardih, hitri zastarelosti in drugih hibah divje razvijajoče se ponudbe. Pri enostavnejših rešitvah, kamor prištevamo pametne žarnice in stikala, tudi toplotne črpalke, klimatske naprave in množice različnih tipal, pa ugotovimo, da stvari kolikor toliko povezano delujejo le, če uporabljamo vse izdelke istega proizvajalca. V nasprotnem primeru smo obsojeni na kopico rešitev dvomljive kakovosti s slabim vzdrževanjem, o enostavnosti povezovanja pa lahko le sanjamo.
Mnogi se strinjajo, da rešitev očitno ni enoten proizvajalec ali vsaj poenoteni standardi, ampak storitev, ki vse mogoče standarde poveže v celoto, se neprestano razvija in nadgrajuje. Verjetno ste že slišali za rešitev IFTTT, ki jo podpirajo mnoge pametne rešitve in na osnovni ravni počne prav to – povezuje tipala, naprave in tudi storitve različnih proizvajalcev. Omogoča, da sestavimo navodila, kjer sprememba statusa v eni storitvi povzroči akcijo v neki drugi; recimo samodejni vklop luči ob prihodu domov. A za bolj zagrete ponuja storitev IFTTT premalo. Enako lahko zapišemo za rešitve, ki jih ponujajo operacijski sistemi mobilnih telefonov, torej Google Home in Apple Home Kit. Sploh pa, ali si res želimo, da bi tehnološki velikani vedeli za vsak prihod domov in za vsako kuhanje jutranje kave?
K sreči obstajajo odlične alternative in ena izmed njih je Homey, ki ponuja bistveno naprednejše povezovanje med napravami različnih proizvajalcev. Okroglih tristo evrov vredna naprava v obliki lepe bele steklene krogle, ki naj bi se znala povezati s kar 40.000 različnimi napravami, tipali in storitvami, omogoča popolno avtomatizacijo doma, povezovanja pa lahko gradimo tudi sami.
A ker me zanimajo rešitve, ki jih lahko sestavimo sami, in izkaže se, da je tudi takih kar nekaj. Zelo priljubljena rešitev je openHAB, ob preizkusih me je najbolj navdušil Home Assistant, krajše imenovan kar HASS. Gre za odprtokodno platformo za avtomatizacijo doma, pisarne ali lokala. Po nekaj tednih preizkušanja lahko potrdimo, da gre za odlično rešitev, ki po nekoliko težjem začetnem nastavljanju omogoča izjemno veliko svobode.
Pa začnimo!
Če sem v prejšnjih dveh člankih opisali rešitvi, ki ju prenesemo s spleta in zapišemo na pomnilniško kartico, imamo tokrat možnost uporabe tehnološko nekoliko zanimivejše rešitve. Priporočamo, da namesto standardne namestitve uporabite možnost uporabe tehnologije »kontejnerjev«, ki jo ponuja sestrski projekt HASS.IO. Tak pristop zelo poenostavi namestitev in pomeni, da bomo na pomnilniško kartico prenesli le operacijski sistem, ki bo ob prvem zagonu s spleta prenesel vse potrebne komponente in začetne nastavitve, kasneje pa na enak način poskrbel tudi za vse nadaljnje nadgradnje.
Ko boste sliko programske opreme preslikali na pomnilniško kartico, jo vstavili v Raspberry Pi in tega priključili na napajalnik, bo trajalo približno 20 minut, da se bo prenesel še celoten kontejner. Ko bo to opravljeno, lahko Raspberry Pi postavite kamorkoli, pomembno je le, da je prek domačega omrežja povezan s spletom. Že ob prvem zagonu se bo povezal s pametnimi stikali, z žarnicami, ogrevalnimi in s hladilnimi napravami, televizorji, z omreženimi predvajalniki in drugimi komponentami. Trenutno je takih, ki jih HASS pozna, skoraj 1100. Med njimi pa niso le fizične naprave, ampak tudi vremenske, navigacijske, finančne, poslovne in druge storitve ter seveda pametni pomočniki, konkretno Google Assistant in Alexa. To omogoča sestavljanje res neverjetnih scenarijev.
Nazoren primer je avtomatizacija, ki zjutraj na različnih avdio napravah po hiši sporoči, koliko časa boste potrebovali do šole ali službe, ali taka, ki zvečer vključi zalivalne naprave, zapre garažna vrata, vklopi luči in še kaj. Moč avtomatizacijam dajejo informacije o okolici, torej vremenu, prometu in podobno, pa tudi prisotnost ali odsotnost družinskih članov v domu. Tako lahko, denimo, naročimo zagon pametnega sesalnika nekaj minut za tem, ko vsi družinski člani zapustijo dom. Ker gre za odprtokodno rešitev, je na spletu na voljo mnogo blogov, posnetkov na YouTubu, celo poddaj, iz katerih lahko črpamo ideje in spoznavamo, kako so HASS uporabili drugi.
Naprave s HASS ni treba priklapljati na zaslon, tam tudi ne boste kaj veliko videli. Le brskalnik usmerite na vrata 8123, številko IP pa boste morali ugotoviti na usmerjevalniku ali kako drugače – pričakal vas bo nastavitveni portal. Nastavitve naprav, prikazov in avtomatizacij lahko opravite prek grafičnega vmesnika, a slej kot prej se boste morali naučiti brati in urejati konfiguracijske datoteke. Najpomembnejša je configuration.yaml, v kateri boste vklopili storitve in naprave. Najlažje boste do nje dostopali tako, da boste vklopili dodatek za storitev Samba in odprli datoteko prek omrežne povezave.
Ker ima HASS storitev, imenovano Discovery, ki po omrežju samodejno išče naprave, bo nekatere domače naprave sistem prepoznal kar sam. Med preizkusom je tako samodejno našel pametna stikala TP-Link in WeMo, predvajalnik Chromecast, Kodi in strežnik Plex. Za dodajanje ostalih naprav in storitev pa sem pobrskal po spletni pomoči. Ne spreglejte, da spremembe konfiguracije ne učinkujejo takoj, ampak bo treba prek spletnega vmesnika sprožiti njihovo ponovno branje, v primeru večjih sprememb pa ponovno zagnati HASS.
Red mora biti
Ko smo nastavili prve naprave, lahko začnemo razmišljati o razporeditvi kartic na portalu in preimenovanju naprav in storitev, da se bomo med njimi lažje znašli. To bomo opravili v datoteki groups.yaml, za uveljavljanje sprememb pa bo dovolj sprožiti ponovno branje datoteke.
Prava zabava se začne, ko začnemo sestavljati scenarije za avtomatizacijo. Vsaka avtomatizacija je sestavljena iz prožilca (trigger, primer je prihod domov), pogoja (condition, primer je, da je zunaj temno) in akcije (action, primer je »prižgi luči pred vhodom«). Urejanje avtomatizacij lahko opravimo prek grafičnega vmesnika, ki omogoča osnovne zadeve, a ta hitro postane preveč okoren. Takrat boste spoznali datoteko automation.yaml, kjer boste verjetno preživeli največ časa.
Poleg naprav, tipal in storitev ter seveda njihove avtomatizacije pozna HASS še dodatke (add-ons). To so lahko enostavne zadeve, kot, denimo, v spletni vmesnik vgrajen urejevalnik konfiguracijskih datotek (Configurator) ali strežnika Samba in SSH za oddaljeni dostop do strežnikovih datotek, pa tudi naprednejše storitve, kot sta prikaz avtomatizacij za tablice in vgradne zaslone (HADashboard) ter omrežna storitev Pi-Hole (ki se ji bomo posvetili v enem od naslednjih člankov). Z nekaj spretnosti pa lahko na domačega pomočnika dodamo tudi strežnike RetroPi, Kodi in sorodne.
Govoreča hiša in druge dobrote
Avtomatizacije, ki jih HASS omogoča, so izjemno zanimive, a poseben čar jim daje zvočno komuniciranje s hišo. Po eni strani to pomeni, da hiša govori – torej glasovno sporoča spremembe statusov, razna sporočila ali karkoli si zamislimo. Za to uporablja eno zmed podprtih storitev TTS (text to speach). Hiši lahko glasovne ukaze posredujemo prek pametnih zvočnikov ali namenskih omreženih mikrofonov, najbolje pa se obnesejo zdaj že dobro uveljavljeni pametni odjemalci. HASS prek oblačnega podaljška podpira tako Amazon Alexo kot Googlovega Pomočnika, z uporabo dodatka HomeBridge pa boste lahko HASS povezali tudi z Apple HomeKit oziroma s Siri.
Zanimiv koncept, ki ga uporabniki HASS s pridom izkoriščajo, je t. i. Presence. Na različne načine lahko ugotavljamo, ali je oseba v domu ali zunaj in celo, kako oddaljena je. To lahko ugotavljamo po podatkih o priključenosti mobilnika te osebe v domače omrežje ali pa z eno izmed storitev, ki lokacijo telefona sama sporoča v sistem domačega doma. To odpira mnoge zanimive scenarije, ne da bi žrtvovali zasebnost, saj podatkov ne posredujemo nikomur zunaj doma.
HASS vsebuje mnogo možnosti, vsak mesec pa je na voljo nadgradnja s popravki in z novimi podprtimi napravami ter možnostmi avtomatizacije. Ker gre za odprtokodni projekt, rešitve prispevajo predani člani zelo razvite skupnosti, ki se je razvila okrog izdelka. Za zapis, ki bi zajel napredne možnosti, imamo na tem mestu bistveno premalo prostora. Idej in načinov uporabe je mnogo, zato vsakomur, ki ga je kdaj zamikala avtomatizacija hiše, pa če sta želja in ideja še tako enostavni, priporočam, da si ogleda HASS, prebere kakšen blog in pogleda video. Že če boste v ocean zmožnosti in informacij pomočili le prst, ne boste ostali ravnodušni.
Kaj potrebujemo?
- Raspberry Pi, vsaj 2 Model B, priporočeno Raspberry 3 Model B+
- kartica SD velikosti 16 GB, priporočeno 32 GB, Class 10
- ustrezen usmernik, priporočeno Raspberry Pi Universal Power Supply
- dober urejevalnik datotek yaml, json in sorodnih, priporočamo Visual Studio Code
- pametne naprave, kot so žarnice, stikala, s spletom povezane naprave
Dodatne komponente:
- kabel HDMI in zaslon ali še bolje TV z vmesnikom HDMI
- Raspberry Pi USB Wifi Dongle ali drug združljiv vmesnik USB, če ne uporabite modela, ki ima vgrajen vmesnik wifi.
- uradno ohišje Raspberry Pi Case ali drugo ustrezno ohišje
- Pri intenzivni uporabi Raspberryja Pi je priporočena uporaba hladilnega rebra za procesor.
Objavljeno tudi v reviji Monitor.