Slijede razlike između dviju inačica stranice
Novija izmjena | Starija izmjena | ||
2017:studenti:tkovacevic:projektni_zadatak [2017/06/28 17:40] mmatijascic stvoreno |
2017:studenti:tkovacevic:projektni_zadatak [2023/06/19 16:11] (trenutno) |
||
---|---|---|---|
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 korisnik bude definiran s preferiranim vrijednostima svih mjerenih vrijednosti, korisničkim ID-em, te zastavicom prisutnosti u prostoriji. |
- | **Modul za microSD karticu ** | + | 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 jedinstveni ID. Vrijednosti senzora osvježavaju se svakim prolazom kroz glavnu petlju programa, dok se njihov prosjek računa svakih nekoliko ciklusa (inicijalno u programu predodređeno 10, točnije - podaci sa senzora dostupni su i osvježeni svakih 10 sekundi). |
- | 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. | + | U glavnom se programu još nalazi izračun PMV i PPD vrijednosti, na temelju prethodno izračunatih prosjeka 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 s modulom ostvarili 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. |
- | [[http://img.dxcdn.com/productimages/sku_148784_2.jpg|MicroSD modul]] | + | Kreiranje novih korisnika, ažuriranje postojećih i brisanje korisnika ostvareno je pritiskom tipke na dijelu korisničkog sučelja koje se nalazi na tipkovnici. |
- | 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. | + | 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. |
- | + | ||
- | 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. | + | |