Kazalo:

DIY IoT svetilka za avtomatizacijo doma -- ESP8266 Vadnica: 13 korakov (s slikami)
DIY IoT svetilka za avtomatizacijo doma -- ESP8266 Vadnica: 13 korakov (s slikami)

Video: DIY IoT svetilka za avtomatizacijo doma -- ESP8266 Vadnica: 13 korakov (s slikami)

Video: DIY IoT svetilka za avtomatizacijo doma -- ESP8266 Vadnica: 13 korakov (s slikami)
Video: Как сделать 2-канальное реле Wi-Fi ESP8266 ESP-01 | ESP-01 Домашняя автоматизация | УдаленныйXY 2024, December
Anonim
Image
Image
DIY IoT svetilka za avtomatizacijo doma || ESP8266 Vadnica
DIY IoT svetilka za avtomatizacijo doma || ESP8266 Vadnica

V tej vadnici bomo izdelali pametno svetilko, povezano z internetom. To bo globoko poseglo v internet stvari in odprlo svet domače avtomatizacije!

Svetilka je povezana z WiFi in ima odprt protokol za sporočila. To pomeni, da lahko izberete kateri koli način nadzora! Upravljati ga je mogoče prek spletnega brskalnika, aplikacij za avtomatizacijo doma, pametnih pomočnikov, kot sta Alexa ali Google Assistant, in še veliko več!

Kot bonus je ta svetilka skupaj z aplikacijo za nadzor projekta. Tu lahko izbirate med različnimi barvnimi načini, preklapljate med barvami RGB in nastavljate časovnike.

Svetilka je sestavljena iz LED plošče in nadzorne plošče. LED plošča uporablja tri različne vrste LED za skupno pet LED kanalov! To je RGB skupaj s toplo in hladno belo. Ker lahko vse te kanale nastavite posamično, imate skupaj 112,3 kombinacije peta!

Začnimo!

[Predvajaj video]

Korak: Deli in orodja

Deli in orodja
Deli in orodja

Deli

  • Wemos D1 Mini
  • 15 x toplo bela 5050 LED
  • 15 x hladno bela 5050 LED
  • 18 x RGB 5050 LED
  • 6 x 300 ohm 1206 upori
  • 42 x 150 ohm 1206 upori
  • 5 x 1 k ohmski upori
  • 5 x NTR4501NT1G

    MOSFET

  • Linearni regulator napetosti, 5V
  • PCB

    Prenesite datoteke gerber v koraku vezja, da ustvarite lastne tiskane vezje

  • Napajanje 12V 2A

Orodja

  • Spajkalnik

    • Spajkalnik
    • Tekoči spajkalni tok
  • Lepilni trak
  • Dvostranski trak
  • 3D tiskalnik
  • Odstranjevalci žice

2. korak: Načrt

Načrt
Načrt

Celoten projekt je sestavljen iz štirih glavnih delov:

  1. Vezje

    Vezje je izdelano na tiskanem vezju. Dokončano vezje bo sestavljeno iz več kot 100 posameznih komponent. Veliko olajšanje je, če vseh teh ne povežete ročno na ploščo

  2. Koda Arduino

    Uporabljam Wemos D1 Mini, ki uporablja ESP8266 kot mikrokrmilnik, povezan z WiFi. Koda bo zagnala strežnik na D1. Ko obiščete naslov tega strežnika, bo D1 to razlagal kot različne ukaze. Mikrokrmilnik nato na ta ukaz ustrezno nastavi luči

  3. Daljinec

    • Samo za ta projekt sem naredil aplikacijo, ki bo olajšala čim bolj enostavno upravljanje svetilke po vaših željah
    • Pametno svetilko je res mogoče upravljati z vsem, kar lahko pošlje zahtevo http GET. To pomeni, da svetilka sprejema ukaze iz skoraj neomejenega števila naprav
  4. 3D tiskanje

    Ta pametna svetilka si zasluži hladen videz. In kot toliko projektov, ko potrebujete kul ovitek, vam na pomoč priskoči 3D tiskanje

3. korak: Vezje

Vezje
Vezje
Vezje
Vezje
Vezje
Vezje

PCB sem naročil pri jlcpcb.com. Celoten čas razkritja: sponzorirali so tudi ta projekt.

PCB je sestavljen iz dveh delov. Ima LED ploščo in nadzorno ploščo. PCB lahko ločite, da pozneje povežete ta dva dela s prilagodljivo žico. To je potrebno za ohranitev tanke 3D -tiskane svetilke in za nagibanje LED plošče za enakomerno širjenje svetlobe skozi prostor za luknje.

