Sisällysluettelo:

MQTT Mood Lights ESP32: 4 vaihetta (kuvilla)
MQTT Mood Lights ESP32: 4 vaihetta (kuvilla)

Video: MQTT Mood Lights ESP32: 4 vaihetta (kuvilla)

Video: MQTT Mood Lights ESP32: 4 vaihetta (kuvilla)
Video: How to Easily Control Addressable LEDs with an ESP32 or ESP8266 | WLED Project 2024, Marraskuu
Anonim
MQTT Mood Lights ESP32: lla
MQTT Mood Lights ESP32: lla

Olin jo jonkin aikaa kiusannut hypätä LED -vaunun päälle, joten juoksin ulos ja otin LED -nauhan leikkimään. Päädyin tekemään nämä tunnelmavalot. Niitä voidaan ohjata MQTT: llä, mikä mahdollistaa kaikenlaisten älykkyyden lisäämisen.

Tämä on hyvä viikonloppuprojekti, jos sinulla ei ole mitään muuta meneillään ja haluat saada kätesi likaiseksi tekemään jotain.

Huomaa, että tämän ohjeen tarkoitus on dokumentoida projektini ja jakaa ideoita muiden kanssa, eikä välttämättä tarjota vankkoja ohjeita ja menetelmiä. Näin sanottua, lue!

Tarvikkeet

Elektroniikka:

  • 1x ESP32 -kehityskortti
  • 1x 0,96 "I2C OLED -näyttö
  • 1x summeri
  • 1x tynnyrin liitin
  • 1x 12V virtalähde (virta riippuu nauhan pituudesta)
  • 1x LM2596 buck -muunnin
  • 1x tavallisen anodin RGB-LED-nauha
  • 3x IRFZ44N MOSFET
  • 3x BC547 -transistorit
  • 3x 10kΩ vastukset
  • 4x 100Ω vastukset
  • 1x prototyyppikortti
  • 4x ruuviliittimet
  • Miesten ja naisten otsikot
  • Lanka (käytin yksisäikeistä)

Muut laitteet ja työkalut:

  • Haluttu materiaali kotelolle (käytin MDF -levyä)
  • Tasainen, johtava materiaali kosketuskoskettimille (käytin ohutta alumiinilevyä)
  • Sahat, porat, hiekkapaperi jne.
  • Juotosrauta ja ystävät
  • Kuuma liima

Suosittelen vahvasti, ettet käytä ESP32-laitetta, jossa on sisäänrakennettu OLED-näyttö, koska on hyvin vaikeaa tehdä hyvin kohdistettu katkaisu kotelollesi.

Vaihe 1: Elektroniikka

Elektroniikka
Elektroniikka
Elektroniikka
Elektroniikka

Liitteenä oleva kaavio näyttää kaikki tarvittavat liitännät kosketustuloja lukuun ottamatta. Siellä on myös suhteellisen epämääräinen leipälevykaavio, joka näyttää yhden MOSFETin kytkennän, jos kaavio on riittämätön.

Virta

LM2596 -buck -muunnin alentaa 12 V: n virransyötöstä 5 V: iin ESP: n VIN -numeroa varten. Varmista, että virtalähteesi on oikein mitoitettu käyttämäsi LED -nauhan pituuden mukaan. 2 metrin pituinen nauhani kuluttaa hieman yli 2 ampeeria.

Nastat ja oheislaitteet

Neljä kosketustappia käytetään hyvin kosketustuloihin. ESP32 -korttini mukana tuli OLED -näyttö, jonka I2C -nastat oli kytketty kiinteästi. Tässä käytetään neljää PWM -nastaa, yksi kullekin värikomponentille (punainen, vihreä ja sininen) ja yksi summerille.

MOSFET -mutkat

