Turinys:

Banginė lempa - orai ir įspėjimai: 7 žingsniai (su nuotraukomis)
Banginė lempa - orai ir įspėjimai: 7 žingsniai (su nuotraukomis)

Video: Banginė lempa - orai ir įspėjimai: 7 žingsniai (su nuotraukomis)

Video: Banginė lempa - orai ir įspėjimai: 7 žingsniai (su nuotraukomis)
Video: AKCENTAS: KODĖL AŠ GIMIAU KIJEVE? 2024, Liepa
Anonim
Image
Image
Vaizdas
Vaizdas

Naršydamas „thingiverse“pamačiau šią visiškai nuostabią „Wave Lamp“lempą ir turėjau ją sukurti.

www.thingiverse.com/thing:774456

Lempa yra labai gerai suprojektuota ir spausdina be jokių atramų (reikia atspausdinti šone)

Taip pat yra lempos pagrindas, kuriam reikia LED juostelių

Vaizdas
Vaizdas

Ir, žinoma, negalėjau tiesiog palikti lempos prie lovos. Turėjau padaryti „wifi“ir parodyti orą. Taigi, naudoju visur esantį ESP8266 modulį su WS2812B šviesos diodais, kad galėčiau valdyti žibintų spalvą pagal šiandienos prognozę. Be to, šviesa automatiškai išsijungia 22:00 ir įsijungia 6:00.

1 žingsnis: Reikalavimai

Reikalavimai
Reikalavimai
Reikalavimai
Reikalavimai

Norėdami sukurti šią bangos lempą, jums reikės šių elementų:

Įrankiai:

  1. 3D spausdintuvas - tas, kuris gali atspausdinti bent 30-35 cm
  2. USB-TTL modulis ESP-12E programavimui
  3. Karšto klijų pistoletas
  4. Lituoklis

Eksploatacinės medžiagos:

  1. PLA - balta lempai ir kita spalva pagrindui
  2. 30 WS2812B Adresuojami RGB šviesos diodai
  3. ESP8266 - 12E
  4. 74HCT245N
  5. 5V maitinimo šaltinis
  6. 5V-3.3V galios keitiklis
  7. Keletas antgalių kaiščių ir rezistorių
  8. Lituoklis

2 žingsnis: 3D spausdinimas

3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas

3D spausdinkite toliau nurodytus elementus

Lempa

  1. Spausdinkite naudodami baltą PLA, pasuktą šone
  2. Atramos ir plaustai nereikalingi
  3. Nors aš naudojau 5 mm kraštą, kad spausdinimo metu jis liktų prilipęs prie lovos
  4. Aš naudoju šiuos nustatymus:

    • 0,8 mm ugnikalnio antgalis ir 0,3 mm sluoksnio aukštis.
    • 2 perimetrai
    • 100% užpildymas (tai tikrai nesvarbu, nes gabalai yra tokie ploni, bet kokiu atveju jie užpildomi)
  5. Būkite įspėti - tai didžiulis spausdinimas ir užima daug laiko. Taigi, jei jums nepatogu palikti spausdintuvą nakčiai (arba kelioms naktims), tai ne jums. Atsispausdinkite jį naudodami „3Dhubs“. Mano užtruko ~ 30 valandų

Stovas

  1. Aš pakeičiau stovą naudodamas „TinkerCAD“, kad sukurtų ertmę elektronikos pagrinde. Ją galite atsisiųsti čia:
  2. Spausdinkite naudodami spalvotą PLA (aš naudoju medienos užpildą):

    • 0,8 mm ugnikalnio antgalis ir 0,3 mm sluoksnio aukštis.
    • 2 perimetrai
    • 20% užpildas
  3. Tačiau būkite įspėti - mano sukurta ertmė neturi jokių atramų, o vidus tampa šiek tiek netvarkingas (ypač naudojant malkinę PLA, kuri nėra gerai sujungta)

Viršus

Tai yra neprivalomas gabalas. Sukūriau ją TinkerCAD, kad paslėpčiau skylę lempos viršuje. Tai nieko puiku, bet veikia.

  1. https://www.tinkercad.com/things/5aD6V4O0jpy
  2. Atramos ir plaustai nereikalingi
  3. Aš naudoju šiuos nustatymus:

    • 0,8 mm ugnikalnio antgalis ir 0,3 mm sluoksnio aukštis.
    • 2 perimetrai
    • 30% užpildas

3 žingsnis: elektroninė grandinė

Elektroninė grandinė
Elektroninė grandinė
Elektroninė grandinė
Elektroninė grandinė
Elektroninė grandinė
Elektroninė grandinė

Šiai lempai naudojama grandinė yra labai paprasta ir jei jūsų WS2812B (kai kurie veikia, kai kurie ne) veikia esant 3,3 V signalui, tai dar paprasčiau, nes tuomet galite išvengti 74HCT245N.

