Sadržaj:

DIY IoT svjetiljka za kućnu automatizaciju -- ESP8266 Vodič: 13 koraka (sa slikama)
DIY IoT svjetiljka za kućnu automatizaciju -- ESP8266 Vodič: 13 koraka (sa slikama)

Video: DIY IoT svjetiljka za kućnu automatizaciju -- ESP8266 Vodič: 13 koraka (sa slikama)

Video: DIY IoT svjetiljka za kućnu automatizaciju -- ESP8266 Vodič: 13 koraka (sa slikama)
Video: Lesson 29: Car-7 Controlling SunFounder Smart Car using Remote Controller | Robojax 2024, Srpanj
Anonim
Image
Image
DIY IoT svjetiljka za kućnu automatizaciju || ESP8266 Vodič
DIY IoT svjetiljka za kućnu automatizaciju || ESP8266 Vodič

U ovom vodiču napravit ćemo pametnu svjetiljku povezanu na internet. Ovo će duboko ući u internet stvari i otvoriti svijet kućne automatizacije!

Svjetiljka je spojena na WiFi i napravljena je za protokol otvorenih poruka. To znači da možete odabrati bilo koji način upravljanja koji želite! Njime se može upravljati putem web preglednika, aplikacija za kućnu automatizaciju, pametnih pomoćnika poput Alexa ili Google pomoćnika i još mnogo toga!

Kao bonus, ova svjetiljka ide zajedno s aplikacijom za kontrolu projekta. Ovdje možete odabrati različite načine boja, prelaziti između RGB boja i postaviti mjerače vremena.

Svjetiljka se sastoji od LED ploče i upravljačke ploče. LED ploča koristi tri različite vrste LED dioda za ukupno pet LED kanala! Ovo je RGB zajedno s toplom i hladno bijelom bojom. Budući da se svi ti kanali mogu postaviti pojedinačno, imate ukupno 112,3 kombinacije peta!

Započnimo!

[Reproduciraj video]

Korak 1: Dijelovi i alati

Dijelovi i alati
Dijelovi i alati

Dijelovi

  • Wemos D1 Mini
  • 15 x tople bijele 5050 LED dioda
  • 15 x hladno bijelih 5050 LED dioda
  • 18 x RGB 5050 LED dioda
  • 6 x 300 ohm 1206 otpornika
  • 42 x 150 ohm 1206 otpornika
  • 5 x 1 k ohmski otpornici
  • 5 x NTR4501NT1G

    MOSFET -ovi

  • Linearni regulator napona, 5V
  • PCB

    Preuzmite gerber datoteke u koraku sklopa da biste izradili vlastite PCB -ove

  • Napajanje 12V 2A

Alati

  • Lemilica
    • Lim za lemljenje
    • Tekući tok za lemljenje
  • Samoljepljiva traka
  • Dvostrana traka
  • 3D pisač
  • Skidači žica

Korak 2: Plan

Plan
Plan

Cijeli projekt sastoji se od četiri glavna dijela:

  1. Krug

    Krug je izrađen na PCB -u. Završeni krug će se sastojati od više od 100 pojedinačnih komponenti. Veliko je olakšanje ne spojiti sve to ručno na ploču

  2. Arduino kod

    Koristim Wemos D1 Mini koji koristi ESP8266 kao mikrokontroler spojen na WiFi. Kod će pokrenuti poslužitelj na D1. Kada posjetite adresu ovog poslužitelja, D1 će to protumačiti kao različite naredbe. Mikrokontroler zatim djeluje na ovu naredbu kako bi svjetla postavio na odgovarajući način

  3. Daljinski upravljač

    • Napravio sam aplikaciju samo za ovaj projekt kako bih maksimalno olakšao kontrolu svjetiljke po vašem ukusu
    • Pametnom lampom doista se može upravljati bilo čime što može poslati http GET zahtjev. To znači da svjetiljka prima naredbe s gotovo neograničenog niza uređaja
  4. 3D ispis

    Ova pametna svjetiljka zaslužuje kućište cool izgleda. A kao što je za toliko projekata bilo potrebno vam je super kućište, 3D ispis dolazi u pomoć

Korak 3: Krug

Krug
Krug
Krug
Krug
Krug
Krug

Naručio sam svoje tiskane ploče s jlcpcb.com. Potpuno vrijeme objavljivanja: također su sponzorirali ovaj projekt.

PCB se sastoji od dva dijela. Ima LED ploču i upravljačku ploču. PCB se može odvojiti kako bi se kasnije ova dva dijela spojila fleksibilnom žicom. To je potrebno kako bi 3D ispisana svjetiljka ostala tanka, a LED ploču nagnula kako bi se svjetlo ravnomjerno širilo kroz prostoriju s rupama.

Na upravljačkoj ploči nalazi se mikrokontroler D1 zajedno s pet MOSFET -ova za prigušivanje LED dioda i regulator napona koji daje mikrokontroleru glatkih 5V.

LED ploča ima pet LED kanala u tri različite vrste LED dioda. Budući da koristimo izvor napajanja od 12 V, LED diode su konfigurirane kao tri LED serije u nizu s otpornikom, a zatim se ponavljaju 16 puta paralelno.

Obična bijela LED dioda obično napaja 3,3 V. Na segmentu ploče, tri od ovih LED dioda su u nizu, što znači da je pad napona u krugu skupljen. Tri LED diode koje vuku 3,3 V svaka znači da jedan segment LED dioda vuče 9,9 V. Krug se napaja s 12 V tako da napušta 2,1 V.

Kad bi se segment sastojao samo od tri LED diode, dobili bi veći napon nego što bi se raspršili. To nije dobro za LED diode i može ih brzo oštetiti. Zbog toga svaki segment ima i otpornik u nizu sa sve tri LED diode. Ovaj otpornik je tu da ispusti preostalih 2,1 V u serijskom spoju.

Dakle, ako svaki segment ima 12 V, to znači da su svaki od segmenata međusobno povezani paralelno. Kad su krugovi paralelno spojeni, svi dobivaju isti napon i struja se zbraja. Struja u serijskoj vezi uvijek je ista.

Uobičajena LED dioda napaja 20 mA struje. To znači da segment, koji ima tri LED diode i otpornik u seriji i dalje će crpiti 20 mA. Kad paralelno povežemo nekoliko segmenata, zbrajamo struju. Ako izrežete šest LED dioda s trake, imate dva ova segmenta paralelno. Što znači da vaš ukupni krug i dalje crpi 12 V, ali troši 40 mA u struji.

Korak 4: Lemljenje LED dioda

Lemljenje LED dioda
Lemljenje LED dioda
Lemljenje LED dioda
Lemljenje LED dioda
Lemljenje LED dioda
Lemljenje LED dioda

Pokušavajući nekoliko stvari, otkrio sam da je jednostavna maskirna traka najučinkovitija i najfleksibilnija za sprječavanje pomicanja PCB -a.

Za dijelove s više pinova, poput 6-pinskih na 5050 LED, započinjem postavljanjem lemljenja na jedan od PCB jastučića. Tada je samo važno zadržati ovaj lem otopljen s lemilicom, a komponentu gurnuti na svoje mjesto pomoću pincete.

Sada se drugi jastučići mogu lako pričvrstiti nekim lemom. Međutim, kako bih ubrzao ovaj posao, predlažem da pokupite malo tekućeg lemnog fluida. Stvarno ne mogu dovoljno preporučiti ove stvari.

Nanesite dio fluksa na lemilice, a zatim otopite malo lema na vrhu lemilice. Sada je samo potrebno staviti rastopljeni lem na jastučiće i sve teče na svoje mjesto. Lijepo i jednostavno.

Što se tiče otpornika i drugih komponenti s dvije podloge, doista nije potreban tok lemljenja. Nanesite lem na jedan od jastučića i postavite otpornik na mjesto. Sada samo otopite malo lema na podlošku broj dva. Lako peasy.

Pogledajte petu sliku u ovom koraku. Obratite pozornost na orijentaciju LED dioda. Tople i hladne bijele LED diode imaju zarez usmjeren u gornjem desnom kutu. RGB LED diode imaju svoj urez u donjem lijevom kutu. Ovo je greška u dizajnu s moje strane, jer nisam mogao pronaći podatkovni list za RGB LED diode korištene u ovom projektu. Oh, pa živi i uči i sve to!

Korak 5: Kontrolna ploča za lemljenje

Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje
Kontrolna ploča za lemljenje

Nakon što je završio maraton LED ploče, upravljačka ploča lako se lemi. Spustio sam pet MOSFET-ova i odgovarajuće otpornike gejt-izvora, prije nego što sam prešao na regulator napona.

Regulator napona ima opcionalne prostore za izglađivanje kondenzatora. Dok sam ih lemio na ovoj slici, na kraju sam ih uklonio jer zapravo nisu bili potrebni.

Trik za dobivanje tanke upravljačke ploče je u postavljanju zaglavlja iglica koje izviruju odozgo kroz dno. Nakon što su igle postavljene, neiskorištena duljina može se odrezati sa stražnje strane zajedno s crnom plastikom. To čini donju stranu potpuno glatkom.

Sa svim komponentama na mjestu je vrijeme da spojite dvije ploče. Upravo sam odrezao i skinuo šest malih žica od 2,5 inča (7 cm) i spojio dva PCB -a.

Korak 6: Postavljanje WiFi -a