Na nadzorni plošči je mikrokrmilnik D1 skupaj s petimi MOSFET -i za zatemnitev LED in regulator napetosti, ki mikrokontrolerju zagotavlja nemotenih 5V.

LED plošča ima pet LED kanalov v treh različnih vrstah LED. Ker uporabljamo 12V vir napajanja, so LED nastavljene kot tri zaporedne LED z uporom in se nato 16 -krat vzporedno ponovijo.

Običajna bela LED običajno črpa 3,3 V. Na segmentu plošče so tri od teh LED v zaporedju, kar pomeni, da se padec napetosti združi v vezju. Tri LED diode, ki črpajo 3,3 V, pomenijo, da en segment LED črpa 9,9 V. Vezje napaja 12 V, tako da zapusti 2,1 V.

Če bi segment sestavljali samo tri LED, bi dobili več napetosti, kot se razpršijo. To ni dobro za LED in jih lahko hitro poškoduje. Zato ima vsak segment zaporedni upor z vsemi tremi LED. Ta upor je tam, da spusti preostalih 2,1 V v serijskem stičišču.

Torej, če vsak segment šteje 12 V, to pomeni, da so vsi segmenti med seboj povezani vzporedno. Ko so vezja povezana vzporedno, dobijo vsi enako napetost in tok se združi. Tok v zaporedni povezavi je vedno enak.

Navadna LED črpa tok 20 mA. To pomeni, da segment, ki je sestavljen iz treh LED in zaporedni upor, še vedno porabi 20 mA. Ko vzporedno povežemo več segmentov, dodamo tok. Če iz traku izrežete šest LED, imate dva od teh segmentov vzporedno. To pomeni, da vaše skupno vezje še vedno črpa 12 V, vendar črpa 40 mA v toku.

4. korak: Spajkanje LED

Spajkanje LED
Spajkanje LED
Spajkanje LED
Spajkanje LED
Spajkanje LED
Spajkanje LED

Če poskusim nekaj stvari, sem ugotovil, da je preprost maskirni trak najučinkovitejši in najbolj prilagodljiv za preprečevanje premikanja tiskanega vezja.

Pri delih z več zatiči, kot so 6-pinski na 5050 LED, začnem tako, da na eno od ploščic PCB položim spajkanje. Potem je samo vprašanje, da ta spajka ostane staljena s spajkalnikom, medtem ko komponento potisnete na svoje mesto s parom pincete.

Zdaj lahko druge blazinice enostavno pritrdite z nekaj spajkanja. Vendar pa za pospešitev tega dela predlagam, da poberem nekaj tekočega spajkalnega toka. Te stvari res ne morem dovolj priporočiti.

Nekaj fluksa nanesite na spajkalne ploščice, nato pa nekaj spajka stopite na konici spajkalnika. Zdaj je samo še vprašanje, da staljeno spajkanje nanesete na blazinice in vse se steče na svoje mesto. Lepo in preprosto.

Ko govorimo o uporih in drugih komponentah z dvema blazinicama, tok spajkanja ni potreben. Na eno od blazinic nanesite spajkanje in upor namestite. Zdaj samo stopite nekaj spajkanja na blazinico številka dve. Enostavno peasy.

Oglejte si peto sliko v tem koraku. Bodite pozorni na usmerjenost LED. Tople in hladne bele LED diode imajo zarezo v zgornjem desnem kotu. RGB LED diode imajo zarezo v spodnjem levem kotu. To je napaka pri načrtovanju, ker nisem našel podatkovnega lista za RGB LED, uporabljene v tem projektu. No, živi in se uči in vse to!

5. korak: Nadzorna plošča za spajkanje

Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje
Nadzorna plošča za spajkanje

Po končanem maratonu LED plošče je nadzorna plošča lahka za spajkanje. Preden sem se pomaknil na regulator napetosti, sem postavil pet MOSFET-ov in ustrezne uporne vire.

Regulator napetosti ima izbirne prostore za glajenje kondenzatorjev. Medtem ko sem jih spajal na tej sliki, sem jih na koncu odstranil, ker v resnici niso bile potrebne.

Trik pri pridobivanju tanke nadzorne plošče je v tem, da glave zatičev iztaknete od spodaj navzgor. Ko so zatiči na svojem mestu, lahko neuporabljeno dolžino odrežete s hrbtne strani skupaj s črno plastiko. Zaradi tega je spodnja stran popolnoma gladka.

Ko so vse komponente na mestu, je čas, da obe plošči združite. Pravkar sem odrezal in odstranil šest majhnih 2,5 -palčnih (7 cm) žic in povezal dve PCB.

6. korak: Nastavitev WiFi

Nastavitev WiFi
Nastavitev WiFi
Nastavitev WiFi
Nastavitev WiFi