MOSFETit valittiin käsittelemään PWM: n ja suhteellisen korkean virran nopeita kytkentäaikoja. Jokaista värikomponenttia varten on yksi MOSFET. Käytin erillisiä NPN BJT -laitteita (BC547) yhdessä vetovastusvastuksen kanssa IRFZ44N-laitteiden ohjaamiseen, koska ESP32: n 3,3 V: n digitaaliset signaalit eivät ehkä ole riittäneet MOSFET-laitteille johtamaan niin paljon virtaa kuin tarvitaan. Loogisen tason MOSFET-laitteita, kuten IRLZ44N, on olemassa, mutta sain niistä tietää vasta sen jälkeen, kun olin juottanut kaiken. Joka tapauksessa nauhani, joka vetää ~ 2A, toimii hyvin.

Juotos

Ruuviliittimiä käytetään liittämiseen LED -nauhaan ja naarasliittimiä ESP32: n liittämiseen, jos haluaisin vaihtaa kummankin ilman juottamista. Juotos kesti noin kaksi tuntia ja oli hyvin suoraviivaista. Annoin myös LED -nauhalleni pidempiä johtoja.

Miksi valitsin ESP32: n

Siinä on WiFi ja Bluetooth (vaikka olen käyttänyt vain WiFi: tä tällä hetkellä), ja minulla oli yksi, joka oli kutinaa käyttää. Kosketustulot olivat myös hyödyllisiä ohjaimen käyttöliittymässä, koska ne tarvitsevat vain yhden johdon, joka menee yhteystietoon. Jos haluat, ESP32 voidaan kuitenkin helposti korvata mikro -ohjaimella, kuten ESP8266.

Vaihe 2: Koodi

Käytin Arduino -työkalusarjaa (oikeastaan Arduino -laajennusta VS -koodille:)) tämän ohjelmoimiseksi. Tämän kaltaisia hienoja opetusohjelmia ESP32: n ja Arduino IDE: n käytön aloittamisesta, jos et ole jo tehnyt niin.

Käytettävissä on neljä eri tilaa: staattinen väri, satunnainen väri, punainen hälytys ja sininen hälytys. Neljä kosketustuloa on ylös, alas, seuraava ja punainen hälytys. Kosketus käyttää keskeytyksiä.

Lisäsin MQTT: n myös töihin, jotta voisin hallita sitä WiFi: n kautta. Yritän saada käsityksen web-sovelluksen kolmesta (HTML, CSS, JS), joten suunnittelin Star Trek -aiheisen (mutta melko ruman) verkkosivun, joka kommunikoi MQTT-välittäjän kanssa mielialan valojen hallitsemiseksi.

Kaikki koodini löytyvät liitteenä sekä pikaopasarkki, jonka tiedostonimen haluat ehkä muuttaa merkinnän tekemiseksi. Siirrä kaikki tiedostot kansioon, jonka nimi on "ESP32MQTTMoodLighting", ennen kuin avaat ne Arduinolla.

Huomaa, että koodini toimii, mutta ei todennäköisesti suurin. Mutta sillä ei pitäisi olla väliä, koska aiot kirjoittaa joka tapauksessa oman, eikö?:)

Vaihe 3: Kotelo ja kokoaminen

Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano
Kotelo ja kokoonpano

Lukituksen aikana ainoa materiaali, jonka sain käsiini, oli 5 mm: n MDF -levy. Tein suuret leikkaukset tavallisella sahalla ja annoin kaikelle hyvää hiekkaa. Kaksinkertainen emalimaalikerros päättyi päävalmisteluun.

Takapaneeli

Halusin laatikon olevan helposti avattava, joten asensin kaiken elektroniikkani takapaneeliin neljällä M2 -piirilevyllä. Perfboardini oli jo porattu M2 -reikiin. Väliseinäni alareunassa oli pieniä kierteitä, jotka halusin kiinnittää MDF -levyyn. Mutta minulla ei ollut M2 -poranterää. Joten merkitsemällä kunkin reiän sijainnin käytin pientä litteää ruuvimeisseliä manuaalisesti reikien poistoon. Raaka mutta tehokas. Reikien halkaisijat olivat vain hieman pienempiä kuin pysäytyksen kierteitetyn osan halkaisijat. Käänsin pysäytyksiä sisään ja ulos reikistä muutaman kerran, mikä laajeni ja melkein kierteitti ne.

Lopulta pysähdykset istuivat tukevasti reikiinsä ja pitivät laudan paikallaan. Koska MDF -levyni oli hyvin paksu, mikään ei näkynyt toiselle puolelle.

Porasin reiän virtaliittimelle ja tein loven LED -nauhajohtimien läpi, aivan ruuviliittimieni alapuolelle.

Etupaneeli

OLED -näytön katkaisu

Aloitin OLED -leikkauksen muutamalla käynnistysreiällä ja arkistoin ne sopivan kokoisiksi. Se päätyi hyvin hämmentävään ja väärään suuntaan. Mittausten kaksinkertaisella tarkistamisella ei ehkä ollut osuutta asiaan, mutta säästät itseltäsi ongelmia, jos et käytä kehityskorttia, jossa on sisäänrakennettu OLED. On paljon helpompaa vain asentaa näyttö reikään.

Liitin

Muotoilin liittimen joistakin mies- ja naarasotsikoista. Toinen pää on kiinnitetty johtoihin, jotka on kytketty etupaneelin kosketuskoskettimiin, ja toisella puolella johdot kulkevat ESP: n kosketustuloihin. Tämä johtui siitä, että etupaneeli voidaan tarvittaessa irrottaa kokonaan takaa häiritsemättä juotosliitoksia. Jos asennat jotain muuta etupaneeliin, saatat haluta tehdä siihen myös liittimen.

Kosketuslevyt

Kosketinkoskettimet valmistettiin alumiinilevystä. Leikkasin sen saadakseni tarvittavat neljä tyynyä ja varmistin, ettei niissä ollut rosoisia reunoja. Porasin sitten etupaneeliin reikiä, jotka olivat tarpeeksi suuria langalle. Jotta juotos tarttuisi tyynyihin, hieroin pienen osan toiselta puolelta hiekkapaperilla hapettuneen kerroksen poistamiseksi ja pyyhin sen sitten nopeasti pyyhkimään hiukkaset. Ajoin jokaisen langan vastaavan reiän läpi etupaneelissa, juotin jokaisen sen tyynyyn. Varmista, että juotos ei aiheuta liian suurta pullistumaa taakse, koska tämä ei anna tyynyn istua tasossa paneelin kanssa.

Lisää lopuksi kuumaa liimaa jokaisen tyynyn takaosaan ja työnnä ne etupaneeliin. Jos lisäät liikaa, tyynyt istuvat ylös paneelista. Puhdista ylimääräinen liima, joka on mahdollisesti työnnetty pois tyynyjen alta.

Loput

Sivupaneelit ovat melko yksinkertaisia. Nopea pääsy reikään ruuviliittimiin oli enemmän vaivaa kuin se oli sen arvoista. Liimasin sivupaneelit kuumasti etupaneeliin.

Tarranauha kahdella reunalla pitää etuosan takapaneelissa. Raot mahdollistavat summerin äänen poistumisen. Jos teet parempaa työtä kuin minä, sinun ei pitäisi päätyä johonkin, joka näyttää 5-vuotiaan esikoululaiselta käsityöltä:)

LED -nauhallani oli tahmea selkä (olen varma, että myös sinun). Asensin omani niin, että valo leviää seinältä.

Vaihe 4: Liitä se

Liitä se!
Liitä se!

Sinulla pitäisi nyt olla täydellinen MQTT-ohjattu tunnelmavalo. Olen asentanut omani työpöydälleni, jossa se lisää väriä toisinaan yksitoikkoiseen työhön. Yö on ihanteellinen aika tehdä vaikutuksen ihmisiin.

Toivottavasti pidit tämän Instructable -ohjelman lukemisesta ja sait muutamia ideoita omiin projekteihisi. Kuten aiemmin mainitsin, olen aloittelija, ja tämä on ensimmäinen Instructable. Otan mielelläni vastaan vinkkejä ja kommentteja.

Suositeltava: