You are on page 1of 45

PANEURÓPSKA VYSOKÁ ŠKOLA

FAKULTA INFORMATIKY

FI-13458-12534

INTELIGENTNÁ DOMÁCNOSŤ

Bakalárska práca

2018

Áron Mészáros
PANEURÓPSKA VYSOKÁ ŠKOLA

FAKULTA INFORMATIKY

FI-13458-12534

INTELIGENTNÁ DOMÁCNOSŤ

Bakalárska práca

Študijný program: Aplikovaná informatika

Študijný odbor: Aplikovaná informatika

Školiace pracovisko: Ústav aplikovanej informatiky

Školiteľ: Ing. Juraj Štefanovič, PhD.

2018

Áron Mészáros
Poďakovanie

Rád by som vyjadril svoje ocenenie a vďaku vedúcemu práce Ing. Jurajovi Štefanovičovi, za
venovaný čas a pomoc s cennými radami a pripomienkami pri vypracovaní bakalárskej práce.
Čestné prehlásenie

Čestne vyhlasujem, že prácu „ Inteligentná domácnosť “ som vypracoval samostatne, pomocou


uvedenej literatúry.
Abstrakt

Práca opisuje súčasné výhody inteligentnej domácnosti a spôsob ako ich implementovať s
bežne dostupnými prostriedkami. Vysvetlí ako funguje internet vecí, akú má základnú
architektúru a jeho rôzne ovládacie mechanizmy. Druhá časť sa zaoberá s konkrétnym
projektom vytvorenia jednoduchej inteligentnej domácnosti s pomocou Raspberry Pi a open-
source automatizačnou platformou Home Assistant. Návrh projektu obsahuje opis použitých
hardvérových a softvérových komponentov a taktiež plánované automatizačné procesy. V
poslednej kapitole krok za krokom opíšeme samotné vytvorenie projektu, inštaláciu
komponentov, ich spojenie a kódovanie automatizácie v súboroch typu yaml.

Kľúčové slová: internet vecí, inteligentná domácnosť, domáca automatizácia, Raspberry Pi,
Home Assistant, YAML, Z-Wave

Abstract

This thesis describes the advantages intelligent houses today have and the way they can be
implemented with commonly available sources. Explains how the internet of things work, what
basic architecture it has and what controlling mechanism is it using. The second part deals with
an actual project for creating a simple intelligent household using a Raspberry Pi with an open-
source platform for automation, called Home Assistant. The project proposal includes a
description of used hardware and software components, as well as planned automation
processes. In the final chapter, step by step, we describe how the project was created; how were
the components installed linked together and coded for automation using YAML files.

Key words: internet of things, intelligent household, home automation, Raspberry Pi, Home
Assistant, YAML, Z-Wave
Obsah témy
Zoznam skratiek, značiek a symbolov ............................................................................. 8
1 Úvod ..................................................................................................................... 9
2 Inteligentná domácnosť............................................................................................ 10
2.1 Úvod do inteligentnej domácnosti................................................................................. 10
2.2 IoT.............................................................................................................................. 10
2.3 Uplatnenie IoT v domácnostiach (Aplikácie Inteligentného domu)................................. 12
2.3.1 Inteligentné hospodárenie. .................................................................................................13
2.3.1.1 Smart osvetlenie .......................................................................................................13
2.3.1.2 Kúrenie .....................................................................................................................14
2.3.1.3 Zavlažovanie.............................................................................................................14
2.3.2 Bezpečnosť .......................................................................................................................15
2.3.3 Pohodlie ............................................................................................................................16
2.3.4 IPA – Inteligentný súkromný pomocník ..............................................................................16
2.4 Rôzne spôsoby riešenia domácej automatizácie ............................................................. 16
3 Návrh riešenia projektu ............................................................................................ 19
3.1 Cieľ projektu .............................................................................................................. 19
3.3 Hardvérový návrh ....................................................................................................... 20
3.3.1 Z-Wave .............................................................................................................................20
3.3.2 Dymový a CO senzor .........................................................................................................21
3.3.3 Z-wave USB stick ..............................................................................................................22
3.3.4 Raspberry Pi 3 Model B .....................................................................................................23
3.3.5 Zapojenie ..........................................................................................................................25
3.4 Softvérový návrh ......................................................................................................... 25
3.4.1 Hass.io ..............................................................................................................................25
3.4.2 Home Assistant..................................................................................................................26

4 Tvorba projektu ........................................................................................................ 28


4.1 Hardvér ...................................................................................................................... 28
4.2 Softvér ........................................................................................................................ 29
5 Záver ....................................................................................................................... 40
Zoznam použitej literatúry: .......................................................................................... 41
Obrázky: ..................................................................................................................... 44
Prílohy A .................................................................................................................... 45

7
Zoznam skratiek, značiek a symbolov

IoT Internet of things Internet vecí

IDOM Inteligent house Inteligentná domácnosť

IPA Intelligent Personal Assistant Inteligentný Súkromný


Pomocník

HA Home Assistant Home Assistant, softvér pre


automatizačné riadenie
domácich zariadení

CO Carbon monoxide Oxid uhoľnatý

RPi Raspberry Pi Raspberry Pi

UI User Interface Používateľské rozhranie

HC Home Control Domáce riadenie

VPN Virtual Private Network Virtuálna Privátna Sieť

8
1 Úvod

Bežné činnosti okolo domácnosti prinášajú zo sebou rôzne úkony a povinnosti, ktoré
vykonávame denno-denne, niektoré aj viackrát za deň. Takéto úlohy môžu byť jednoduchšie,
ako napríklad zhasínanie svetiel, skontrolovanie okien a dverí pred odchodom z domu, alebo
také, ktoré sú časovo viac náročné, ako upratovanie a umývanie riadu. Existujú aj také procesy,
ktorých priebeh je zdĺhavejší, ako napríklad otváranie garážovej brány či vyhľadávanie
a spúšťanie filmu cez multimediálny prehrávač. Mnohí by povedali že tieto veci nie sú také
náročné, ale ak tieto úlohy musíme vykonávať každý deň tak to zaberie relatívne veľa času.
Našťastie máme riešenie na to aby sme sa oslobodili od neustále sa opakujúcich činností a tým
riešením je inteligentná domácnosť. Inteligentná domácnosť naozaj umožňuje ľahko
a intuitívne ovládať zariadenia a iné domáce spotrebiče, niekedy i takým spôsobom, že človek
nemusí na to ani myslieť; vďaka inteligentnej analýze a spracovaniu dát.

V prvej časti práce bližšie spoznáme ako funguje inteligentná domácnosť, aké výhody prináša
domácim a ako ju môžeme dnes s bežne dostupnými zariadeniami a spôsobmi implementovať.
Preskúmame čo je to internet vecí, aké mechanizmy používa a akú má súvislosť s inteligentnou
domácnosťou. Druhá časť sa zaoberá s konkrétnym projektom vytvorenia jednoduchej
inteligentnej domácnosti s pomocou Raspberry Pi s nainštalovanou open-source
automatizačnou platformou Home Assistant. Návrh projektu obsahuje opis použitých
hardvérových a softvérových komponentov a taktiež plánované automatizačné procesy.
Podobne porovnáme návrh s alternatívnymi riešeniami a vysvetlíme aké sú výhody pri
používaní určitých komponentov a architektúr. V poslednej kapitole krok za krokom opíšeme
samotný proces tvorby projektu, inštaláciu komponentov, ich spojenie a kódovanie
automatizácie v súboroch typu yaml.

9
2 Inteligentná domácnosť
V tejto kapitole si stručne ukážeme a vysvetlíme, čo sa nazýva inteligentnou domácnosťou, aké
výhody prináša, v akých oblastiach je možné ju zaviesť v domácnostiach, aké technológie
používa a čo má spoločné s internetom vecí (IoT).

2.1 Úvod do inteligentnej domácnosti

Mnohí ľudia žasnú nad tým, čo všetko vedeli ľudia dosiahnuť za uplynulých 30 rokov, vývoj
technológie nesmierne zjednodušil život ľudí a priniesol nové možnosti a spôsoby ako ľudia
cestujú, pracujú, komunikujú a zabávajú sa. Od vynálezu domácich spotrebičov ako napr.
umývačka riadu, pračka, sušička a vysávač je oveľa jednoduchšie zvládnuť domáce práce. To
čo pred desiatkami rokov človek stihol spraviť za mesiac, dnešný človek dokáže za týždeň alebo
aj menej. S inteligentnou domácnosťou sa začala ako keby nová kapitola v zjednodušení života
ľudí v domácnosti. Spojenie a komunikácia čoraz viac zariadení zvyšuje pohodlie, obzvlášť
s pripojením k sieti čoraz viac zariadení bežnej spotreby. Toto spojenie, komunikácia,
ovládanie a monitorovanie zariadení navzájom bez väčšieho zásahu človeka je možné vďaka
IoT. Poďme sa na to bližšie pozrieť.[2]

2.2 IoT