V kodi je šest preprostih vrstic, ki jih morate spremeniti.

  1. ssid, vrstica 3

    Ime vašega usmerjevalnika. Pri pisanju preverite, ali je črka pravilna

  2. wifiPass, 4. vrstica

    Geslo vašega usmerjevalnika. Še enkrat bodite pozorni na ohišje

  3. ip, vrstica 8

    Statični IP naslov vaše pametne svetilke. V svojem omrežju sem izbral naključni naslov ip in ga poskusil pingati v ukaznem oknu. Če z naslova ni odgovora, lahko domnevate, da je na voljo

  4. prehod, linija 9

    To bo prehod na usmerjevalniku. Odprite ukazno okno in vnesite "ipconfig". Prehod in podomrežje sta na sliki obkrožena z rdečo barvo

  5. podomrežje, vrstica 10

    Tako kot pri prehodu so tudi ti podatki obkroženi na sliki za ta korak

  6. timeZone, vrstica 15

    Časovni pas, v katerem se nahajate. To spremenite, če želite z vgrajenimi funkcijami časovnika vklopiti in izklopiti luči ob določenem času. Spremenljivka je preprost plus ali minus GMT

7. korak: Koda mikrokrmilnika

Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika
Koda mikrokrmilnika

Po spremembi vseh ustreznih nastavitev v prejšnjem koraku je končno čas, da kodo naložite v Wemos D1 Mini!

Koda arduino zahteva nekaj knjižnic in odvisnosti. Najprej sledite temu priročniku iz sparkfun, če še niste naložili kode iz arduino IDE v ESP8266.

Zdaj prenesite knjižnico Time in knjižnico TimeAlarms. Razpakirajte jih in kopirajte v mapo knjižnice arduino v računalniku. Tako kot namestitev katere koli druge knjižnice arduino.

Bodite pozorni na nastavitve nalaganja na sliki na tem koraku. Izberite isto konfiguracijo, razen vrat com. To bodo katera koli vrata Com, na katera imate v računalniku priključen vaš mikrokrmilnik.

Ko je koda naložena, odprite serijski terminal na sporočilo o, upajmo, uspešni povezavi! Zdaj lahko odprete brskalnik in obiščete statični naslov IP, ki ste ga shranili v mikrokrmilnik. Čestitamo, pravkar ste zgradili lasten strežnik in na njem gosti spletno stran!

8. korak: Odprite protokol sporočil

Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil
Odprite protokol sporočil

Ko z aplikacijo upravljate pametno svetilko, bodo vsa sporočila samodejno obravnavana. Tu je seznam sporočil, ki jih svetilka sprejme, če želite zgraditi svoj daljinski upravljalnik. Za ponazoritev uporabe ukazov sem uporabil primer IP -naslova.

  • 192.168.0.200/&&R=1023G=0512B=0034C=0500W=0500

    • Rdeče luči nastavi na največjo vrednost, zelene na polovično vrednost, modre pa na 34. Hladna in topla bela komaj prižgeta
    • Pri vnosu vrednosti lahko izbirate med 0 in 1023. Vrednosti svetlobe vedno zapišite kot štiri števke v URL
  • 192.168.0.200/&&B=0800

    Nastavi modre luči na vrednost 800, hkrati pa izklopi vse ostale luči

  • 192.168.0.200/LED=OFF

    Popolnoma ugasne vse luči

  • 192.168.0.200/LED=FADE

    Začne počasi blediti med vsemi možnimi barvami RGB. Idealno za ambient

  • 192.168.0.200/NOTIFYR=1023-G=0512-B=0000

    Dvakrat utripa dano barvo, da označi dohodno obvestilo. Popolno, če želite, recimo, v računalniku ustvariti program, ki bo rdečo lučko utripal vsakič, ko prejmete novo e -poštno sporočilo

  • 192.168.0.200/DST=1

    • Prilagodi uro poletnemu in poletnemu času. Uri doda eno uro
    • /DST = 0 to uporabite za vrnitev iz poletnega časa, odstrani eno uro od ure, če je aktivni poletni čas
  • 192.168.0.200/TIMER1H=06M=30R=1023G=0512B=0034C=0000W=0000

    Shrani stanje za časovnik 1. Ta časovnik vklopi dane vrednosti RGB ob 06:30 zjutraj

  • 192.168.0.200/TIMER1H=99

    Za izklop časovnika nastavite uro časovnika na 99. Vrednosti RGB so še vedno shranjene, vendar časovnik ne vklopi luči, ko je ura nastavljena na 99

  • Svetilka ima štiri posamezne časovnike. Spremenite "TIMER1" za "TIMER2", "TIMER3" ali "TIMER4", da prilagodite enega od drugih vgrajenih časovnikov.

