Turinys:
- Prekės
- 1 žingsnis: Elektronika
- 2 žingsnis: kodas
- 3 žingsnis: gaubtas ir surinkimas
- 4 žingsnis: prijunkite
Video: MQTT nuotaikos žibintai su ESP32: 4 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Jau kurį laiką buvau linkusi šokti į LED juostą, todėl išbėgau ir pasiėmiau LED juostelę, su kuria žaisdavau. Aš baigiau gaminti šias nuotaikos lemputes. Juos galima valdyti naudojant MQTT, todėl galima pridėti visų rūšių išmaniųjų.
Tai geras savaitgalio projektas, jei nieko daugiau nenutiksite ir norite susitepti rankas kažką gamindami.
Atminkite, kad šios instrukcijos tikslas yra dokumentuoti mano projektą ir dalytis idėjomis su kitais, o ne būtinai pateikti patikimas instrukcijas ir metodus. Tai pasakius, skaitykite toliau!
Prekės
Elektronika:
- 1x ESP32 kūrimo plokštė
- 1x 0,96 colio I2C OLED ekranas
- 1x garsinis signalas
- 1x statinės lizdas
- 1x 12V maitinimo šaltinis (srovė priklauso nuo jūsų juostos ilgio)
- 1x LM2596 kainų keitiklis
- 1x bendrojo anodo RGB LED juostelė
- 3x IRFZ44N MOSFET
- 3x BC547 tranzistoriai
- 3x 10kΩ rezistoriai
- 4x 100Ω rezistoriai
- 1x prototipų lenta
- 4x varžtai
- Vyrų ir moterų antraštės
- Viela (naudojau vienos grandinės)
Kita įranga ir įrankiai:
- Jūsų norima korpuso medžiaga (aš naudojau MDF)
- Plokščia, laidi medžiaga liečiant kontaktus (naudojau ploną aliuminio lakštą)
- Pjūklai, grąžtai, švitrinis popierius ir kt.
- Lituoklis ir draugai
- Karšti klijai
Aš primygtinai rekomenduočiau nesirinkti ESP32 su įmontuotu OLED ekranu, nes pasidaryti labai sunku savo korpusui padaryti gerai išlygintą išpjovą.
1 žingsnis: Elektronika
Pridedama schema rodo visas reikalingas jungtis, išskyrus jutiklinius įėjimus. Taip pat yra gana neaiški duonos lentos schema, kurioje parodyta, kaip prijungti vieną MOSFET, jei schema yra netinkama.
Galia
„LM2596 Buck“keitiklis sumažina 12 V maitinimo šaltinį iki 5 V ESP VIN. Įsitikinkite, kad jūsų maitinimo šaltinis yra tinkamai įvertintas pagal naudojamo LED juostos ilgį. Mano 2 metrų ilgio juostelė pritraukia šiek tiek daugiau nei 2 amperus.
Smeigtukai ir išoriniai įrenginiai
Keturi jutikliniai kaiščiai naudojami jutikliniams įvestims. Prie mano ESP32 plokštės buvo prijungtas OLED ekranas, kurio I2C kaiščiai buvo prijungti. Tam naudojami keturi PWM kaiščiai, po vieną kiekvienam spalvų komponentui (raudona, žalia ir mėlyna) ir vienas garsui.
MOSFET purvas
MOSFET buvo pasirinkti norint valdyti greitą PWM perjungimo laiką ir palyginti didelę srovę. Kiekvienam spalvų komponentui yra vienas MOSFET. Aš naudojau atskirus NPN BJT (BC547) kartu su ištraukiamuoju rezistoriumi, kad galėčiau valdyti IRFZ44N, nes 3,3 V skaitmeninių signalų iš ESP32 gali nepakakti, kad MOSFET veiktų tiek srovės, kiek reikia. Loginio lygio MOSFET, tokie kaip IRLZ44N, egzistuoja, tačiau apie juos sužinojau tik baigęs viską lituoti. Bet kuriuo atveju, mano juostelė, kuri traukia ~ 2A, veikia gerai.
Litavimas
Sraigtiniai gnybtai naudojami prijungti prie šviesos diodų juostos, o moteriškos antgaliai - prijungti ESP32, jei norėčiau pakeisti bet kurį iš jų, neatitraukiant litavimo. Litavimas užtruko apie dvi valandas ir buvo labai paprastas. Aš taip pat daviau savo LED juostai ilgesnius laidus.
Kodėl pasirinkau ESP32
Jame yra „WiFi“ir „Bluetooth“(nors šiuo metu naudojau tik „WiFi“), o aš turėjau vieną, kurį norėjau naudoti. Jutikliniai įėjimai taip pat buvo naudingi valdiklio sąsajai, nes jiems reikia tik vieno laido, einančio į kontaktą. Tačiau jei norite, ESP32 gali būti lengvai pakeistas mikrovaldikliu, tokiu kaip ESP8266.
2 žingsnis: kodas
Tam programuoti naudojau „Arduino“įrankių rinkinį (iš tikrųjų „Arduino“plėtinį VS kodui:)). Yra puikių pamokų, kaip šis, kaip pradėti naudotis ESP32 ir „Arduino IDE“, jei to dar nepadarėte.
Yra keturi skirtingi režimai: statinė spalva, atsitiktinė spalva, raudonas įspėjimas ir mėlynas įspėjimas. Yra keturi jutikliniai įėjimai, skirti aukštyn, žemyn, kitam ir raudonam įspėjimui. „Touch“naudoja pertraukas.
Prie darbų taip pat pridėjau MQTT, kad galėčiau jį valdyti per „WiFi“. Bandau pajusti žiniatinklio programos trejetuką (HTML, CSS, JS), todėl sukūriau „Star Trek“tematikos (bet gana negražią) tinklalapį, kuris bendrauja su „MQTT“brokeriu, kad valdytų nuotaikos šviesas.
Visą mano kodą galima rasti pridedamą kartu su greitos nuorodos lapu, kurio failo pavadinimą galbūt norėsite pakeisti, kad jis būtų pažymėtas. Prieš atidarydami „Arduino“, perkelkite visus failus į aplanką pavadinimu „ESP32MQTTMoodLighting“.
Atminkite, kad mano kodas veikia, bet tikriausiai nėra pats didžiausias. Bet tai neturėtų reikšti, nes vis tiek rašysite savo, tiesa?:)
3 žingsnis: gaubtas ir surinkimas
Užrakinimo metu vienintelė medžiaga, kurią galėjau patekti į rankas, buvo 5 mm MDF lakštas. Didelius pjūvius padariau įprastu metalo pjūklu ir viskam padaviau gerą smėlį. Dvigubas emalio dažų sluoksnis užbaigė pagrindinį paruošimą.
Galinis skydelis
Norėjau, kad mano dėžutė būtų lengvai atidaroma, todėl visą savo elektroniką pritvirtinau prie galinio skydelio su keturiais M2 PCB atjungimais. Mano perforatoriuje jau buvo išgręžtos M2 skylės. Mano atotrūkių apačioje buvo mažai sriegių, kuriuos ketinau pritvirtinti prie MDF. Tačiau aš neturėjau M2 grąžto. Taigi, pažymėdamas kiekvienos skylės padėtį, aš rankiniu būdu išgręžiau skylutes mažu plokščiu atsuktuvu. Žiaurus, bet efektyvus. Skylių skersmenys buvo tik šiek tiek mažesni nei sriegiuotos atramos dalies. Keletą kartų susukau atramas į skylutes ir iš jų, kurios išsiplėtė ir beveik įsriegė.
Galiausiai atsistojimai tvirtai sėdėjo savo skylėse ir laikė perforatorių vietoje. Kadangi mano MDF buvo labai storas, niekas nepasirodė kitoje pusėje.
Aš išgręžiau skylę maitinimo lizdui ir padariau angą, kad LED juostos laidai galėtų praeiti tiesiai žemiau, kur buvo mano varžtų gnybtai.
Priekinė panelė
OLED ekrano išjungimas
Aš pradėjau iškirpti OLED su keliomis starterio skylėmis ir padaviau jas pagal dydį. Galų gale tai buvo labai keista ir nesuderinta. Galbūt tai turėjo įtakos ne dvigubai tikrinami matavimai, tačiau sutaupykite šiek tiek problemų, nenaudodami kūrimo plokštės su įmontuotu OLED. Daug lengviau tiesiog pritvirtinti ekraną prie savo skylės.
Jungtis
Aš sukūriau jungtį iš kai kurių vyrų ir moterų antraščių. Vienas galas pritvirtintas prie laidų, prijungtų prie jutiklinių kontaktų priekiniame skydelyje, o kitoje pusėje - laidai, einantys į ESP jutiklinius įėjimus. Taip buvo padaryta, kad prireikus priekinį skydelį būtų galima visiškai nuimti nuo nugaros, netrikdant litavimo siūlių. Jei prie priekinio skydelio pritvirtinsite ką nors kita, galbūt norėsite sukurti ir jungtį.
Jutiklinės pagalvėlės
Jutikliniai kontaktai buvo pagaminti iš kai kurių aliuminio lakštų. Aš jį supjaustiau, kad gaučiau keturias reikalingas trinkeles, ir patikrinau, ar nėra nelygių kraštų. Tada aš išgręžiau skyles į priekinį skydelį, pakankamai didelį vielai. Norėdami, kad lydmetalis priliptų prie trinkelių, nedidelę vienos pusės dalį nubraukiau švitriniu popieriumi, kad pašalintumėte oksiduotą sluoksnį, ir tada greitai nuvalykite, kad pašalintumėte daleles. Vykdydamas kiekvieną laidą per atitinkamą skylę priekiniame skydelyje, aš lituodavau kiekvieną prie jo trinkelės. Įsitikinkite, kad jūsų lydmetalis nesukuria per didelio išsipūtimo ant nugaros, nes tai neleis trinkelėms prisiglausti prie plokštės.
Galiausiai į kiekvieną pagalvėlės galą įpilkite karštų klijų ir stumkite juos ant priekinio skydelio. Pridėjus per daug, pagalvėlės bus pakeltos nuo skydo. Nuvalykite klijų perteklių, kuris galėjo būti išstumtas iš po pagalvėlių.
Likusieji
Šoninės plokštės yra gana paprastos. Greitai pasiekiama skylė prie varžtų gnybtų sukėlė daugiau problemų nei buvo verta. Šonines plokštes karštai priklijavau prie priekinio skydelio.
Velcro ant dviejų kraštų laiko priekinę dalį prie galinio skydelio. Tarpai leidžia skambėti garsiakalbio garsui. Jei atliksite geresnį darbą nei aš, neturėtumėte baigti to, kas atrodo kaip 5 metų amžiaus ikimokyklinis amatas:)
Mano LED juostelė turėjo lipnią nugarą (esu tikra, kad ir jūsų). Aš sumontavau savo taip, kad šviesa išsisklaidytų nuo sienos.
4 žingsnis: prijunkite
Dabar turėtumėte turėti pilną MQTT valdomą nuotaikos lemputę. Aš pritvirtinau savo stalą prie savo stalo, kur jis kartais suteikia monotoniškam darbui spalvų purslų. Naktis yra idealus laikas sužavėti žmones.
Tikiuosi, kad jums patiko skaityti šią instrukciją ir gavote keletą idėjų savo projektams. Kaip jau minėjau anksčiau, esu pradedantysis, ir tai yra mano pirmasis „Instructable“. Būčiau dėkingas už bet kokius patarimus ir komentarus.
Rekomenduojamas:
IOT nuotaikos lempa: 8 žingsniai (su nuotraukomis)
„IOT Mood Lamp“: „IoT Mood“lempa, pagaminta naudojant mazgą MCU (ESP8266), RGB šviesos diodus ir stiklainį. Lempos spalvas galima pakeisti naudojant „Blynk App“. Aš pasirinkau Tony Starkso memorialinę statulą, kurią atspausdinau 3D ir įdėjau į šią lempą. Galite pasiimti bet kurią paruoštą statulą arba
Šiuolaikinė RGB nuotaikos lempa: 7 žingsniai (su nuotraukomis)
Šiuolaikinė RGB nuotaikos lempa: norite pridėti šiek tiek stiliaus prie savo stalo? Mes jus pridengėme „pasidaryk pats“nuotaikos lempute, pagaminta iš dalių, kurias nesunkiai rasite savo garaže ar pašiūrėje. Mūsų nuotaikos lempa pasižymi estetišku ir moderniu dizainu, o tai leidžia visiškai kontroliuoti spalvą
RGB ikosaedro nuotaikos lempa: 9 žingsniai (su nuotraukomis)
RGB piktogramos nuotaikos lempa: geometrinės figūros visada patraukė mūsų dėmesį. Neseniai viena tokių patrauklių formų sužadino mūsų smalsumą: „Icosahedron“. Ikosaedras yra daugiasluoksnis su 20 veidų. Gali būti be galo daug nepanašių ikosaedrų formų, tačiau
Išskirtinė nuotaikos lempa: 5 žingsniai (su nuotraukomis)
Išskirtinė nuotaikos lempa: spalvos ir emocijos yra neatsiejamos. Spalvos vaidina labai svarbų vaidmenį kuriant nuotaikos atmosferą. Tai gali padaryti mus laimingus ar liūdnus, nusivylusius ar atsipalaidavusius, susikaupusius ar išsiblaškusius. Viskas, ką jums reikia padaryti, tai pasirinkti tinkamą spalvą, kad jūsų diena būtų smagi
Interaktyvūs kiemo žibintai, takų žibintai: 3 žingsniai
Interaktyvūs kiemo žibintai, „Walkway Lights“: norėjau pastatyti kažkokius interaktyvius kiemo žibintus savo kieme. Idėja buvo ta, kad kai kas nors vaikščiojo vienu keliu, jis pradės animaciją ta kryptimi, kuria jūs einate. Pradėjau nuo „Dollar General“1,00 USD saulės lempučių