V novinách, v denníkoch, v odborných článkoch sa stále viac a viac spomína pojem Internet
vecí (IoT) v rôznych súvislostiach. S pokrokom bezdrôtových a komunikačných technológií, s
poklesom cien senzorov, procesorov, zväčšením pokrytia internetu, sa IoT systémy stávajú
finančne a geograficky dostupnejšie a ich množstvo stále rastie rýchlejšie a ešte viac [2]. Už v
roku 2008 bolo pripojených viac zariadení k internetu ako je počet obyvateľov tejto planéty [4]
a podľa predpovedí korporácie Gartner, do roku 2020 bude 20.4 miliárd alebo viac prepojených
zariadení [5].

IoT je široký pojem a preto existujú rôzne definície a vysvetlenia čo to vlastne je. Jedna
definícia ho opisuje takto: „Internet vecí je v informatike označenie pre prepojenie vstavaných
zariadení s internetom.“ [6]. Objekty spojené do jednej siete, do internetu, už nie je nová vec;
zvláštnosť spočíva v tom, aké rôzne nové typy objektov a zariadení boli pridané; aké nové
protokoly a technológie boli vyvinuté pre tieto „veci“, aby mohli efektívne komunikovať medzi
sebou, riadiť komponenty a analyzovať dáta [3]. Internet vecí má široký význam a znamená
viac ako iba zariadenia, ktoré sú pripojené na internet. V skutočnosti, tieto zariadenia ani

10
nemusia byť vôbec pripojené na internet k tomu aby sa mohli nazývať časťou internetu vecí!
[8] Stačí ak sú pripojené na hocijakú sieť, vrátane sietí, ktoré vytvárajú jednotlivé zariadenia
medzi sebou (ako napríklad tzv. Mesh zariadenia pomocou Bluetooth či Z-Wave ), majú
jedinečný identifikátor (napr. IP adresu), majú schopnosť komunikovať a zdieľať informácie
cez sieť aspoň o sebe [7].

Zložitejšie a technicky náročnejšie zariadenia sú schopné ovládať a riadiť zariadenia, ktoré sú


k nim pripojené, taktiež sú ovládateľné a schopné nielen odosielať dáta o sebe ale aj zozbierať
ich z iných zariadení. Najzložitejšie analýzy a riadenia sa uskutočňujú v rôznych centrálnych
riadiacich systémoch s väčším úložiskom a výpočtovým výkonom. Takéto zariadenia môžu byť
domáce servery kde sa riešia takéto záležitosti lokálne, alebo sa dejú v cloude, k čomu je
potrebné neprerušené pripojenie k internetu. Samotné dáta nemajú význam dovtedy, kým nie
sú uvedené do kontextu a spracované do užitočných a použiteľných informácií [7]. Aplikácie
v sieťach IoT získavajú a vytvárajú informácie z nižších úrovní filtrovaním, kategorizovaním,
analýzou, spracovaním a “zhusťovaním‘‘ dát.

Obrázok 1 Spracovávanie dát

11
Jednou z hlavných výhod IoT spočíva v spôsobe ako zaobchádza s už získanými informáciami.
Ukladá ich, štrukturalizuje, a učí sa z nich, inými slovami, učí sa z okolia a to tým, že využíva
všetky dáta získané z koncových bodov systému (tzv. node). Výsledkom je, že každé zariadenie
sa tak stáva „šikovnejším“ [3].

Je schopný prediktívne uvažovať na základe predošlých aktivít a tak nastaviť jeho rôzne
zariadenia. Napríklad pozorovaním intenzity prítomnosti domácich v určitých častiach domu
môže vyhodnotiť situáciu tak, že zníži intenzitu kúrenia v podlahe v tých častiach domu, ktoré
sú menej využívané [7]. IoT sa vyznačuje širokou možnosťou nastaviteľnosti
a konfigurovateľnosti, aby tak človek mal čím väčšiu a pohodlnejšiu kontrolu nad všetkými
koncovými bodmi systému. Ak by sme chceli pripodobniť IoT k človeku tak by sme mohli
povedať, že jeho „očami“ sú kamery a iné senzory, jeho ušami sú mikrofóny, ústami sú
reproduktory alebo mediálne prehrávače a jeho rukami, nohami sú domáce elektrospotrebiče
ako kávovar, robotický vysávač, spínače a taktiež jeho mozgom by boli zariadenia, ktoré
spracovávajú dáta a ovládajú tieto zariadenia podľa určitého softvéru.

2.3 Uplatnenie IoT v domácnostiach (Aplikácie Inteligentného domu)

Inteligentná domácnosť je jednou časťou či vetvou internetu vecí (IoT), jedným zo spôsobov
ako sa IoT prejaví. IoT sa používa v mnohých oblastiach na svete, spomenieme tie
najrozšírenejšie aplikácie a potom sa pozrieme na to ako jeho rôzne prvky môžu tvoriť aj časť
inteligentnej domácnosti:

• Zdravotníctvo (monitorovanie a analýza fyzických parametrov človeka pri rôznych


aktivitách)
• Priemysel (kontrola chemických prvkov v prostredí, diagnostika pracujúcich strojov)
• Poľnohospodárstvo (hospodárenie so zavlažovaním, monitorovanie prostredia pre
vhodný rast rastlín)
• Logistika (zber dát o zásielkach a monitorovanie dopravy)
• Obchod („Smart“ platba, evidencia produktov a ich zabezpečenie... )
• Energetika (šetrenie energiou monitorovaním a ovládaním obnoviteľných zdrojov
energie)
• Životné prostredie (pozorovanie počasia, hluku, prítomnosti ohňa...)
• Mestá (ovládanie svetiel, monitorovanie dopravy, bezpečnosti...)

12
Ako sme už spomenuli, uvedené využitia IoT nie sú limitované iba na jednu oblasť ale jedna
môže tvoriť i časť druhého. Tieto aplikácie a mechanizmy môžeme uplatniť i v našom
domácom prostredí. Uveďme ako.

Inteligentné pozorovanie a kontrolovanie domácnosti sa v IoT nazýva domáca automatizácia.


Mnohí keď počujú výrazy IoT, inteligentná domácnosť, domáca automatizácia a inteligentné
spotrebiče, nie je im jasné aký je rozdiel medzi týmito výrazmi. Pravdou je, že majú veľa
spoločných čŕt. Obrázok 2 znázorňuje rozdiel vo význame uvedených výrazov.

Obrázok 2 Väzba v skladbe IoT

Internet vecí v podstate zahŕňa inteligentnú domácnosť a domácu automatizáciu. Domáca


automatizácia je tá časť inteligentnej domácnosti, ktorá automatizuje chytré elektrospotrebiče,
čiže ich pozoruje a ovláda.

2.3.1 Inteligentné hospodárenie.

Určite jeden z najpríťažlivejších výhod domácej automatizácie pre väčšinu používateľov je


šetrenie spotreby elektriny, vody a iných zdrojov [9]. Pozrime sa ako.

2.3.1.1 Smart osvetlenie

Od roku 1879 keď bola objavená žiarovka Thomasom Edisonom, rôzne spôsoby ovládania
svetelných zdrojov sa nesmiernym tempom vyvíjali [10]. Jednou z oblastí kde sa ovládanie
vyvíjalo najviac, boli divadlá. Počiatočnou výzvou bolo ovládať viaceré svetlá a po objavení
stmievania žiaroviek, stmievať rôzne miesta atď. [11]. Dnes už jediný softvér je schopný

13
ovládať všetky svetlá v domácnosti. Je tiež schopný upravovať silu žiarenia určitých svetiel
a meniť ich farbu.

Šetrenie energiou vykonáva program buď vopred nakonfigurovaným spôsobom alebo tak, že
sa učí z prostredia a samo sa nakonfiguruje. Dôležitou časťou je aj schopnosť prispôsobovať sa
k okolnostiam. Napríklad čas osvetlenia záhrady závisí od času kedy zapadá slnko, softvér sa
tak prispôsobí k tomuto času a zapne svetlá až vtedy keď svetlá sú potrebné. V priestoroch
domácnosti prispôsobí silu svetiel na požadovanú intenzitu podľa vonkajších svetelných
pomerov aby nevydávali ani nadmerne silné ani príliš slabé svetlo. Pri úsvite sa dá nastaviť
odhrnutie záclon, aby sa svetlo čím skôr dostalo do obytných priestorov.

Reaktívne riadenie osvetlenia znamená reakciu systému na náhlu zmenu ako napríklad vstup
osoby do určitej zóny, kedy pohybový senzor zapne príslušné svetlo alebo tzv. scene (scénu)
a po odchode z miestnosti ho vypne.

O prediktívnom riadení hovoríme vtedy, keď softvér dopredu nastaví svetlá aby osoba prišla
do už osvetlenej miestnosti (napr. pri vstupe do domu sa svetlá zapnú vo viacerých
miestnostiach podľa predchádzajúceho nastavenia ) [12].

Ovládanie svetiel cez domácu automatizáciu je veľmi pohodlné a rýchle. Existujú spínače pri
ktorých sa dá nastaviť každé tlačidlo aby ovládalo rôzne svetlá v miestnosti. Aplikácie na
smartfónoch tiež poskytujú riešenia na ovládanie a nastavenie systému osvetlenia.

2.3.1.2 Kúrenie

Inteligentné vykurovanie domu má za poslanie významne znížiť množstvo energie potrebné na


vykurovanie a pritom zabezpečiť primeraný tepelný komfort. Šetrenie energiou sa dosahuje
tým, že systém sleduje návyky domácich a prispôsobuje sa k nim. Je použitý rovnaký princíp
ako pri šetrení energiou v prípade svetiel, rozdiel však spočíva v tom, že jeho účinky sa prejavia
s určitým oneskorením a preto treba rátať s väčšími časovými úsekmi pri nastaveniach
predpokladanej prítomnosti osôb [12].

2.3.1.3 Zavlažovanie

Pre tých, ktorí majú záhradu a potrebujú sa starať o rastliny alebo majú veľkú plochu trávnika,
inteligentné zavlažovanie vie vo významnej miere znížiť spotrebu vody domácnosti.
Inteligentný zavlažovací systém pozoruje kedy bude v blízkej budúcnosti pršať, meria vlhkosť

14
vzduchu i zeme a prihliada i na silu slnečného žiarenia či jeho uhlu. Na základe získaných
informácií prispôsobuje zavlažovanie daným okolnostiam.

Inteligentné zavlažovanie okrem šetrného zaobchádzania so spotrebou vody zabezpečí vhodné


zavlažovanie, potrebnú starostlivosť o záhradu a prispieva k väčšiemu životnému komfortu
človeka aj tým, že mu šetrí čas.

2.3.2 Bezpečnosť

Inteligentné domy majú viaceré nástroje aby dozerali na bezpečie domu alebo bytu. V prvom
rade musia byť schopné identifikovať prítomnosť nežiadaných okolností pomocou kamier
a senzorov.

Jeden z druhov senzorov je Smart zámok. Smart zámok zabezpečí aby iba oprávnené osoby
mohli vstúpiť do obydlia zadaním hesla alebo s odtlačkom prstu. Existuje možnosť aj zatvárania
zámku cez sieť bez toho aby sa človek musel priblížiť k dverám.

Alarmový systém pozoruje pohyb v rôznych častiach domácnosti a pri zistení podozrivého
pohybu, vie informovať bezpečnostné orgány spolu s vlastníkom o takejto skutočnosti
prostredníctvom SMS správy alebo iným spôsobom.

Ďalší druh senzoru je senzor pozorovania stavu okien a dverí. Pred odchodom z domu upozorní
ak ostali nejaké okná či dvere otvorené a počas neprítomnosti obyvateľov zaznamená prípadné
udalosti v ich blízkosti a pošle oznam či upozornenie majiteľovi.

Kamery prispievajú k ďalšej, veľmi významnej a dôležitej úrovni bezpečnosti. Sú to „oči“


domu alebo bytu, snímajú vizuálne prostredie v okolí a vo vnútri domu, môžu tvoriť súčasť
alarmového systému. Ak sú kamery pripojené na server, potom aj živé vysielanie a aj záznamy
je možné sledovať z diaľky. Niektoré servery pomocou softvéru vedia rozpoznať tváre i rôzne
aktivity na záznamoch a reagovať na ne.

Nebezpečenstvo sa môže objaviť aj vo vzduchu. Jeden z najnebezpečnejších plynov, ktorý sa


môže vyskytnúť v domácnosti, je oxid uhoľnatý [25]. Pre človeka je nevnímateľný, pretože je
bez farby, bez chuti a zápachu. Preto senzory, ktoré sledujú a kontrolujú prítomnosť zložiek
vzduchu, ktoré znamenajú nebezpečenstvo, akým sú dym, zemný plyn a oxid uhoľnatý(CO) -
sú veľmi dôležité aby varovali ľudí a tým zabránili prípadnému nebezpečenstvu.

15
2.3.3 Pohodlie

Od vynálezu diaľkového ovládača človek môže pozerať viac televíznych staníc jeden večer, nie
preto že by predtým mal menej dostupných staníc, ale preto lebo sa nemusí postaviť
z pohodlného kresla a „manuálne“ prepínať. Dnes s inteligentnou domácnosťou nikdy nebolo
ovládanie zariadení také rýchle a pohodlné. Ráno vieme z postele navariť kávu, zapnúť hudbu,
svetlo a nastaviť kúrenie v aute. Mnohé veci môžeme ovládať zo smartfónu pomocou aplikácií
vyvinutých na rôzne spotrebiče alebo riadiace systémy. Avšak v niektorých prípadoch nie je
používanie smartfónu až tak praktické napr. pri ovládaní svetiel, preto existujú ešte
pohodlnejšie spôsoby napríklad ovládanie s hlasom alebo gestami.

2.3.4 IPA – Inteligentný súkromný pomocník

Už viackrát sme spomínali dôležitosť inteligentného centrálneho systému v inteligentnej


domácnosti. Existuje mnoho takýchto riadiacich systémov avšak možno najzaujímavejšie
a najsympatickejšie sú tie, ktoré majú umelú inteligenciu a vedia verbálne komunikovať
s človekom. Siri od Apple, Alexa od Amazonu alebo Google Assistant od Googlu sú príkladmi
pre inteligentných súkromných pomocníkov. Môžu byť nainštalované do zariadení ako
HomePod alebo Amazon Alexa , ktoré sú domáce servery s pripojenými zariadeniami
v domácnosti a sú spojené s cloudom pre inteligentné riadenie. [9]

2.4 Rôzne spôsoby riešenia domácej automatizácie

Čoraz viac firiem sa zameriava na tvorbu inteligentných domácností. V niektorých krajinách sa


stáva IDOM pomaly štandardom, no v ďalších je to skôr trendom moderného bývania. Tento
fakt je ovplyvnený najmä cenou a dostupnosťou zariadení. Vytvorenie inteligentnej domácnosti
si vyžaduje aby na začiatku bol definovaný jeho rozsah. V tejto fáze je potrebné naplánovať
čoho má byť schopná inteligentná domácnosť, ako sa má ovládať, či bude fungovať len
v interiéri alebo aj v exteriéri atď. Dôležité je aby systém splnil náš ciel a fungoval spoľahlivo,
rýchlo a bezpečne. Existuje mnoho riešení na vytvorenie takého systému, ktorý slúži na ten istý
cieľ; voľba závisí od prostredia a typu používateľa. Ak používateľ nie je príliš skúsený
s riadením inteligentnej domácnosti a pripravený aby občas riešil menšie problémy, tak je
preňho viac vhodný užívateľsky prívetivejší systém. Výhodou takého riešenia je, že systém je
skutočne veľmi spoľahlivý, rýchly, prehľadný a ľahko používateľný (napr. Lutron [13],
PlutonPower [14] alebo Fibaro [18]). Firmy, ktoré ponúkajú takéto systémy väčšinou poskytujú
aj podporu na dobrej úrovni. Takéto firmy používajú osvedčené technológie na prepojenie

16
zariadení (Ethernet alebo iné káble, WiFi) a používajú väčšinou cloudové riešenie, kde
používateľ nemusí prevádzkovať žiadny server. Niektoré firmy ponúkajú riešenia, ktoré ak
niekto chce plnohodnotne využiť, tak je najlepšie ak na základe toho postaví nový dom. Ďalšie
firmy sa zameriavajú na to ako implementovať do domácností portabilnejšie riešenia s čím
menšou potrebou kabeláže a montáže (napr. Insteon [17]).

Vždy sa treba usilovať o to, aby náš systém spĺňal také vlastnosti a ponúkal také riešenia, ktoré
hoci aj keď majú zložitejšiu architektúru a používajú iné, menej stabilné komunikačné
technológie, práve vďaka správnemu spôsobu nastavenia mohol byť takisto spoľahlivo rýchly
a intuitívne ovládateľný. Nevýhodou spôsobov ktorými mnoho firiem ponúka zavedenie
inteligentnej domácnosti je, že ich možnosti sú z niekoľkých pohľadov obmedzené. Zariadenia
sú väčšinou nekompatibilné s inými zariadeniami alebo inými systémami a môžu fungovať iba
medzi sebou (napr. Wink[16] alebo WeMo[15]). Nastavenia sú obmedzené ako aj
automatizácia. Jeden z najlepších zostáv inteligentnej domácnosti je ak je jeden centrálny
riadiaci systém (tzv. hub), ktorý je kompatibilný so všetkými komponentmi, takže sa ich dá
ovládať, automatizovať a pozorovať z jedného miesta (napr. Amazon Alexa[24] alebo
HomeSeer[21]). Tento cieľ sa dá dosiahnuť aj tak ak dve navzájom nekompatibilné systémy sú
spojené systémom, ktorý funguje s každým z nich.