To so trenutno vgrajeni ukazi. Pustite komentar, če imate kakšne kul ideje za nove ukaze za vgradnjo v kodo arduino ali v oddaljeno aplikacijo!

9. korak: Daljinski upravljalnik

Daljinec
Daljinec
Daljinec
Daljinec
Daljinec
Daljinec
Daljinec
Daljinec

Kliknite tukaj, če želite prenesti aplikacijo. Nastavitev je zelo enostavna, samo vnesite IP naslov svoje pametne svetilke in izberite, ali želite upravljati samo RGB LED ali RGB + tople in hladno bele LED.

Kot je razloženo v prejšnjem koraku, zdaj veste, kateri protokol sporočil uporablja aplikacija. Pošilja zahtevo http GET z URL -ji. To pomeni, da lahko ustvarite tudi lastno vezje mikrokrmilnika in še vedno uporabljate to aplikacijo za nadzor funkcij, ki jih sami razvijate.

Ker smo res poglobljeno pogledali protokol sporočil, lahko pametno svetilko upravljate tudi z vsem, kar lahko pošlje zahtevo http GET. To pomeni kateri koli brskalnik v telefonu ali računalniku ali pametne domače naprave ali pomočnike, kot sta Alexa ali Google Assistant.

Tasker je aplikacija, ki v bistvu omogoča ustvarjanje pogojev za nadzor skoraj vsega. To sem uporabil za utripanje pametne svetilke z barvo obvestila, ko ga prejmem v telefon. Prav tako sem nastavil Tasker, da prižge luči popolnoma belo, ko se telefon po 16. uri med tednom poveže z domačim WiFi -jem. To pomeni, da se luči samodejno prižgejo, ko pridem domov iz šole. Res je super priti domov z samodejno prižganimi lučmi!

10. korak: 3D tiskanje

3D tiskanje
3D tiskanje

Samo ohišje svetilke je mogoče skoraj popolnoma natisniti brez nosilcev. Edini deli, ki resnično potrebujejo podporo, so kljukice, namenjene parjenju s tiskano vezje. Zato sem stl dal na voljo tako z drobno podporno strukturo kot brez nje samo za te kljukice. Prednost uporabe te podpore po meri je, da je tiskanje veliko hitrejše! Podporo za tiskanje dobimo le na delih, ki jih resnično potrebujejo.

Datoteke.stl lahko prenesete tukaj

11. korak: Združite vse skupaj

Prinesi vse skupaj
Prinesi vse skupaj
Prinesi vse skupaj
Prinesi vse skupaj
Prinesi vse skupaj
Prinesi vse skupaj

Po 3D tiskanju začnite tako, da odstranite podporo za tiskanje. Napajalni kabli gredo v ločene kanale in so povezani skupaj. Ta vozel bo ustvaril razbremenitev napetosti in preprečil, da bi se kabli strgali s tiskanega vezja. Napajajte napajalne kable na hrbtni strani tiskanega vezja in se prepričajte, da imate pravilno polariteto!

Nadzorno tiskano vezje je nato pritrjeno s kosom traku, da ostane poravnano znotraj ohišja. LED -tiskano vezje lahko preprosto postavite na mesto, kjer se samostojno nasloni na ohišje.

12. korak: obešanje svetilke

Viseča svetilka
Viseča svetilka
Viseča svetilka
Viseča svetilka
Viseča svetilka
Viseča svetilka

Obstaja veliko možnosti za obešanje te svetilke na steno. Ker bi lahko kodo nenehno posodabljal, da bi izboljšal svetilko, sem si želel način, da jo občasno odstranim. Lahko uporabite vroče lepilo, vendar priporočam dvostranski trak. Najbolje je, da uporabite debel in penast dvostranski trak, saj najbolje drži svetilko ob teksturirani steni.

13. korak: Končano

Dokončano
Dokončano
Dokončano
Dokončano
Dokončano
Dokončano

Če je svetilka na steni in je pripravljena sprejeti ukaze, to pomeni, da ste končali!

LED plošča je nagnjena tako, da enakomerno razprši svetlobo v prostoru. To je lep dodatek k vsakemu delovnemu prostoru, sposobnost integracije z avtomatizacijo doma pa je velik plus. Zelo mi je všeč možnost nastavljanja barv RGB in prilagajanje ravnovesja beline med hladno in toplo svetlobo. Izgleda elegantno in je v veliko pomoč pri nastavitvi zunanjih ali delovnih luči, ki ustrezajo trenutnim potrebam po razsvetljavi.

Čestitamo, zdaj ste naredili velik preskok v svet interneta stvari in avtomatizacije doma!