Sadržaj

Svrha projekta

Ovaj jednostavan sustav služi za upravljanje rasvjetnim tijelom. Omogućuje korisniku da daljinski ili s udaljenog mjesta uključi ili isključi rasvjetno tijelo te daje informaciju o trenutnom stanju rasvjetnog tijela. Za komunikaciju između raznih dijelova sustava koristi se TCP/IP protokol sa SSL enkripcijom i neka od komunikacijskih mreža koje podržavaju TCP/IP komunikaciju poput IEEE 802.11 (WiFi) ili IEEE 802.3 (Ethernet). Zbog TCP/IP SSL komunikacije sustav je robustan i informacijski siguran usporedivo sa svim suvremenim računalnim komunikacisjkim protokolima korištenim za pristup Internetu. Unatoč robusnosti, sustav je dovoljno malen i jednostavan da može raditi kao ugrađeno računalo bez ljudskog nadzora.

Korisnici projekta

Stanari kuće, stanari stana, vlasnici vikendica, stanari koji nemaju lagan pristup prekidaču za svijetlo u spavaćoj sobi.

Ciljevi projekta

Resursi

Ograničenja

Nedostatak ovog sustava je (ipak) relativno visoka potrošnja energije pa je potrebno napajanje snage 1 W.
Potrebna je WiFi ili Ethernet mreža sa konekcijom na Intrnet dostupna 24/7.

Vlastiti zadatak

Moj zadatak je bio napisati node.js skriptu (program) koji izvršava željenu logiku i potrebne zadatke za ostvrenje cilja ovog projekta.
Najprije je bilo potrebno izraditi mobilnu aplikaciju za upravljanje rasvjetom. To je implementirano unutar Blynk aplikacije na pametnom telefonu. Zatim je bilo potrebno proučiti Blynk knjižnicu za node.js i implementaciju koja se razlikuje od implementacije za Arduino.
Da bi cijeli sustav funkcionirao, bilo je potrebno programirati logiku za sinkronizaciju tri virtualna upravljača jednog rasvjetnog tijela i dojavu trenutnog stanja prema Blynk servisu odnosno našoj mobilnoj aplikaciji.

Onion Omega je maleno računalo sa OpenWRT operacijskim sustavom. Naš s​​​​ustav za upravljanje rasvijetom mora raditi bez nadzora. Zbog toga je bilo potrebno ostvariti mehanizme pokretanja node.js skripte kao servisa na OpenWRT linux operacijskom sustavu.
U slučaju prekida izvršavanja skripte potrebno je ponovno pokrenuti izvršavanje.

Komunikacija među podsustavima

Sustav ima tri dijela, od koji su dva dijela dostupna korisniku i inženjeru. Nedostupan dio je Blynk server i servis negdje na Internetu.
Dostupni su pametni telefon (aplikacija) i Onion Omega (izvršitelj). Svi međusobno komuniciraju pomoću TCP/IP protokola.