Obrázok 3

17
Dobrým príkladom je Alexa od firmy Amazon[24]. Bola vyrobená hlavne pre domácu kontrolu
a automatizáciu a je kompatibilná zo stovkami zariadení . Vie verbálne komunikovať
s používateľmi a plniť hlasové rozkazy kedykoľvek bez potreby stlačenia akéhokoľvek
gombíka. Stále sa učí z prostredia a čím viac je používaná, tým viac vie pomôcť ľuďom na
základe ich spozorovaných zvykov a podľa rôznych javov, ktoré sa často vyskytujú / opakujú.

Ďalšia vec, ktorú treba brať tiež do úvahy je bezpečnosť a súkromie. Cloudové riešenia majú
obrovské výhody, napr. zálohovaním súkromných dát na bezpečnom servery i pomocou VPN,
šifrovaním, IPsec a pod. sa dá dosiahnuť bezpečná komunikácia medzi cloudom
a domácnosťou. Na druhej strane pri lokálnom riešení každé súkromné dáta sú uložené doma;
nie sú poslané mimo do internetu a tiež nijaká tretia strana nemá k nim prístup. Spomínané dáta
môžu byť polohy kde sa nachádzajú jednotlivci, ich rôzne zvyky, videozáznamy z IP kamier
atď.

Ak inteligentná domácnosť je hotová a sme spokojný s tým ako funguje, môžeme cítiť
motiváciu aby sme ju rozšírili o ďalšie funkcie a komponenty. Preto, ako sme už spomenuli, je
múdre ak vybraté riešenie môže byť v budúcnosti kedykoľvek rozšíriteľné. Spomenuli sme ako
vieme vybrať zariadenie, ktoré je kompatibilné s mnohými komponentmi, avšak rozšíriť sa dá
aj fyzicky, čo znamená, že niekedy potrebujeme zväčšiť rozlohu IoT sieti. S tým nám pomôžu
rôzne siete a protokoly IoT. LoRaWAN [23], Sigfox [20], IQRF [19], Zigbee[43], Z-Wave[40]
a podobné technológie používajú nízkofrekvenčnú rádiovú vlnu, vďaka čomu majú ďaleký
dosah, niektoré do 100m, ale iné ako LoRaWAN do až neuveriteľných 15 000 metrov.
Zariadenia ktoré používajú túto technológiu posielajú dáta medzi sebou iba ak je to nutné a aj
vtedy veľmi pomaly (približne 20Kb/s) a v malom množstve. Pracujú väčšinou na baterkách
a vedia na nich bežať aj 10 rokov.

Ďalšia možnosť ako vytvoriť inteligentný systém v domácnosti za zlomok ceny, za ktorú ho
poskytujú firmy bežne, je s použitím Raspberry Pi, softvéru s otvoreným zdrojovým kódom
(napr. openHAB [22] alebo Home Assistant[42]) s jednoduchými zariadeniami zvolenými pre
náš cieľ (napr. s použitím jednoduchých senzorov pripojených k Arduino doske).

18
3 Návrh riešenia projektu
V tejto časti sa nachádza popis cieľa projektu a náčrt princípu fungovania, pričom stručne
uvedieme dôvody, prečo sme si vybrali určitý typ riešenia. Taktiež si vysvetlíme aké máme
očakávania z projektu.

3.1 Cieľ projektu

Cieľom projektu je vytvorenie jednoduchej inteligentnej domácnosti s pomocou Raspberry Pi


a softvérom s otvoreným kódom pre automatizáciu, Home Assistant. V rámci projektu bude
pomocou Z-Wave pripojené zariadenie, ktoré pozoruje či sa vo vzduchu nenachádza
nebezpečný plyn oxid uhoľnatý alebo dym (čo by znamenalo, že došlo k požiaru). Systém bude
možné pozorovať a následne ovládať prostredníctvom používateľsky optimalizovaného
rozhrania pomocou mobilnej aplikácie alebo webového prehliadača. Do projektu bude
zakomponovaný aj systém, ktorý upozorní človeka odoslaním varovných správ cez internet na
smartfón, s možnosťou zvoliť istú akciu ktorá má byť vykonaná. S pomocou softvéru Home
Assistant, v skriptách typu .yaml nastavíme rôzne automatizačné procesy, ktoré budú
aktivované a vykonané podľa dát zo senzoru.

Obrázok 4 Diagram pre prehľad cieľa projektu

19
3.3 Hardvérový návrh

Pri tvorbe projektu je dôležité stanoviť, čo od Inteligentnej domácnosti budeme požadovať.


Podobne ako sme už uviedli v prvej časti tejto práce, že aké sú základné požiadavky pre
vytvorenie inteligentného prostredia v domácnosti, si prejdeme konkrétnejšie aké požiadavky
potrebuje naše zadanie na správne fungovanie.

Pre realizovanie projektu takéhoto charakteru existujú mnohé spôsoby. Zvolený spôsob na
rozdiel od riešení ponúkaných väčšinou firiem má jednak výhodnejšiu cenu a možnosť neskôr
rozšíriť ho o nesmierne veľa komponentov.

Pre naše zadanie je potrebných aspoň 5 vecí:

1. Senzor (pre snímanie CO a dymu)

2. Z-Wave anténa (pripojená cez USB pre komunikáciu so senzorom)

3. Počítač alebo server (v tomto projekte to bude Raspberry Pi)

4. Operačný systém (HASSIO)

5. Softvér (Home Assistant)

V ďalších častiach sa bližšie oboznámime s hardvérovými a softvérovými komponentami,


s protokolom Z-Wave a taktiež rozoberieme a popíšeme architektúru celého systému.

3.3.1 Z-Wave

Z-Wave je bezdrôtový komunikačný protokol vytvorený primárne pre monitorovanie


a ovládanie zariadení v obytných priestoroch. Je najrozšírenejšou technológiou na svete pre
domácu automatizáciu a svetovým lídrom na trhu bezdrôtovej kontroly domácich zariadení;
prináša cenovo dostupné, spoľahlivé a ľahko použiteľné inteligentné produkty mnohým
miliónom ľudí vo všetkých aspektoch každodenného života. Existuje viac ako 2100 typov Z-
Wave výrobkov a cez 70 milión produktov na celom svete [39]. Takéto zariadenia môžu byť
ovládače či senzory ako pohybové senzory, senzory otvárania dverí, zámky na dvere, vypínače,
teplotné senzory, požiarne hlásiče a pod. Senzory a ostatné Z-Wave prístroje zdieľajú merané
dáta s ostatnými Z-Wave zariadeniami pomocou používania tzv. bezdrôtovej mrežovej siete.
Táto sieť sa vytvára medzi zariadeniami; všetky Z-Wave zariadenia komunikujú medzi sebou
a signál z jedného prvku (tzv. node) môže byť preposlaný na ďalšie. Informácie v Z-Wave sieti

20
smerujú (tzv. routing) od odosielateľa k príjemcovi, tak sieť je schopná zakryť väčšiu plochu
v domácnosti, čo znamená, že dosah Z-Wave siete sa rozširuje s počtom Z-Wave zariadení
v sieti. [40]

Iné bezdrôtové zariadenia majú problém s rušením a dosahom signálu, avšak tým, že Z-Wave
používa nízkofrekvenčnú rádiovú vlnu pod 1GHz (v Európe je to 868.40 MHz, 869.85 MHz),
neruší a ani sa nenechá byť rušený s WiFi signálom či mikrovlnkou a ani s inou bezdrôtovou
technológiou v pásmach 2.4 GHz ako sú Bluetooth alebo Zigbee [39]. Dosah signálu v
otvorenom priestranstve je približne 100 metrov a vnútri do 50 metrov, závisí od použitých
materiálov , ktoré sú v okolí [41].

Z-wave naozaj umožňuje a ponúka ideálne a jednoduché riešenie pre každého aby si vytvoril
inteligentnú domácnosť a bývanie. Zariadenia sú ľahko inštalovateľné bez potreby stavebného
zásahu a systém môže byť rozšírený kedykoľvek. Tým, že táto technológia používa rádiové
vlny vyžadujúce nízku energiu a je optimalizovaná na nízku spotrebu, väčšina Z-Wave
produktov nepotrebuje kábel na napájanie a vie roky vydržať s menšími batériami, preto je ich
možné použiť všade v domácnosti s minimálnou údržbou.

Ďalšou obrovskou výhodu technológie Z-Wave je, že má výrazne menší negatívny vplyv na
zdravie ľudského tela. Z-Wave prístroje majú veľmi nízke elektromagnetické vyžarovanie,
napríklad je približne 4000 krát menšie ako vyžarovanie mobilného telefónu. Preto aj vtedy
keď sa používa veľké množstvo zariadení, nie je prítomný škodlivý elektrosmog.

3.3.2 Dymový a CO senzor