WiFi postavljanje
WiFi postavljanje
WiFi postavljanje
WiFi postavljanje

U kodu postoji šest jednostavnih redaka koje morate promijeniti.

  1. ssid, redak 3

    Ime vašeg usmjerivača. Kad ovo pišete, provjerite jesu li slova ispravna

  2. wifiPass, linija 4

    Lozinka vašeg usmjerivača. Opet, obratite pozornost na kućište

  3. ip, redak 8

    Statička IP adresa vaše pametne svjetiljke. Odabrao sam nasumičnu IP adresu na svojoj mreži i pokušao je pingati u naredbenom prozoru. Ako nema odgovora s adrese, možete pretpostaviti da je dostupna

  4. gateway, linija 9

    Ovo će biti pristupnik na vašem usmjerivaču. Otvorite naredbeni prozor i upišite "ipconfig". Pristupnik i podmreža zaokruženi su crvenom bojom na slici

  5. podmreža, redak 10

    Kao i kod pristupnika, ove informacije su zaokružene na slici za ovaj korak

  6. vremenska zona, red 15

    Vremenska zona u kojoj se nalazite. Promijenite ovo ako želite pomoću ugrađenih mjerača vremena uključiti i isključiti svjetla u određeno vrijeme. Varijabla je jednostavan pluss ili minus GMT

Korak 7: Kôd mikrokontrolera

Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera
Kod mikrokontrolera

Nakon što ste promijenili sve relevantne postavke u prethodnom koraku, konačno je vrijeme za učitavanje koda na Wemos D1 Mini!

Arduino kôd zahtijeva nekoliko knjižnica i ovisnosti. Najprije slijedite ovaj vodič iz sparkfuna ako nikada niste prenijeli kôd iz arduino IDE -a na ESP8266.

Sada preuzmite knjižnicu Time i knjižnicu TimeAlarms. Raspakirajte ih i kopirajte u mapu arduino knjižnice na svom računalu. Baš kao i instaliranje bilo koje druge arduino knjižnice.

Obratite pažnju na postavke prijenosa na slici u ovom koraku. Odaberite istu konfiguraciju, osim com porta. To će biti bilo koji com port na koji imate priključen mikrokontroler na računalu.

Kad se kôd učita, otvorite serijski terminal na poruku o, nadamo se, uspješnoj vezi! Sada možete otvoriti preglednik i posjetiti statičku IP adresu koju ste spremili u mikrokontroler. Čestitamo, upravo ste izgradili vlastiti poslužitelj i na njemu se nalazi web stranica!

Korak 8: Otvorite protokol poruka

Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka
Otvorite protokol poruka

Kad s aplikacijom upravljate pametnom svjetiljkom, sve će se poruke automatski obrađivati za vas. Ovdje je popis poruka koje lampica prihvaća ako želite izgraditi vlastiti daljinski upravljač. Koristio sam primjer IP adrese da ilustriram kako se koriste naredbe.

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

    • Crvena svjetla postavlja na maksimalnu vrijednost, zelena svjetla na pola vrijednosti, a plava na 34. Hladna i topla bijela jedva da su uključena
    • Prilikom unosa vrijednosti možete birati između 0 i 1023. Uvijek unesite vrijednosti svjetlosti kao četiri znamenke u URL
  • 192.168.0.200/&&B=0800

    Postavlja plava svjetla na vrijednost 800, a istovremeno isključuje sva druga svjetla

  • 192.168.0.200/LED=OFF

    Potpuno gasi sva svjetla

  • 192.168.0.200/LED=FADE

    Počinje polako blijediti između svih mogućih RGB boja. Savršeno za ambijent

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

    Treperi zadanom bojom dva puta kako bi označio dolaznu obavijest. Savršeno ako želite, recimo, stvoriti program na računalu koji će zasvijetliti crvenom bojom kad god primite novu e -poruku

  • 192.168.0.200/DST=1

    • Podešava sat na ljetno i zimsko računanje vremena. Dodaje sat vremena
    • /DST = 0 Koristite ovo za povratak s ljetnog računanja vremena, uklanja jedan sat sa sata ako je aktivno ljetno računanje vremena
  • 192.168.0.200/TIMER1H=06M=30R=1023G=0512B=0034C=0000W=0000

    Sprema stanje za timer 1. Ovaj mjerač vremena će uključiti zadane RGB vrijednosti u 06:30 ujutro

  • 192.168.0.200/TIMER1H=99

    Postavite sat mjerača na 99 da biste deaktivirali mjerač vremena. RGB vrijednosti su i dalje pohranjene, ali mjerač vremena neće uključiti svjetla kada je sat postavljen na 99

  • Svjetiljka ima četiri pojedinačna mjerača vremena. Promijenite "TIMER1" za "TIMER2", "TIMER3" ili "TIMER4" da biste prilagodili jedan od drugih ugrađenih mjerača vremena.

Ovo su trenutno ugrađene naredbe. Ostavite komentar ako imate neke dobre ideje za nove naredbe za izgradnju bilo u arduino kodu ili udaljenoj aplikaciji!

Korak 9: Daljinski upravljač

Daljinski upravljač
Daljinski upravljač
Daljinski upravljač
Daljinski upravljač
Daljinski upravljač
Daljinski upravljač
Daljinski upravljač
Daljinski upravljač

Kliknite ovdje za preuzimanje aplikacije. Postavljanje je vrlo jednostavno, samo unesite IP adresu svoje pametne svjetiljke i odaberite želite li kontrolirati samo RGB LED ili RGB + tople i hladne bijele LED diode.

Kao što je objašnjeno u prethodnom koraku, sada znate koji protokol poruka aplikacija koristi. Šalje http GET zahtjev s URL -ovima. To znači da možete stvoriti i vlastiti krug mikrokontrolera, ali i dalje koristiti ovu aplikaciju za upravljanje funkcijama koje sami razvijate.

Budući da smo doista duboko zašli u protokol slanja poruka, možete kontrolirati i pametnu lampu bilo čime što može poslati http GET zahtjev. To znači bilo koji preglednik na telefonu ili računalu ili pametne kućne uređaje ili pomoćnike poput Alexa ili Google asistenta.

Tasker je aplikacija koja vam u osnovi omogućuje stvaranje uvjeta za kontrolu blizu svega. To sam upotrijebio za bljeskanje pametne lampe u boji obavijesti kad je primim na telefon. Također sam postavio tasker za paljenje svjetla potpuno bijelo, kada se telefon spoji na kućni WiFi nakon 16:00 radnim danom. To znači da se svjetla automatski pale kad dođem iz škole. Zaista je super doći kući s automatskim svjetlima!

Korak 10: 3D ispis

3D ispis
3D ispis

Samo kućište svjetiljke može se gotovo potpuno ispisati bez nosača. Jedini dijelovi koji stvarno trebaju podršku su klinovi namijenjeni za parenje s PCB -om. Zbog toga sam stl učinio dostupnim sa i bez male strukture za podršku samo za ove klinove. Prednost korištenja ove prilagođene podrške je u tome što je ispis mnogo brži! Podršku za ispis dobivamo samo na dijelovima kojima je to zaista potrebno.

Ovdje možete preuzeti.stl datoteke

Korak 11: Okupite sve zajedno

Okupite sve zajedno
Okupite sve zajedno
Okupite sve zajedno
Okupite sve zajedno
Okupite sve zajedno
Okupite sve zajedno

Nakon 3D ispisa započnite uklanjanjem podrške za ispis. Kablovi za napajanje idu u zasebne kanale i povezani su zajedno. Ovaj čvor će stvoriti rasterećenje od naprezanja i spriječiti kidanje kabela s PCB -a. Lemite kabele za napajanje na stražnju stranu PCB -a i pazite da ispravno postavite polaritet!

Kontrolna pločica se zatim pričvršćuje komadom trake kako bi se održala u ravnini unutar kućišta. LED PCB može se jednostavno postaviti na mjesto na koje se može sam nasloniti na kućište.

Korak 12: Vješanje svjetiljke

Vješanje svjetiljke
Vješanje svjetiljke
Vješanje svjetiljke
Vješanje svjetiljke
Vješanje svjetiljke
Vješanje svjetiljke

Postoji mnogo mogućnosti za vješanje ove svjetiljke na zid. Budući da bih mogao stalno ažurirati kôd kako bih poboljšao lampu, htio sam način da je s vremena na vrijeme skinem. Možete koristiti vruće ljepilo, ali preporučujem dvostranu traku. Najbolje je koristiti debelu i pjenastu dvostranu traku jer najbolje drži svjetiljku na zidu s teksturom.

Korak 13: Završeno

Završeno
Završeno
Završeno
Završeno
Završeno
Završeno

S lampom na zidu i spremnom za prihvaćanje naredbi, to znači da ste gotovi!

LED ploča je postavljena pod kutom na način da ravnomjerno raspršuje svjetlo u prostoriji. Lijep je dodatak svakom radnom prostoru, a mogućnost integracije s kućnom automatizacijom veliki je plus. Jako mi se sviđa mogućnost postavljanja RGB boja, kao i podešavanje balansa bijele između hladnog i toplog svjetla. Izgleda elegantno i velika je pomoć pri postavljanju ambijentalnog ili radnog svjetla, kako bi odgovaralo svim potrebama rasvjete koje trenutno imam.

Čestitamo, sada ste napravili veliki skok u svijet IoT -a i kućne automatizacije!