Slijede razlike između dviju inačica stranice
Novija izmjena | Starija izmjena Novija izmjena Novije izmjene na obje strane | ||
2017:studenti:tkovacevic:projektni_zadatak [2017/06/28 19:40] mmatijascic stvoreno |
2017:studenti:tkovacevic:projektni_zadatak [2017/06/28 19:49] mmatijascic [Komunikacija s vanjskim sustavima] |
||
---|---|---|---|
Redak 60: | Redak 60: | ||
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. | 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 ====== | + | **Uloga na projektu** |
- | U sklopu ovog grupnog projekta bio sam zadužen za istraživanje, upoznavanje i ugradbu modula za SD karticu i matrične tipkovnice u konačni sustav. Modul za SD karticu se koristi za dugoročno zapisivanje podataka sa senzora kako bi se moglo otkriti skrivene faktore koje utječu na ambijentalni ugođaj prostora. Matrična tipkovnica se koristi za unos novih korisnika i njihovih osobnih postavki ili promjenu postojećih korisnika. Pored toga, osigurao sam aktuatorski dio sustava koji je korak dalje od predviđenog projektnog plana određivanja ambijentalne ugodnosti - ako se na određene faktore može utjecati, u slučaju da neki od njih pređe dozvoljene granice, uključit će se odgovarajući aktuator (klima, rolete i upozorenje za buku). | + | U sklopu projekta ostvario sam organizaciju i implementaciju glavnog i prekidnog programa. U glavnom programu organizirao sam korisnike, kao i njihove strukture i preferirane parametre koji ih karakteriziraju. Struktura je ostvarena tako da svaki pojedini korsnik bude definiran sa preferiranim vrijednostima svih mjerenih vrijednosti, korisnickim ID-em, te zastavicom pristunosti u prostoriji. Osim toga, sintetizirao sam čitanje sa svih senzora koje su kolege inicijalizirali, njihov matrični zapis te računanje srednje vrijednosti za svakog od njih u predodređenim ciklusima. Senzori su u matrici organizirani prema prethodno definiranoj enumeraciji. Svaki od senzora posjeduje svoj jedistveni ID. Vrijednosti senzora usvježavaju se svakim prolakom kroz glavnu petlju programa, dok se njihov prosijek računa svakih nekoliko ciklusa (inicijalno u programu predodređeno 10, točnije - podaci sa senzora dostupni su i osvježeni svakih 10 sekundi). U glavnom se programu još nalazi izračun PMV i PPD vrijednosti, na temelju prethodno izračunatih prosijeka vrijednosti svih senzora, dok je ažuriranje aktuatora, te slanje svih podataka na web server u stvarnom vremenu ostvareno preko Wemos D1 Mini Pro modula. Komunikaciju sa modulom ostavarili su kolege. U prekidnom programu napravio sam parsiranje primljenih podataka s tipkovnice, tako da svaki uneseni znak ispisujem na LCD-u, te ga učitavam u glavnom programu, te nakon pritiska predodređene tipke, spremam unesenu vrijednost u potrebu varijablu. Kreiranje novih korisnika, ažuriranje postojećih i brisanje korisnika ostvareno je odabriom sa dijela korisničkog sučelja koje se nalazi na tipkovnici. Uz nabrojene konkretne zadataka nužne za funkcionalnost sustava, implementirao sam dodatne pomoćne funkcije koji služe za bolju čitljivost i organizaciju koda, kao što su: brisanje podataka iz svakog buffera, osvježavanje podataka na LCD-u, pozicioniranje na LCD-u, iteriranje kroz bazu korisnika itd. |
- | + | ||
- | **Modul za microSD karticu ** | + | |
- | + | ||
- | Modul za SD karticu se koristi za dugoročno zapisivanje podataka sa senzora kako bi se moglo otkriti skrivene faktore koji utječu na ambijentali ugođaj prostora. | + | |
- | + | ||
- | [[http://img.dxcdn.com/productimages/sku_148784_2.jpg|MicroSD modul]] | + | |
- | + | ||
- | Za komunikaciju sa SD karticom koristi se skup funkcija unutar biblioteke "SD.h", gdje se podatkovni sustav kartice preusmjerava u lokalnu varijabli tipa "File" s kojom se dalje otvara i zatvara podatkovni tok. | + | |
- | + | ||
- | Potrebno je osigurati napajanje od 5 V koje se zatim integriranim sklopovljem za prilagodbu razine napajanja spušta na 3,3 V. Dodatno, nužno je dovesti unutrašnji signal takta na izvod SCK te spojiti MISO, MOSI i CS izvode na odgovarajuće izvode Arduina. Karticu je potrebno formatirati kao fatfs prije spajanja na međusklop, a same datoteke koje će se spremati na karticu (u svrhu zapisivanja podataka sa senzora kroz dulje vremensko razdoblje) trebaju pratiti standard imenovanja „8.3“, odnosno 8 znakova naziva i 3 znaka za tip datoteke (IMEDATOT.EXT). | + | |
- | + | ||
- | **Matrična membranska tipkovnica ** | + | |
- | + | ||
- | [[https://www.parallax.com/sites/default/files/styles/full-size-product/public/27899.png|Matrix Keypad]] | + | |
- | + | ||
- | Kako bi se olakšao unos novih korisnika, koristi se matrična tipkovnica sa 16 znakova (0-9, A-D, *, #) i 8 izvoda koji se spajaju na proizvoljne izvode Arduina. Matričnu tipkovnicu čine četiri reda i četiri stupca koji povezuju znakove. Pritiskom na jedan od znakova dolazi do spoja određenog stupca i retka, dok mikrokontroler prozivanjem (polling) redova za svaki stupac određuje koji je znak pritisnut. | + | |
- | + | ||
- | **Aktuatori ** | + | |
- | + | ||
- | Osim praćenja trenutnih čimbenika u prostoriji, sustav je zamišljen da simulira utjecaj na tri veličine - buku, svjetlost i temperaturu. Ako jedna od veličina pređe kritičnu razinu u odnosu na korisničke želje, aktivira se vanjska jedinica (ovdje predstavljena svjetlećom diodom) koja bi utjecala na povratak te veličine u dozvoljeni raspon. | + | |