Rôzne druhy senzorov nám pomáhajú lepšie vnímať naše okolie, aby sme vedeli čo sa deje
okolo nás a urobili rozhodnutia na základe získaných dát. Senzory jedného typu slúžia na to
aby rozpoznali prítomnosť nebezpečenstva a upozornili na nich. Takéto senzory pozorujú
napríklad presakovanie vody zo stropu, stav okien a dverí alebo detekujú dym z ohňa. Avšak
existuje jeden senzor ktorý vie odhaliť prítomnosť takého druhu nebezpečenstva čo by žiadny
človek nevedel inak zistiť a je smrteľne nebezpečný. Je to oxid uhoľnatý alebo CO [25]. Tento
plyn je bez zápachu, bez chuti a bez farby, čiže je nerozoznateľný a jedovatý. Môže sa žiaľ
vyskytnúť aj v domácnosti pri nefunkčných kotloch, sporákoch, v nevetraných miestnostiach
kde napr. horí oheň v krbe alebo pri iných nesprávne fungujúcich zariadeniach, ktoré spaľujú
určité palivo.

21
V tejto práci som vybral senzor ktorý kontroluje kvalitu vzduchu v prostredí a varuje v prípade,
že oxid uhoľnatý prekročí definovanú hranicu alebo ak zistí prítomnosť dymu. V prípade
alarmu zariadenie spustí hlasný varovný zvuk a oznámi alarm Z-Wave riadiacej jednotke.

Samotný senzor pracuje inteligentným spôsobom. Sleduje úroveň CO a spustí alarm buď vtedy
ak hladina CO vystúpi, alebo ak dosiahne minimum počas dlhšieho času. Taktiež je spustený
alarm ešte predtým, akoby hladina CO vo vzduchu by už znamenala nebezpečenstvo pre
človeka.

Obrázok 5 Dymový a CO senzor od firmy First Alert [44]

Zariadenie má zvlášť senzor na snímanie oxidu uhoľnatého a zvlášť dymu; tieto dva alarmové
systémy pracujú nezávisle od seba. Funguje pomocou dvoch ľahko vymeniteľných AA batérii
a spolupracuje s certifikovanými zariadeniami typu Z-Wave tretích strán.

3.3.3 Z-wave USB stick

Zvyčajne najdrahšou časťou každého smart systému je jeho brána; kľúčový rozbočovač, ktorý
spája všetky pripojené zariadenia na kontrolu a automatizáciu. Na túto prácu som použil
zariadenie Z-Stick Gen5 od spoločnosti Aeotec [26], ktoré je významne lacnejšie v porovnaní
s alternatívnymi riešeniami (58,80 €).

Anténa Z-Wave Plus je pripojiteľná cez USB port s akoukoľvek platformou. Dá sa ho používať
s PC, HTPC alebo s laptopom, Mac, Linux alebo Windows, s jednodoskovými počítačmi, ako
je Raspberry Pi a dokonca s NAS systémami.

22
Obrázok 6 Z-stick, Z-Wave USB anténa [45]

Táto Z-Wave anténa ponúka vysokú spoľahlivosť takými spôsobmi, ktoré sa líšia od iných
riešení. Jednou výhodou je to, že umožňuje aby systém mohol bežať lokálne, nezávisle od
cloudu a tiež má batériu na výdrž do 15 dní, čiže systém nikdy nebude v režime offline.

Dá sa pripojiť vyše 230 Z-Wave zariadení, ktorým vie poskytovať bezdrôtovo firmware
aktualizácie; bezpečnosť komunikácie je zabezpečená s AES-128 bitovým šifrovaním.

Hlavným dôvodom prečo bola táto brána pre môj projekt najideálnejšia je kompatibilita so
softvérmi s otvoreným zdrojovým kódom (open-source) a tiež s Raspberry Pi.

3.3.4 Raspberry Pi 3 Model B

Raspberry Pi [28] je široko využiteľný jednodoskový mikropočítač. Kvôli jeho rozmerom,


výkonnosti, možnosti pripojenia rôznych zariadení a schopnosti pracovať na viacerých
platformách sa Raspberry Pi začal využívať hlavne v robotike a automatizácii.

Zariadenie Raspberry Pi sa vyvíjalo prostredníctvom niekoľkých verzií, ktoré obsahujú rôzne


varianty hardvéru. V tomto projekte bude používaná tretia verzia modelu B.

23
Obrázok 7 Raspberry Pi 3 Model B

Výhodu tohto modelu je, že sa vie pripojiť na sieť nielen cez Ethernet (10/100 Ethernet), ale aj
bezdrôtovo cez WiFi s frekvenciou 2.4GHz a so štandardom 802.11n. Tiež má Bluetooth, čím
sa dajú pripojiť zariadenia a ovládať ich v rámci domácej automatizácie. So štvorjadrovým 64
bitovým procesorom pracujúcim na 1.2 GHz, tento model je pripravený aj na projekty, ktoré
potrebujú väčšiu výpočtovú silu. [10]

Poslednou výhodou použitia Raspberry Pi v inteligentnej domácnosti, ktorú by som spomenul,


sú jeho GPIO vývody. Cieľom GPIO vývodov (General purpose input-output connector) je
rozšírenie možností pripojenia externých zariadení ako dotyková obrazovka pre pozorovanie
stavu zariadení v domácnosti a pre ich ovládanie. Raspberry Pi poskytuje 40 integrovaných
GPIO vývodov. [27]

Obrázok 1.5 Raspberry Pi primontovaný a pripojený k dotykovej obrazovke [46]

24
3.3.5 Zapojenie

V rámci tohto projektu je Raspberry Pi mozgom a centrom celého systému, ktorý komunikuje
pomocou protokolu zwave so senzorom dymu a CO. Logická schéma zapojenia všetkých
komponentov vidno na obrázku 1.6.

Obrázok 8 Logická schéma systému

3.4 Softvérový návrh

Pri návrhu softvéru zariadenia je potrebné stanoviť aké reakcie a správanie sa od neho očakáva.
So zvolenými komponentmi, obzvlášť so zvolenou platformou Raspberry Pi som mal široký
výber vhodných softvérov. Medzi nich patria OpenHab, Domoticz, alebo Homeseer, avšak
najideálnejším softvérom sa ukázal Home Assistant a poďme sa pozrieť ako sa dá nainštalovať.

3.4.1 Hass.io

Hass.io je operačný systém ktorý nainštaluje a následne aktualizuje softvér Home Assistant;
operačný systém ktorý je založený na ResinOS a Docker [31]. Hass.io je možné nainštalovať
na Raspberry Pi 1,2,3 na Intel NUC a na akýkoľvek Linux server pri spĺňaní hardvérových
požiadaviek [30].

V našom projekte Hass.io premení náš Raspberry Pi 3 na neprekonateľný domáci


automatizačný rozbočovač či hub zo softvérom Home Assistant [29].

Ďalšie výhody Hass.io sú:

25
• Je zadarmo a má otvorený zdrojový kód

• Optimalizovaný pre Raspberry Pi

• Podporuje sto percentnú lokálnu automatizáciu

• Ľahké nastavenie a inštalácia aktualizácii

• Spracovanie cez užívateľské rozhranie

• Je ľahké spravovať zálohy konfigurácie systému

• Všeobecne väčšia flexibilita pri nainštalovaní zásuvných modulov

3.4.2 Home Assistant

Spočiatku bol Home Assistant iba jednoduchým skriptom, ktorý napísal Paulus Schoutsen pre
zapnutie svetiel keď zapadne slnko. Potom z toho vyrástol pomocou ďalších vývojárov veľký
framework, ktorý už dnes radi používajú ľudia na celom svete pre riadenie a automatizáciu
svojich domovov. Schoutsen poznamenal: „Automatizácia domova s Home Assistantom:
Odpoveď jazyku Python na internet vecí”[32]. Áno, Home Assistant využíva silu Pythonu aby
dosiahol spoľahlivé, lokálne riešenie s takmer neobmedzenými a nekonečnými možnosťami na
vytvorenie domácej automatizácie. Tento softvér s otvoreným kódom môže byť spustení na
ľubovoľnom zariadení na ktorom beží Python 3; od stolových počítačov cez NAS servery, až
ku jednoduchému Raspberry Pi.

Jednou dôležitou výhodou HA je, že je nezávislá od cloudu a celý systém beží lokálne. Týmto
sa líši od väčšiny komerčných ponúk. Môže byť používaná aj keď zlyhá internet; a všetky
osobné dáta, ktoré zbiera z domácnosti o zariadeniach a o aktivitách ľudí napríklad či je niekto
doma alebo nie, sú uložené lokálne, doma, bez prístupu inej osoby ako domáceho; týmto
zabezpečuje skutočné súkromie a bezpečnosť.

Ponúka „jeden jazyk pre všetky úrovne IoT: od senzorov až po automatizáciu, po integráciu so
službami tretích strán.“ – Schoutsen [32]. Dá sa k nemu pripojiť veľké množstvo otvorených a
komerčných zariadení a služieb; nepotrebujú zvlášť aplikáciu aby mohli byť ovládané a
automatizované, ale o to všetko sa postará Home Assistant. Pomocou HA tieto komponenty by
sa akoby dozvedeli o sebe, lebo môžu byť automatizované na základe stavu alebo činnosti toho
druhého.

