„Inteligentný dom“

Moja maturitná práca, ktorej cieľom bolo navrhnúť a ovládať „inteligentný dom“. Ovládanie bolo možné na diaľku v lokálnej sieti prostredníctvom aplikácie naprogramovanej v Qt frameworku.

Návrh systému

Systém bol postavený na platforme Arduino, pričom boli použité Arduino Mega 2560 (centrálna jednotka), Arduina Pro Mini a rôzne moduly (LCD displej, RFID čítačka a pod.). Celý systém bol napájaný 5V adaptérom. Centrálna jednotka periodicky kontrolovala lokálnu sieť na prítomnosť nových používateľov, zbierala informácie od aktívnych modulov a nastavovala ich správanie.

Sieťová komunikácia

Vzájomná komunikácia medzi centrálnou jednotkou a používateľom prebiehala pomocou webového servera bežiaceho na centrálnej jednotke. Webový server mal statickú IP adresu. Po pripojení používateľa, centrálna jednotka odoslala html dokument pomocou http protokolu s informáciami o stave. Pokiaľ chcel používateľ napríklad zapnúť svetlo, poslal dotaz na webovú adresu v tvare IP adresy centrálnej jednotky, ku ktorej pripojil parameter na zapnutie svetla napríklad: 192.168.1.177/?a1. Toto všetko bolo realizované pomocou aplikácie.

Aplikácia

Samotný obslužný program pre jednotlivé Arduina bol napísaný v jazyku C a jazyku Arduino založenom na jazyku Wiring. Po spustení inicializoval porty Arduina. Inicializácia portov spočívala v nastavení portov Arduina na výstupy a vstupy podľa potreby ovládania pripojených modulov a nastavila ich počiatočné stavy. Inicializácia Ethernet shieldu predstavovala nastavenie IP a MAC adresu a spustenie webového servera. Inicializácia SD karty, overovala jej pripojenie a funkčnosť. Potom sa program dostal do slučky, v ktorej kontroloval či je poplach (ak bol zapnutý), vytopenie kúpeľky, určoval zapnutie vypnutie svetiel na základe vonkajšieho osvetlenia pomocou fotorezistora.

Webserver slúžil na komunikáciu užívateľa resp. aplikácie s centrálnou jednotkou. Po pripojení užívateľa prostredníctvom aplikácie, odoslal webserver html stránku s hlavičkou, v ktorej sa nachádzali všetky potrebné údaje o stave "inteligentného domu". Tieto údaje boli vyjadrené v číselných hodnotách. Podľa poradia jednotlivých číselných hodnôt som vedel zistiť stav príslušného modulu resp. senzora.

Uživateľská aplikácia, vytvorená pomocou jazyka QML, si v určitých intervaloch aktualizovala hodnoty a následne ich zobrazovala uživateľovi. Ten mohol pomocou nej zapínať vypínať ochranu, svetlá a pozerať hodnoty jednotlivých snímačov. Celá grafická časť bola navrhnutá v programe Inkscape.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *