Sadržaj:

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

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

Video: DIY IoT lampa za kućnu automatizaciju -- ESP8266 Vodič: 13 koraka (sa slikama)
Video: Как сделать 2-канальное реле Wi-Fi ESP8266 ESP-01 | ESP-01 Домашняя автоматизация | УдаленныйXY 2024, Juli
Anonim
Image
Image
DIY IoT lampa za kućnu automatizaciju || ESP8266 Vodič
DIY IoT lampa za kućnu automatizaciju || ESP8266 Vodič

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

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

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

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

Hajde da počnemo!

[Reproduciraj video]

Korak 1: Dijelovi i alati

Dijelovi i alati
Dijelovi i alati

Delovi

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

    MOSFET -ovi

  • Linearni regulator napona, 5V
  • PCB

    Preuzmite gerber datoteke u koraku da biste napravili vlastite PCB -ove

  • Napajanje 12V 2A

Alati

  • Lemilica
    • Lim za lemljenje
    • Tekući fluks za lemljenje
  • Samoljepljiva traka
  • Dvostrana traka
  • 3D štampač
  • Strojevi za skidanje žice

Korak 2: Plan

Plan
Plan

Kompletan projekat sastoji se od četiri glavna dijela:

  1. Krug

    Krug je napravljen 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 povezan sa WiFi mrežom. 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 projekat kako bih vam olakšao kontrolu lampe po vašem ukusu
    • Pametnom lampom se zaista može upravljati bilo čime što može poslati http GET zahtjev. To znači da lampa prima naredbe s gotovo neograničenog niza uređaja
  4. 3D štampanje

    Ova pametna lampa zaslužuje zgodno kućište. Kao što je za toliko projekata bilo potrebno cool kućište, 3D štampanje dolazi u pomoć

Korak 3: Krug

Krug
Krug
Krug
Krug
Krug
Krug

Naručio sam svoje štampane ploče sa jlcpcb.com. Potpuno vrijeme objavljivanja: i oni su sponzorirali ovaj projekt.

PCB se sastoji od dva dijela. Ima LED ploču i kontrolnu ploču. PCB se može odvojiti kako bi se kasnije ova dva dijela spojila fleksibilnom žicom. Ovo je potrebno kako bi 3D štampana lampa 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 zatamnjivanje 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 skupljen u krugu. Tri LED diode koje vuku 3,3 V svaka znači da jedan segment LED dioda vuče 9,9 V. Krug se napaja od 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 seriji 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. Kada su krugovi paralelno spojeni, svi dobivaju isti napon i struja se agregira. Struja u serijskoj vezi je uvijek ista.

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

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 najefikasnija 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 stvar 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 lemljenjem. Međutim, kako bih ubrzao ovaj posao, predlažem da pokupite malo fluida za lemljenje. Zaista ne mogu dovoljno preporučiti ove stvari.

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

Što se tiče otpornika i drugih komponenti sa dvije podloge, nikakav tok lemljenja zaista nije potreban. 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 pažnju na orijentaciju LED dioda. Tople i hladne bijele LED diode imaju urez usmjeren u gornjem desnom kutu. RGB LED diode imaju 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, ž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 završetka maratona LED ploče, upravljačka ploča je laka za lemljenje. 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 nisu bili zaista potrebni.

Trik u dobijanju tanke kontrolne 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. Ovo č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 dvije PCB -e.

Korak 6: Postavljanje WiFi mreže

WiFi Setup
WiFi Setup
WiFi Setup
WiFi Setup

U kodu postoji šest jednostavnih linija koje morate promijeniti.

  1. ssid, red 3

    Ime vašeg rutera. Kad ovo pišete, provjerite jesu li slova ispravna

  2. wifiPass, linija 4

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

  3. ip, red 8

    Statička IP adresa vaše pametne lampe. Odabrao sam nasumičnu IP adresu na svojoj mreži i pokušao je pingati u komandnom 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 komandni prozor i upišite "ipconfig". Gateway i podmreža su zaokruženi crvenom bojom na slici

  5. podmreža, red 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 koristiti ugrađene funkcije tajmera za paljenje i gašenje svjetla u određeno vrijeme. Varijabla je jednostavan pluss ili minus GMT

Korak 7: Kod mikrokontrolera

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

Nakon promjene svih relevantnih postavki u prethodnom koraku, konačno je vrijeme za postavljanje koda na Wemos D1 Mini!

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

Sada preuzmite biblioteku Time i biblioteku TimeAlarms. Raspakujte ih i kopirajte u fasciklu arduino biblioteke na svom računaru. Baš kao i instaliranje bilo koje druge arduino biblioteke.

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

Kada 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 server 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

Kada upravljate pametnom lampom pomoću aplikacije, sve poruke će se automatski obrađivati za vas. Evo popisa poruka koje lampa prihvata, 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čeni
    • 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 nestajati između svih mogućih RGB boja. Savršeno za ambijent

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

    Trepće zadatu boju dva puta kako bi označio dolazno obavještenje. Savršeno ako želite, recimo, stvoriti program na računaru 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 koristi 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 tajmer 1. Ovaj tajmer će uključiti zadane RGB vrijednosti u 06:30 ujutro

  • 192.168.0.200/TIMER1H=99

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

  • Lampa ima četiri pojedinačna tajmera. 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 lampe 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 kontrolu funkcija koje sami razvijate.

Budući da smo zaista duboko zašli u protokol za poruke, pametnom lampom možete upravljati i bilo čime što može poslati http GET zahtjev. To znači bilo koji preglednik na telefonu ili računaru ili pametne kućne uređaje ili pomoćnike poput Alexa ili Google pomoćnika.

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 kada je primim na telefon. Postavio sam i tasker za paljenje potpuno bijele svjetlosti 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 štampanje

3D štampanje
3D štampanje

Samo kućište lampe može se gotovo potpuno ispisati bez nosača. Jedini dijelovi kojima je zaista potrebna podrška su klinovi namijenjeni spajanju 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 štampanje dobijamo samo na dijelovima kojima je to zaista potrebno.

. Stl datoteke možete preuzeti ovdje

Korak 11: Okupite sve zajedno

Donesite sve zajedno
Donesite sve zajedno
Donesite sve zajedno
Donesite sve zajedno
Donesite sve zajedno
Donesite sve zajedno

Nakon 3D štampanja počnite uklanjanjem podrške za štampanje. Kablovi za napajanje idu u odvojene kanale i povezani su zajedno. Ovaj čvor će stvoriti rasterećenje od naprezanja sprječavajući kidanje kabela s PCB -a. Lemite kablove za napajanje na stražnju stranu tiskane ploče i pobrinite se da ispravno postavite polaritet!

Kontrolna ploča se zatim pričvršćuje komadom trake kako bi ostala u ravnini unutar kućišta. LED štampana ploča može se jednostavno postaviti na mjesto gdje sama leži uz kućište.

Korak 12: Vješanje lampe

Vješanje lampe
Vješanje lampe
Vješanje lampe
Vješanje lampe
Vješanje lampe
Vješanje lampe

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, želio 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 pjenušavu dvostranu traku jer najbolje drži svjetiljku uz teksturni zid.

Korak 13: Završeno

Finished
Finished
Finished
Finished
Finished
Finished

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

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

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