26
Ľahké spravovanie tohto systému aj z diaľky zabezpečuje používateľské webové rozhranie,
ktoré je dostupné pre stolné počítače ako aj pre mobily.

Obrázok 9 Webové rozhranie systému HA [47]

27
4 Tvorba projektu

V tejto kapitole zostavíme náš projekt. Najprv opíšeme postupy ako zhotovíme hardvérové
zapojenie jednotlivých komponentov, potom si ukážeme ako nainštalovať softvér na Raspberry
Pi a ako nastaviť HA aby všetko fungovalo tak, ako sme to opísali pri stanovení cieľov projektu.

4.1 Hardvér

Senzor dymu a CO po vložení dvoch batérii už vie hlásiť ak nastane nebezpečenstvo, avšak ak
ho chceme pripojiť do Z-Wave siete, potrebujeme ho spárovať s ďalším zariadením. V tomto
prípade to bude USB anténa. Párovanie týchto zariadení môžeme dosiahnuť tým, že najprv
jedno, potom aj druhé prepneme do režimu ‘‘inclusion“, čo znamená, že začnú medzi sebou
vymieňať informácie, aké sú rôzne atribúty a pridelia k sebe id číslo v sieti. Takýto proces trvá
iba 3 sekundy, úspešné spárovanie je potvrdené na anténe s trojsekundovým svietením led
žiarovky [34]. Odteraz ak senzor niečo zosníma alebo zmení stav nejakého svojho atribútu, tak
údaj pošle cez sieť na všetky zariadenia (v tomto prípade iba na z-wave anténu). Anténa bude
potom pripojená k minipočítaču Raspberry Pi, avšak spôsob ako budú komunikovať si povieme
v ďalšej časti.

Hardvérové zapojenie Raspberry Pi v našom projekte je veľmi jednoduché. Aby sme mohli
nainštalovať operačný systém, stačí ak pripojíme napájací kábel a vložíme SD kartu, avšak
kvôli rozšíreniu funkcionality a aby bol počítač na akomsi stojane, primontujeme ho
k dotykovému displeju.

K dotykovému displeju je pripojená riadiaca doska s piatimi kolíkmi. Na pripojenie riadiacej


dosky k RPi použijeme štyri drôty čiernej, žltej, zelenej a červenej farby [35]. (Príloha A)

Postup zapojenia a montáž:

• Červený drôt zapojíme do kolíku 5V


• Čierny drôt do uzemňovacieho kolíku
• Zelený drôt do kolíku označený SDA
• Žltý drôt do kolíku SCL
• Potom so štyrmi skrutkami pripevníme RPi k riadiacej doske
• Vsunieme biely stuhový kábel do riadiacej dosky
• Pripravíme druhé konce káblov na zapojenie do GPIO kolíkov RPi

28
• Červený drôt do kolíku číslo 2
• Čierny drôt do kolíku 5
• Zelený drôt do 3
• Žltý do 5
• Biely stuhový kábel vsunieme a pripojíme do displej portu na RPi
• Pripevníme dotykový displej spolu s ostatnými komponentami ku stojanu
• Pripojíme napájací kábel a vsunieme druhý koniec do zásuvky

Obrázok 10 Zapojenie a montáž Raspberry Pi [48]

4.2 Softvér

Prvý krok pri zostavení systému je nainštalovanie operačného systému. Aby sme dostali do
prevádzky RPi, najskôr potrebujeme flashnúť SD kartu. Zatiaľ čo počítač používa pevný disk
(HDD) alebo mechaniku s nepohyblivým médiom (SSD), RPi nemá vlastné vnútorné úložisko.
Namiesto toho používa SD kartu. To znamená, že RPi bude bežať z ľubovoľného operačného
systému nainštalovaný na kartu.

29
Zo stránky stiahneme diskový obraz Hass.io pre Raspberry Pi. Pomocou softvéru Etcher[36]
bezpečne prekopírujeme obraz na SD kartu. Kartu po úspešnom skopírovaní otvoríme
a v súbore: system-connections/resin-sample pridáme názov WiFi siete (SSID) a k tomu
príslušné heslo. Vložíme kartu do RPi a zapneme. Inštalácia trvá približne 20 minút a potom
systém je prístupný lokákne cez webový prehliadač na adrese: http://hassio.local:8123. Už teraz
je systém schopný pozorovať rôzne zariadenia v domácosti a pomocou UI môžeme pridávať
ďalšie komponenty a nastaviť automatizácie. Avšak pre väčšiu kontrolu je potrebné aby sme
zapli Samba add-on[37] pomocou čoho získame prístup k spravovaniu hass.io súborov cez náš
počítač a takisto SSH add-on aby sme sa mohli prihlásiť cez SSH a spravovať pokročilé
informácie.

Jeden z najdôležitejších súborov je configurations.yaml. Obsahuje nastavené hodnoty systému.


Tu možno nastaviť základné vlastnosti ako heslo systému, čas, miesto atď. Komponenty ako
senzory, zariadenia, služby a iné funkcie sa tiež nastavujú na tomto mieste. Automatizácie a iné
skripty je možné takisto definovať v tomto súbore, ale kvôli prehľadnosti je tu definovaný iba
odkaz na súbor zvlášť na automatizácie (automations.yaml), na skripty (scripts.yaml), heslá
(secrets.yaml) a skupín komponentov (gropus.yaml).

Poďme teraz nainštalovať náš najdôležitejší komponent pre náš projekt, a to komponent Z-
Wave. Samotná inštalácia je jednoduchá, stačí napísať dva riadky kódu do configurations.yaml:

30
zwave:

usb_path: /dev/ttyACM0

Tu musíme uviesť do ktorého USB portu sme vložili našu Z-Wave anténu, čo sme jednoducho
zistili cez SSH. Ak reštartujeme RPi tak sa nám objaví v UI nový panel pre spravovanie Z-
Wave siete. V Z-Wave menu sa nám objavia zariadenia , ktoré sme pridali do siete (v tomto
prípade senzor dymu a CO). Týmto dostaneme zo senzoru tri entity, AlarmLevel a AlarmType
a ešte entitu obsahujúci rôzne parametre senzoru ako napríklad stav batérie. Tieto hodnoty sa
nám ukazujú na domovskej stránke HA, avšak sú vyjadrené iba v číslach, ktoré pre používateľa
nie sú užitočné. Preto treba podľa manuálu hodnoty AlarmType vyjadriť zrozumiteľným
spôsobom; číslo 15 znamená poplach dymu, 16 poplach CO, 12 nefunkčnosť a 13 nečinný
alebo pohotovostný stav. Pre tieto hodnoty vytvoríme nový senzor napísaním kódu do súboru
configurations.yaml:

sensor: #Pridanie senzorového komponentu


- platform: template
sensors:
status_smoke_co_alarm: #Vytvorenie senzoru s uvedeným názvom entity
value_template: >- #Uvedenie zdroja jeho hodnoty; budú definované podľa
istých podmienok
{%- if is_state("sensor.alarm_type_6", "13") %}
Idle
{%- elif is_state("sensor.alarm_type_6", "1") %}
Fire Detected #Napr. ak hodnota typu senzora je 1, znamená, že
senzor ktorý sme vytvorili bude mať hodnotu Fire
Detected
{%- elif is_state("sensor.alarm_type_6", "2") %}
Carbon Monoxide Detected
{%- elif is_state("sensor.alarm_type_6", "12") %}
Alarm Testing
{% else %}
Not_Working
{%- endif %}
friendly_name: 'Smoke/CO Alarm' #Meno senzoru v menu

- platform: template
sensors:
battery_level_smoke_co_alarm: #Vytvorenie ďalšieho senzoru
value_template:
'{{states.zwave.first_alert_zcombo_smoke_and_carbon_monoxide_detector.attributes.battery
_level}}' #Zdroj z ktorého bude čerpať hodnoty
friendly_name: 'Smoke/CO Alarm Battery'
unit_of_measurement: '%' #Jednotka merania

31
Takto vytvorený senzor už ukazuje skutočný, zrozumiteľný stav senzoru a je pripravený aby
sme ho vložili do automatizácie. Avšak predtým ako vytvoríme automatizáciu ešte pridáme
komponent ios aby sme vedeli poslať upozornenie na iPhone, napísaním jedného riadku kódu:

ios:

Hotovo, po reštartovaní môžeme stiahnuť aplikáciu Home Assistant na iPhone, pripojiť


k serveru HA a dovoliť posielanie upozornení. Ak chceme aby prišli jedinečné zvukové
hlásenia tak ich môžeme pomocou počítača importovať.

Obrázok 11

Ku kompentu ios pridáme kategóriu, ktorá nastaví aby upozornenie obsahovalo možnosť
zvoliť akciu. Tento typ upozornenia sa volá „Actinable notification“. Nastavíme zadaním
nasledovného kódu:

