Sadržaj:

UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca .: 6 koraka
UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca .: 6 koraka

Video: UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca .: 6 koraka

Video: UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca .: 6 koraka
Video: Part 02 - Moby Dick Audiobook by Herman Melville (Chs 010-025) 2024, Studeni
Anonim
UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca
UCL-lloT-Vanjsko svjetlo Pokrenuto izlaskom/zalaskom sunca

Pozdrav svima! Uz malo rada, neke dijelove i kôd sastavio sam ovo uputstvo koje će vam od početka do kraja pokazati kako se točno proizvodi ovo vanjsko svjetlo. Ideja je potekla od mog oca, koji je tijekom ljeta morao ručno izlaziti i mijenjati se kad je svjetlo bilo upaljeno. S obzirom na to da se vrijeme zalaska sunca i izlaska sunca brzo mijenjalo tijekom cijele godine, upitao me mogu li pronaći automatiziran način za to. I tako smo ovdje. Relativno mali projekt.

Korak 1: IO popis i što vam je potrebno

IO popis i što vam je potrebno
IO popis i što vam je potrebno
IO popis i što vam je potrebno
IO popis i što vam je potrebno
IO popis i što vam je potrebno
IO popis i što vam je potrebno

Arduino MEGA 2560. To je ono što sam ja barem koristio, znam da biste lako mogli upotrijebiti drugi.

DS3231 i njegova biblioteka. (https://rinkydinkelectronics.com/library.php?id=73… Važno je znati da su pinovi postavljeni za SDA i SCL različiti ovisno o tome koji Arduino koristite.

I052116 IR infracrveni senzorski modul senzora detektora pokreta. Ovaj određeni modul može se zamijeniti za vaš senzor po izboru, iskreno je neobavezan za cijelu stvar.

Korak 2: Dijagram toka

Dijagram toka
Dijagram toka

Kao što se vidi na jednostavnom dijagramu toka, većina teških tereta nalazi se u čvorištu Red. S relativno jednostavnim čvorovima, ideja je da ćete iz Node-Reda doći do web stranice koja zna u koje vrijeme sunce zalazi i izlazi. Kad ga dobije, poslat će informacije na Arduino i reći mu. Iz Arduina ćemo dobiti signal koji točno pokazuje kada su svjetla stvarno uključena, tako da možete provjeriti iz svog doma baš kad svjetla ugase. Također iz Arduina dobit ćemo informacije da je senzor blizine aktiviran, koja ima uključeno svjetlo x vrijeme.

Korak 3: Frizing

Frizing
Frizing

U usporedbi s drugim projektima, ožičenje je ovdje prilično jednostavno. Ono što morate biti svjesni je da ćete trebati WIFI modul za održavanje kontakta s poslužiteljem Node-Red ili nabaviti računalo za bacanje koje će ugostiti poslužitelj Node-Red na povezanom s Arduinom. Na slici nije prikazana veza između Arduina i prijenosnog računala i unaprijed se ispričavam zbog loše Fritzing slike!

Korak 4: Kodiranje

Kodiranje
Kodiranje
Kodiranje
Kodiranje

Ako sam nešto otkrio, to je da je s Firmatom (za Arduino komunikaciju s Node-Redom), knjižnicom DS3231 i drugim, bilo puno učitanih knjižnica. Od objavljivanja, kodiranje nije sasvim dovršeno, pa je uključen pseudokod.

U knjižnici s DS3231 nalaze se unaprijed postavljeni pinovi za svaku od Arduino ploča, a u slučaju Mege to su pin 20 i 21 jer su to SDA i SCL pinovi na mega. Kad se sat spoji, može se točno reći koji je dan i o čemu treba voditi računa. Ono što je meni bilo lakše raditi kad je u pitanju praćenje brojeva je korištenje int umjesto niza. Ono što sam učinio je da pretvaram brojeve niza u int, ali budući da int ne može koristiti: za odvajanje sata, odlučio sam učiniti nešto drugo. Umjesto rada sa satima, mi ćemo raditi s minutama. Puno minuta. Ako je na primjer 13:21, prve dvije znamenke ću odvojiti i mjeriti sa šezdeset. Sada smo na 801 minuti, jer je 13 puta 60 jednako 780, a dodali ste posljednjih 21 minutu. Ako naš Node-Red kaže da sunce zalazi u 16:58 (u slučaju zime), vanjska svjetla ćemo uključiti između 1018 minuta i unaprijed definirano vrijeme isključivanja, što će biti 1380 (23:00). Ako je naš mjerač vremena između njih, svjetla će se upaliti. Gore navedena matematika je u osnovi cijeli program, bez koraka da se Node-Red spoji na Arduino i komunicira. Također će se koristiti senzor koji osigurava da se svjetla pale (u svakom slučaju prošlo zalazak sunca), ali u suprotnom je to cijeli gornji program.

Korak 5: Node-Red

Čvor-Crveno
Čvor-Crveno
Čvor-Crveno
Čvor-Crveno
Čvor-Crveno
Čvor-Crveno
Čvor-Crveno
Čvor-Crveno

Nije osobito velik protok, nije da bi trebao biti u ovom slučaju. Prva 2 reda čvorova veliki su dio programa. Pomoću funkcije GET dohvaćamo današnje predviđanje o tome kako će sunce izaći i zaći. Odatle koristimo CSS birač za dohvaćanje naših specifičnih podataka, kojima se obično pristupa na web stranicama "Inspect Elements" na firefoxu kako je navedeno na slikama. Imajte na umu da ne funkcioniraju sve web stranice na ovaj način, a ona koju ja koristim savršeno funkcionira na ovaj način. Odatle će pisati podatke na pin 13 jer sam ga tako odredio, iako testiranje tek treba odrediti je li jedan pin do različitog vremena izvediv. Kao što je opisano u dijelu kodiranja, informacije će dolaziti s Arduina na Node-Red, gdje će se zatim na pristupačnoj web stranici naznačiti gdje se to može lako provjeriti. Za to će vam trebati Firmata ako želite koristiti funkcije Arduina nabavljen putem knjižnice node-red-node-arduino na Node-Redu. Iako još nije u potpunosti postavljen i bit će ažuriran dok završim projekt, priložio sam kôd za Node-Red Flow u tekstualni dokument radi lakšeg pristupa.

Korak 6: Uvođenje i korištenje

Uvođenje i korištenje
Uvođenje i korištenje

I da dovršimo naše instrukcije, praktični je dio toga. S obzirom da nekoliko kuća ima ovu razinu automatskog osvjetljenja, rješenje za cijelu godinu dobrodošlo je mnogim vlasnicima kuća. Da biste ovo zapravo povezali sa svjetiljkama koje koriste električnu energiju koja nije Arduino, ne preporučujem da to radite sami ako ne znate točno što radite. S dovršetkom projekta, preuzimam ovaj zadatak uz pomoć električara samo da budem siguran. Osvjetljavajući prilaz senzorom ili strogo vremenski, preporučujem da nadogradite ono što sam već učinio ako mislim zapravo ga staviti u upotrebu izvan ove testne faze u kojoj se trenutno nalazi. Većina mojih problema s projektom bila je isključivo u dijelu Node-Red to Arduino, i nadam se da sam uspio što jasnije objasniti kako je to Gotovo je.

Preporučeni: