Svrha projekta je povećati kvalitetu boravka u prostoriji, svim ljudima koji se u njoj nalaze.
Svi stanari kuće, stana, ili korisnici nekog poslovnog prostora.
1) Ostvariti sustav ambijentalnih senzora u svrhu poboljšanja ugode u prostoriji.
2) Ostvariti izračun PPD i PMV vrijednosti na temelju očitanih vrijednosti sa senzora te prikazati rezultat na korisničkom sučelju
Sustav je ostvaren na Arduino platformi (Arduino Mega 2560). Za mjerenje fizikalnih veličina korištena su tri senzorska modula:
Korisničko sučelje izvedeno je pomoću LCD prikaznika i tipkovnice za Arduino. Dobivanje informacije o trenutnom vremenu ostvareno je preko RTC modula:
Podsustav za spremanje podataka sadrži:
Spajanje i slanje podataka o trenutnom stanju senzora na web server realizirano je pomoću:
Za sve navedene module korištene su besplatne biblioteke i programska podrška za Arduino. Više o programskoj implementaciji može se naći u pdf verziji dokumentacije projekta.
Nemogućnost ostvarivanja svih potrebnih mjerenja za izračun PPD i PMV. Na primjer, za detekciju odjeće koja se nalazi na osobama potreban je računalni vid, ali zbog nedostatka vremena i resursa takvo mjerenje se neće realizirati. Sve fizičke veličine osim sobne temperature, vlažnosti i tlaka zraka postavljene su u očekivane vrijednosti koje su dobivene iz referentne literature.
Nedostatak aktuatora koji bi mijenjali uvjete u prostoriji. Njihov utjecaj će biti zamijenjen LED-icama koje ih simboliziraju. Regulacije temperature realizirana je jednostavnom naredbom uključivanja/isključivanja “klime”. Razina željene svijetlosti korisnika simbolizirana je svjetlinom druge LED diode. Detektor buke pali treću LED diodu ako je razina buke iznad prosječne vrijednosti definirane od strane korisnika.
Središnji dio sustava je Arduino MEGA2560 na koji se spajaju periferni senzorski moduli s kojima se komunicira preko SPI-ja i I2C sabirnice. Temperaturni senzor i senzor buke svoje podatke šalju putem analognog ulaza.
Zapisivanje na microSD karticu se vrši pomoću SPI sabirnice, dok se tipkovnica u sklopu korisničkog sučelja povezuje sa središnjim sustavom s 8 linija. Način komunikacije putem tih 8 linija je definiran u dokumentaciji KeyPada, ukratko pritiskom gumba se kratko spajaju dvije linije od 8 linija raspoređenih u 4×4 matricu. Tako se jednoznačno određuje koji je gumb pritisnut.
Za komunikaciju s internetom je korišten modul “WeMos D1 pro” koji koristi ESP8266. Preko tog modula šalju se podaci sa senzora i trenutno stanje broja korisnika na zavodski server, putem predefiniranog formata. Zavodski server stoji iza domene echo.zesoi.fer.hr, kojem smo dali alias spvp.anteo.me.
Moja uloga na projektu
U sklopu projekta ostvario sam prikaz datuma, vremena te PMV i PPD vrijednosti na LCD ekran. U tu svrhu korišteni su model ekrana LCD-2004A prilagođen radu s računalnim sustavima „Arduino“. Spoj LCD-a sa „Arduino Mega 2560“ ostvaren je koristeći međusklop „YwRobot LCM1602 V1“ namjenjenog jednostavnijem ostvarivanju I2C serijske veze. Također, za informaciju točnog vremena i datuma implementirao sam rad RTC modula. Podaci sa senzora prilikom zapisivanja na SD karticu i web sučelje uz sebe imaju informaciju o datumu i vremenu uzimanja uzorka. Za pisanje programske podrške korištene su gotove Arduino biblioteke, te vlastito razvijene funkcije za brisanje reda na LCD ekranu.
Nadalje, implementirao sam izračun PMV i PPD vrijednosti koje se zatim periodično ispisuju na LCD ekran. Predicted Percentage of Dissatisfied (PPD) i Predicted Mean Vote (PMV) su brojčane vrijednosti koje predstavljaju kvantificiranu razinu ambijentalne ugodnosti u nekom prostoru. PMV predstavlja razinu termalne ugodnosti koja se u vrijednostima kreće od -3 (hladno) do 3 (vruće). Prema referentnoj literaturi, formula za određivanje PMV vrijednosti dobivena je eksperimentalno iz velike količine podataka, te koristi brojne parametre kao što su temperatura, vlažnost, brzina strujanja zraka u prostoriji itd. PPD je postotni indeks koji predviđa udio nezadovoljnih korisnika u prostoriji. Određuje se izravnom empirijskom jednadžbom iz PMV-a. Više o PPD-u i PMV-u može se pronaći ovdje.
Izračun na realiziranoj platformi ostvaren je preko već razvijenih algoritama iz priložene literature, implementiranih u C jeziku. Tijekom implementacije analizirano je ukupno vremensko izvršavanje algoritma jer sam postupak u sebi sadrži rekurzivno računanje srednje izračene temperature. Rezultat tog postupka dao je iznos u redu veličine milisekunde, iz čega se može zaključiti da tako realiziran algoritam može biti primjenjen na cijelokupnu aplikaciju. Iz objektivnih razloga kao ulazni mjereni parametri korišteni su temperatura, tlak i vlažnost zraka, tj. fizikalne veličine koje smo imali mogućnost mjeriti preko nabavljenih senzora. Ostali parametri potrebni za izračun postavljeni su u očekivane srednje vrijednosti koje su dostupne u priloženom izvoru.