ios:
push: #Nastavenie push-notifikácie
categories:
- name: Alarm #Vytvorenie kategórie s názvom Alarm
identifier: 'alarm' #Forma akou ho môžeme použiť v ďalších
častiach kódu

32
actions: #Pridanie voliteľných akcii
- identifier: 'SILENCE_ALARM'
title: 'SILENCE ALARM' #Názov akcie
activationMode: 'background'
authenticationRequired: yes #Či je potrebné odomknúť telefón pre zvolenie
akcie
destructive: yes
behavior: 'default'
Automatizáciu môžeme vytvoriť buď kódovaním alebo od verzie 0.45 aj pomocou UI [38].
Najdôležitejšie tri komponenty automatizácie sú:

• Trigger – Udalosť, ktorá spustí alebo zobudí automatizáciu

• Condition – Podmieka/y ktorá musí byť splnená aby automatizácia mohla pokračovať
(nie je povinné uviesť)

• Action – Akcia, ktorá je vykonaná

Každá zmena stavu v prostredí HA sa považuje za udalosť či Event; takže ak sa hodnota


senzoru zmení, nastane udalosť ‘‘zmena stavu senzoru“ a automatizácia bude spustená. Každá
udalosť môže byť bližšie určená ako napríklad na ktorý stav sa zmenil senzor. Pre každý
zmenený stav potrebujeme napísať automatizáciu, čiže spolu 4; každá automatizácia na konci
pošle na iOS zariadenie upozornenie. Automatizácie v súbore automations.yaml:

- id: '1521207523558'
alias: Alarm Testing #Názov automatizácie

trigger:
- entity_id: sensor.status_smoke_co_alarm #Voľba komponentu a senzoru ktorú
bude počúvať
#Kritérium kedy má byť automatizácia volaná
from: Idle
platform: state #Bude skúmaný stav senzoru
to: Alarm Testing #Stav, na ktorý sa musí senzor zmeniť zo stavu
Idle

condition: #Podmienka, ktorá musí byť splnená


- condition: state
entity_id: sensor.status_smoke_co_alarm
state: Alarm Testing #Podmienka je splnená ak stav senzoru je Alarm
Testing

action: #Čo má automatizácia spraviť


- data:
message: The First Alert sensor is being tested #Správa

33
title: Alarm testing #Názov správy
service: persistent_notification.create #Príkaz vypísať upozornenie v
systéme HA s hore uvedenými
údajmi

- data: #Ďalšia akcia automatizácie


entity_id: script.1521460647017 #Zvolenie skriptu
service: script.turn_on #Zapnúť skript

- id: '1521546421528' #Automatizácia ak senzor zosníma dym


alias: Smoke

trigger:
- entity_id: sensor.status_smoke_co_alarm
platform: state
to: Fire Detected

condition: []

action:
- data:
meassage: Smoke sensor detected Fire!
title: Fire Detected!
service: persistent_notification.create

- data:
entity_id: script.1521546511327
service: script.turn_on

- id: '1521549017049' #Automatizácia ak senzor zosníma CO


alias: CO

trigger:
- entity_id: sensor.status_smoke_co_alarm
platform: state
to: Carbon Monoxide Detected

condition: []

action:
- data:
message: Carbon Monoxide Detected!
title: CO Detected!
service: persistent_notification.create

- data:
entity_id: script.1521548781675
service: script.turn_on

34
- id: '1521551329974' #Automatizácia ak sa zmení senzor na normálny stav
alias: OK

trigger:
- entity_id: sensor.status_smoke_co_alarm
platform: state
to: Idle #Stav na ktorú sa musí senzor zmeniť z ľubovoľného
stavu

condition: [] # Nie je potrebná podmienka

action:
- data:
data:
push: #Poslanie push-notifikácie
sound: ok.wav #Zvukový súbor, ktorý má byť prehratý
pre upozornenie
message: Everything is OK now :) #Správa
service: notify.ios_ron_mszross_iphone #Zariadenie na ktoré má byť upozornenie
poslané

- id: '1521548389341' #Automatizácia ak senzor nesprávne funguje


alias: Not_Working

trigger:
- entity_id: sensor.status_smoke_co_alarm
platform: state
to: Not_Working

condition: []

action:
- data:
message: First alert stopped working, please reconnect it asap
title: Sensor stopped working
service: persistent_notification.create

- data:
entity_id: script.1521547958056
service: script.turn_on

- id: '1521545397126' #Automatizácia ak batéria senzoru klesne pod 5%


alias: Low Battery

35
trigger:
- below: '5'
entity_id: sensor.battery_level_smoke_co_alarm
platform: numeric_state

condition: []

action:
- data:
message: The Smoke and CO sensor's battery is below 5%
title: Sensor low on battery!
service: persistent_notification.create

- data:
entity_id: script.1521545633343
service: script.turn_on

- id: '1521536784827' #Automatizácia pre vypnutie všetkých skriptov


alias: Silence alarm

trigger:
- event_data:
actionName: SILENCE_ALARM
event_type: ios.notification_action_fired
platform: event

condition: []

action:
- data:
entity_id: script.1521548781675 #Zvoliť skript
service: script.turn_off #Vypnúť zvolený skript
- data:
entity_id: script.1521548860314
service: script.turn_off
- data:
entity_id: script.1521460647017
service: script.turn_off
- data:
entity_id: script.1521487504935
service: script.turn_off
- data:
entity_id: script.1521546511327
service: script.turn_off
- data:
entity_id: script.1521546591945
service: script.turn_off

36
- data:
entity_id: script.1521547958056
service: script.turn_off
- data:
entity_id: script.1521548097761
service: script.turn_off
- data:
entity_id: script.1521545633343
service: script.turn_off
- data:
entity_id: script.1521545712476
service: script.turn_off
Ak ide o ohrozenie majetku alebo ľudského života, akým môže dôjsť v prípade požiaru
a nadmernej hodnoty CO v ovzduší, tak je nevyhnutné aby upozornenie prišlo v dostatočnom
predstihu k tomu aby si ho človek určite včas všimol. Preto upozornenie nepríde iba raz
s nejakým zvyčajným zvukom ale každých päť sekúnd s jedinečným zvukovým upozornením.
Potrebujeme k tomu vytvoriť slučku pomocou dvoch skriptov (jeden nestačí lebo HA
nedovoľuje aby jeden skript volal sám seba), jeden skript bude volať toho druhého a naopak,
slučka bude prerušená s vypnutím obidvoch skriptov cez ‘‘actionable notification“. Actionable
notification je typ upozornenia poslaný na smart zariadenie , ktorý dáva možnosť podniknúť
určité akcie; v tomto prípade dáva možnosť umlčať prichádzajúce upozornenia poslaním
príkazu prerušiť slučku „Silence Alarm“.

Obrázok 12

37
Skripty pre všetky automatizácie vieme vytvoriť aj cez UI, ktoré sú potom zapísané do súboru
scrpits.yaml. Ukážka zo súboru:

'1521460647017': #ID číslo skriptu


alias: test #Názov skriptu
sequence:
- data:
data:
push:
badge: 0
category: alarm #Kategória upozornenia; je to kategória ktorá
bola nastavená v ios komponente, slúži pre
poslanie „actionable notification“
sound: testing.wav #Súbor hlasového upozornenia
message: First Alert Smoke and CO alarm is being tested #Správa upozornenia
service: notify.ios_ron_mszross_iphone #Zariadenie na ktoré má byť upozornenie
poslané
- data:
entity_id: script.1521487504935 #Zvolenie skriptu
service: script.turn_on #Zapnutie skriptu

'1521487504935': #Skript pre volanie predošlého skriptu aby sa


vytvorila slučka
alias: test_loop
sequence:
- delay: 00:00:10 #Čakať 10 sekúnd
- data:
entity_id: script.1521460647017
service: script.turn_on #Volanie predošlého skriptu

Tieto dva typy skriptov sú vytvorené pre každú automatizáciu ktorá má opakovane posielať
upozornenie na mobilné zariadenie. V nastavení okrem správ a názvov sa líšia iba v tom
koľko čakajú pred volaním druhého skriptu. Napríklad posielať upozornenie, že je slabá
batéria stačí každý deň

'1521545633343': #Prvý skript pre poslanie upozornenia


alias: low_battery
sequence:
- data:
data:
push:
badge: 0

38
category: alarm
sound: lowbattery.wav
message: First Alert Smoke and CO alarm has low battery
service: notify.ios_ron_mszross_iphone
- data:
entity_id: script.1521545712476
service: script.turn_on

'1521545712476': #Druhý skript pre volanie predošlého skriptu


alias: low_battery_loop
sequence:
- delay: 24:00 #Čakať 1 deň
- data:
entity_id: '1521545633343'
service: script.turn_on

Obrázok 13 Prehľad fungovania automatizácie – Activity Diagram

Z obrázku 12 sa dá spozorovať ako funguje náš systém aby upozornil na nebezpečenstvo CO


alebo dymu. Počiatočný bod nastane vtedy ak sa zmení stav senzoru, v HA sa spustí
automatizácia, ktorá pomocou skriptov opakovane, slučkovým spôsobom každých päť sekúnd
posiela upozornenie na iPhone. Na obrazovke iPhonu sa objaví upozornenie a podľa typu
upozornenia vysloví pomocou prevodu textu na reč aká hrozba nastala. Používateľ potom má
možnosť zvoliť akciu odtiahnutím upozornenia a zvolením akcie „Silence Alarm“ čo spôsobí
aby boli skripty v HA vypnuté a slučka posielania upozornení zrušená.

39
5 Záver

V prvej kapitole sme si vysvetlili čo sa skrýva za pojmom internet vecí a ako pomáha
zjednodušiť ľuďom život v domácnostiach pomocou inteligentnej domácnosti a domácej
automatizácie. Preskúmali sme ako tieto spomínané technológie používajú rôzne mechanizmy
na to, aby sa podľa jednoduchých dát vedeli rozhodnúť akú danú akciu a na ktorej danej „veci“
majú vykonať. Dozvedeli sme sa akými spôsobmi môžeme zaviesť inteligentný systém do
domácnosti a prečo je potrebné aby sme dopredu naplánovali a ustanovili ciele takého systému.

V ďalšej kapitole sa podarilo vytvoriť inteligentné prostredie pomocou Raspberry Pi a softvéru


Home Assistant. Použili sme dymový a CO senzor aby upozornil na nebezpečenstvo. HA sme
nastavili tak, aby opakovane posielal upozornenia na ios zariadenie, kým používateľ nezvolí
akciu definovanú do upozornenia, aby umlčal alarm.

Počas práce na projekte sa podarilo pripojiť aj ďalšie zariadenia v domácnosti ako napríklad
zosilňovač, mediálne prehrávače od Sonos a robotický vysávač. Možné pokračovanie
v automatizácii by mohlo byť nastavenie pravidiel pre vysávač; napríklad ak sa zapne hudba
na niektorých prehrávačoch, vysávač by prestal vysávať a vrátil by sa na základňu; a ak sa
hudba vypne, mohol by pokračovať v práci. Tento príklad znázorňuje, že schopnosti tohto
projektu naozaj závisia len od ľudskej predstavivosti i vďaka 1070 komponentov, ktoré sú
súčasne k dispozícii pre HA. Možnosti sú naozaj nekonečné.

40
Zoznam použitej literatúry:

[1] How IoT & smart home automation will change the way we live [Online] Andrew Meola
december. 19, 2016, http://www.businessinsider.com/internet-of-things-smart-home-
automation-2016-8

[2] A Simple Explanation Of ‚The Internet Of Things‘ Dátum: máj 14, 2014, 12:05 AM,
Autor: Jacob Morgan, Dostupné na internete:
https://www.forbes.com/sites/jacobmorgan/2014/05/13/simple-explanation-internet-things-
that-anyone-can-understand/

[3] What is the IoT? Everything you need to know about the Internet of Things right now,
Dátum: január 19, 2018, 18:00, Dostupné na internete: https://www.zdnet.com/article/what-is-
the-internet-of-things-everything-you-need-to-know-about-the-iot-right-now/

[4] 17 'Internet Of Things' Facts Everyone Should Read, Dátum: október 27, 2015, 03:27 AM,
Autor:Bernard Marr, Dostupné na internete:
https://www.forbes.com/sites/bernardmarr/2015/10/27/17-mind-blowing-internet-of-things-
facts-everyone-should-read/#38d1a5bd3505

[5] Dátum: február 7, 2017, Autor: Egham, Dostupné na internete:


https://www.gartner.com/newsroom/id/3598917

[6] Internet vecí, Čas poslednej úpravy stránky je 14:13, 28. september 2017, Dostupné na
internete: https://sk.wikipedia.org/wiki/Internet_vec%C3%AD

[7] Internet of Things: A Hands-On Approach, Dátum: 2014, Autory: Arshdeep Bahga, Vijay
Madisetti, webová stránka knihy: www.internet-of-things-book.com ISBN 978-0996025515

[8] Internet of Things: A Hands-On Approach Dátum: 2014, Autory: Arshdeep Bahga, Vijay
Madisetti strana 20 webová stránka knihy: www.internet-of-things-book.com ISBN 978-
0996025515

[9] Best Smart Home Devices And How IoT Is Changing The Way We Live, Dátum: jún 6,
2017 08:00 AM, Autor: Forbes Technology Council, Dostupné na internete:
https://www.forbes.com/sites/forbestechcouncil/2017/06/06/best-smart-home-devices-and-
how-iot-is-changing-the-way-we-live/#42ba928343bd

41
[10] Thomas Alva Edison, Čas poslednej úpravy stránky: 14:14, 29. apríl 2018, Wikipedia:
https://sk.wikipedia.org/wiki/Thomas_Alva_Edison

[11] Lighting Control History, webová stránka:


http://www.uky.edu/~jholl2/technology_pdfs/LightingControlHistory.pdf

[12] Occupancy Sensing and Prediction for Automated Energy Savings, Autor: Wilhelm
Kleiminger, Dostupné na internete: http://www.vs.inf.ethz.ch/publ/papers/wilhelmk-2015-
dissertation.pdf, strana 12 a 13

[13] http://www.lutron.com/en-US/Pages/default.aspx

[14] http://www.plutonpower.com/index.html

[15] http://www.wemo.com/

[16] https://www.wink.com/

[17] https://www.insteon.com/

[18] https://www.fibaro.com/en/

[19] https://www.iqrf.org/

[20] https://www.sigfox.com/en

[21] https://homeseer.com/

[22] https://www.openhab.org/

[23] https://iot.slovanet.sk/siet-lorawan.html

[24]https://www.amazon.com/Amazon-Echo-And-Alexa-
Devices/b/ref=nav_shopall_1_ods_ha_echo_cp?ie=UTF8&node=9818047011

[25] Oxid_uhoľnatý, Čas poslednej úpravy stránky je 20:14, 18. január 2015, Dotupné na
internete: https://sk.wikipedia.org/wiki/Oxid_uhoľnatý

[26] https://aeotec.com/z-wave-usb-stick

42
[27] RASPBERRY PI 3 IS OUT NOW! SPECS, BENCHMARKS & MORE, Dátum: 2016,
Autor: The MagPi, Dostupné na internete: https://www.raspberrypi.org/magpi/raspberry-pi-3-
specs-benchmarks/

[28] Raspberry Pi, Čas poslednej úpravy stránky je 19:36, 5 máj 2018, Dostupné na internete:
https://en.wikipedia.org/wiki/Raspberry_Pi

[29] https://www.home-assistant.io/hassio/

[30] https://www.home-assistant.io/docs/installation/

[31] https://www.home-assistant.io/blog/2017/07/25/introducing-hassio/

[32] Home Assistant: The Python Approach to Home Automation [Video], Dátum: jún 20,
2016, Autor: Eric Brown, Dostupné na internete: https://www.linux.com/news/home-
assistant-python-approach-home-automation-video

[33] https://www.home-assistant.io/developers/architecture/

[34] Z-Stick 2E manual, Dátum: august 18, 2013, Dostupné na internete:


https://www.betaalbare-domotica.nl/media/blfa_files/Z-Stick_2E_manual_-_Aeotec_2.pdf

[35] Raspberry Pi 7" Touch Screen Assembly Guide, Dátum: november 18, 2015, Autor:
MODMYPI, Dostupné na internete: https://www.modmypi.com/blog/raspberry-pi-7-touch-
screen-assembly-guide

[36] https://etcher.io/

[37] https://www.home-assistant.io/addons/samba/

[38] https://www.home-assistant.io/docs/automation/

[39] https://z-wavealliance.org/about_z-wave_technology/

[40] https://smarterhome.sk/sk/informacie/co-je-z-wave-6

[41] http://www.z-wave.com/faq

[42] https://www.home-assistant.io/

[43] http://www.zigbee.org/what-is-zigbee/

43
Obrázky:

[44] http://www.z-wave.com/shop-z-wave-smart-home-products/smart-alarms-sirens-smart-
sensors-first-alert-first-alert-z-wave-smoke-co-alarm

[45]https://smarterhome.sk/sk/zwave-pc-adaptery/aeon-labs-usb-controller-gen5-
17.html?search_query=usb&results=38

[46] https://www.raspberrypi.org/blog/the-eagerly-awaited-raspberry-pi-display/

[47] https://www.home-assistant.io/demo/

[48] Raspberry Pi 7" Touch Screen Assembly Guide, Dátum: november 18, 2015, Autor:
MODMYPI, Dostupné na internete: https://www.modmypi.com/blog/raspberry-pi-7-touch-
screen-assembly-guide

44
Prílohy A

GPIO kolíky na RPi

45

You might also like