Pagrindinė grandinė (žr. Schemą aukščiau):

  1. ESP-12E (galite praleisti šiuos veiksmus, jei naudojate vieną iš iš anksto sukurtų „Adafruit“, „Sparkfun“ir tt modulių):

    • Prijunkite 3 ir 8 kaiščius prie 3.3V
    • Prijunkite 1, 11 ir 12 kaiščius prie 3.3V per 10k rezistorių
    • Prijunkite 9 ir 10 kaiščius prie GND
    • Prijunkite 12 kaištį prie GND per atvirą 2 kontaktų jungtį. Šiuos kaiščius galima sujungti kartu, kad būtų galima programuoti ESP-12E
    • Prijunkite 15 ir 16 kaiščius prie antgalių kaiščių (tai yra RX ir TX kaiščiai, naudojami programuoti ESP-12E)
  2. 74HCT245N (ignoruokite tai, jei jūsų WS2812B šviesos diodai veikia tiesiogiai esant 3,3 V įtampai)

    • Prijunkite 1 ir 20 kaiščius prie +5 V.
    • Prijunkite 10 ir 19 kaiščius prie GND
    • Prijunkite 2 kaištį prie ESP-12E 13 kaiščio
  3. WS2812B

    • Prijunkite +5V ir GND prie atitinkamai +5V ir GND kaiščių
    • Prijunkite DIN prie 74HCT245N 18 kaiščio
    • Jei praleidžiate 74HCT245N, prijunkite DIN prie ESP-12E 13 kaiščio

Įsitikinkite, kad visi GND yra sujungti. Įsitikinkite, kad neprisijungėte +5 arba +3,3 prie GND.

Turėjau keletą lentų, gulinčių iš ankstesnio projekto, ir tiesiog jas panaudojau (vaizdai aukščiau)

github.com/dushyantahuja/ESP8266-RGB-W-LED…

4 žingsnis: ESP-12E programavimas

ESP-12E programavimas
ESP-12E programavimas

Aš naudoju „Arduino IDE“, norėdamas įkelti kodą į ESP-12E. Prieš tai galite atlikti tam tikrą sąranką.

„Arduino IDE“nustatymas

Naujausia „Arduino IDE“versija palengvino šių plokščių programavimą ir jums nebereikia pereiti kelių lankų, kad ji veiktų su ESP8266 plokštėmis.

Žingsniai yra tokie:

  1. Atsisiųskite naujausią IDE iš
  2. Atidarykite IDE ir eikite į Įrankiai -> Lentos -> Lentų tvarkytuvė …
  3. Ieškokite ESP8266 ir spustelėkite įdiegti (žr. Paveikslėlį aukščiau)

Modulio programavimas

Šiame modulyje nėra USB sąsajos, todėl USB ryšiui su kompiuteriu tvarkyti reikia naudoti USB-TTL modulį / arduino. Galite nusipirkti bet kurį pigų modulį, kurį galima rasti „ebay“(https://www.ebay.com/sch/i.html?_from=R40&_sacat=0&…) - viskas veikia taip pat - tik įspėjame, kad reikia rasti tinkamas tvarkykles kad jūsų kompiuteris aptinka modulį.

Sujungimai yra gana paprasti:

  1. Prijunkite GND iš USB-TTL prie kaiščio, pažymėto GND ant ESP-12E
  2. Prijunkite 3.3V iš USB-TTL prie kaiščio, pažymėto VCC ant ESP-12E
  3. Prijunkite TX iš USB-TTL prie kaiščio, pažymėto RX ant ESP-12E
  4. Prijunkite RX iš USB-TTL prie kaiščio, pažymėto TX ant ESP-12E
  5. Sutrumpinkite programos antraštę, kad PIN 12 prisijungtų prie GND

Modulis yra paruoštas užprogramuoti.

5 žingsnis: Kodas

Kodas labai priklauso nuo „Random Nerd Tutorials“mokymo programos https://randomnerdtutorials.com/esp8266-weather-fo…-iš tikrųjų oro bitai yra tik nukopijuoti iš ten.

  1. Įdiekite šias bibliotekas:

    • „FastLED“(https://fastled.io)
    • „ArduinoOTA“(https://github.com/esp8266/Arduino/tree/master/libraries/ArduinoOTA)
    • „ArduinboJSON“(https://github.com/bblanchon/ArduinoJson)
  2. Gaukite „OpenWeatherMap“API (https://openweathermap.org/api)
  3. Atsisiųskite kodą iš „github“:
  4. Atlikite šiuos pakeitimus:

    • „Wi -Fi“ir slaptažodis 56 ir 57 eilutėse
    • Miestas ir API raktas 23 ir 24 eilutėse
  5. Įkelti į ESP-12E

Jei viskas gerai, kodas įkeliamas, modulis prisijungia prie „Wi -Fi“maršrutizatoriaus ir rodo orą. Šiuo metu aš sukūriau taip:

  1. Jei bus debesuota / lyja - mėlyna
  2. Jei snigs / griaudės - Raudona -mėlyna
  3. Jei aišku - žalia
  4. Kita vaivorykštė - atsižvelgti į ypatingas sąlygas / klaidas

Galite pakeisti 365-377 eilutes, kad jas pakeistumėte. Naudojamos paletės yra 70–82 eilutėse

6 žingsnis: Surinkite

Image
Image
„Arduino“konkursas 2017 m
„Arduino“konkursas 2017 m

Surinkite šiuos gabalus:

  1. Apvyniokite LED juostelę prie LED stovo ir priklijuokite karštais klijais
  2. Įdėkite grandinės modulį apačioje ir pritvirtinkite karštais klijais
  3. Stumkite bangų lemputę ant LED stovo viršaus
  4. Padėkite viršutinę dalį ant viršaus

Įjunkite 5 V maitinimo šaltinį ir mėgaukitės

7 žingsnis: ateities planai

Šiuo metu jis veikia, tačiau planuoju pridėti šias funkcijas:

  1. Įtraukite MQTT, kad jį būtų galima susieti su „OpenHAB“
  2. Galbūt sukurkite tam tikrą pranešimo funkciją apie praleistus skambučius / žinutes
  3. Pabusk šviesa

Pasiūlymai laukiami. Ir jei jį sukuriate, būtinai paskelbkite čia vaizdą.

Rekomenduojamas: