Cuprins:

Lampă Wave - Vreme și Alerte: 7 pași (cu imagini)
Lampă Wave - Vreme și Alerte: 7 pași (cu imagini)

Video: Lampă Wave - Vreme și Alerte: 7 pași (cu imagini)

Video: Lampă Wave - Vreme și Alerte: 7 pași (cu imagini)
Video: TREND CU EVA 2024, Iulie
Anonim
Image
Image
Imagine
Imagine

În timp ce navigau prin thingiverse, am văzut această lampă Wave absolut uimitoare și a trebuit să o construiesc.

www.thingiverse.com/thing:774456

Lampa este foarte bine proiectată și imprimă fără suporturi (trebuie imprimată pe lateral)

De asemenea, există o bază a lămpii care are benzi LED

Imagine
Imagine

Și, desigur, nu aș putea să-l las pur și simplu să fie o lampă de noptieră. A trebuit să-l fac wifi și să arăt vremea. Deci, folosesc un modul omniprezent ESP8266 cu LED-uri WS2812B pentru a controla culoarea luminilor pe baza previziunilor de astăzi. De asemenea, lumina se stinge automat la 22:00 și se aprinde la 6:00 AM.

Pasul 1: Cerințe

Cerințe
Cerințe
Cerințe
Cerințe

Veți avea nevoie de următoarele elemente pentru a crea această lampă de undă:

Instrumente:

  1. Imprimantă 3D - una care poate imprima cel puțin 30-35cm
  2. Modul USB-TTL pentru programarea ESP-12E
  3. Hot Glue Gun
  4. Ciocan de lipit

Consumabile:

  1. PLA - alb pentru lampă și o altă culoare pentru bază
  2. 30 WS2812B LED-uri RGB adresabile
  3. ESP8266 - 12E
  4. 74HCT245N
  5. Alimentare 5V
  6. Convertor de putere 5V-3.3V
  7. Câteva știfturi de antet și rezistențe
  8. Solder

Pasul 2: Imprimare 3D

Imprimare 3D
Imprimare 3D
Imprimare 3D
Imprimare 3D
Imprimare 3D
Imprimare 3D

3D Imprimați următoarele piese

Lampa

  1. Imprimați folosind PLA alb rotit pe lateral
  2. Nu sunt necesare suporturi și plute
  3. Deși am folosit o margine de 5 mm pentru a mă asigura că rămâne lipită de pat în timpul imprimării
  4. Am folosit următoarele setări:

    • Duza vulcanului de 0,8 mm și înălțimea stratului de 0,3 mm.
    • 2 perimetre
    • 100% umplutură (acest lucru nu contează întrucât piesele sunt atât de subțiri încât se umplu oricum)
  5. Fiți avertizat - aceasta este o imprimare UMERĂ și necesită mult timp. Deci, dacă nu vă simțiți confortabil să lăsați imprimanta peste noapte (sau peste câteva nopți), aceasta nu este pentru dvs. Primiți-l imprimat folosind 3Dhubs. A mea a durat ~ 30 de ore

Standul

  1. Am modificat suportul folosind TinkerCAD pentru a crea o cavitate în bază pentru electronică. O puteți descărca de aici:
  2. Imprimați folosind PLA colorat (am folosit un depozit de lemn):

    • Duza vulcanului de 0,8 mm și înălțimea stratului de 0,3 mm.
    • 2 perimetre
    • 20% umplutură
  3. Fiți avertizat însă - cavitatea pe care am creat-o nu are suporturi și interiorul devine puțin dezordonat (mai ales cu PLA pentru deșeuri care nu se leagă bine)

Topul

Aceasta este o piesă opțională. L-am creat în TinkerCAD pentru a ascunde gaura din partea de sus a lămpii. Nu este nimic grozav, dar funcționează.

  1. https://www.tinkercad.com/things/5aD6V4O0jpy
  2. Nu sunt necesare suporturi și plute
  3. Am folosit următoarele setări:

    • Duza vulcanului de 0,8 mm și înălțimea stratului de 0,3 mm.
    • 2 perimetre
    • 30% umplutură

Pasul 3: Circuit electronic

Circuit electronic
Circuit electronic
Circuit electronic
Circuit electronic
Circuit electronic
Circuit electronic

Circuitul utilizat pentru această lampă este extrem de simplu și dacă WS2812B-urile dvs. (unele funcționează, altele nu) funcționează la semnal de 3,3 V, este chiar mai simplu, deoarece puteți evita 74HCT245N.

Circuitul principal (vezi schema de mai sus):

  1. ESP-12E (puteți sări peste acești pași dacă utilizați unul dintre modulele pre-construite de la Adafruit, Sparkfun etc.):

    • Conectați pinii 3 și 8 la 3,3V
    • Conectați pinii 1, 11 și 12 la 3,3 V printr-un rezistor de 10 k
    • Conectați pinii 9 și 10 la GND
    • Conectați pinul 12 la GND printr-un conector deschis cu 2 pini. Acești pini pot fi conectați împreună pentru a programa ESP-12E
    • Conectați pinii 15 și 16 la pinii de antet (aceștia sunt pinii RX și TX utilizați pentru a programa ESP-12E)
  2. 74HCT245N (ignorați acest lucru dacă LED-urile dvs. WS2812B funcționează direct la 3.3V)

    • Conectați pinii 1 și 20 la + 5V
    • Conectați pinii 10 și 19 la GND
    • Conectați pinul 2 la pinul 13 al ESP-12E
  3. WS2812B

    • Conectați + 5V și GND la pinii + 5V și respectiv GND
    • Conectați DIN la pinul 18 de pe 74HCT245N
    • Dacă omiteți 74HCT245N, conectați DIN la pinul 13 al ESP-12E

Asigurați-vă că toate GND-urile sunt conectate împreună. Asigurați-vă că nu conectați +5 sau +3.3 la GND.

Am avut câteva plăci situate dintr-un proiect anterior și le-am folosit pur și simplu (imaginile de mai sus)

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

Pasul 4: Programarea ESP-12E

Programarea ESP-12E
Programarea ESP-12E

Am folosit ID-ul Arduino pentru a încărca codul pe ESP-12E. Pentru a face acest lucru, are nevoie de o anumită configurare.

Configurarea IDE Arduino

Cea mai recentă versiune a Arduino IDE a făcut mai ușoară programarea acestor plăci și nu mai trebuie să treceți prin cercuri multiple pentru a o face să funcționeze cu plăcile ESP8266.

Pașii sunt următorii:

  1. Descărcați cel mai recent IDE de pe
  2. Deschideți IDE și accesați Instrumente -> Placi -> Manager placi …
  3. Căutați ESP8266 și faceți clic pe instalare (vezi imaginea de mai sus)

Programarea modulului

Acest modul nu vine cu o interfață USB, deci trebuie să utilizați un modul USB-TTL / arduino pentru a gestiona comunicarea USB cu computerul. Puteți cumpăra oricare dintre modulele ieftine disponibile pe eBay (https://www.ebay.com/sch/i.html?_from=R40&_sacat=0&…) - toate funcționează la fel - numai avertismentul este găsirea driverelor corecte, astfel încât că computerul dvs. detectează modulul.

Conexiunile sunt destul de simple:

  1. Conectați GND de la USB-TTL la pinul marcat GND de pe ESP-12E
  2. Conectați 3,3V de la USB-TTL la pinul marcat VCC pe ESP-12E
  3. Conectați TX-ul de la USB-TTL la pinul marcat RX pe ESP-12E
  4. Conectați RX-ul de la USB-TTL la pinul marcat TX pe ESP-12E
  5. Scurtați antetul programului astfel încât PIN 12 să se conecteze la GND

Modulul este acum gata pentru a fi programat.

Pasul 5: Codul

Codul depinde în mare măsură de tutorialul tutorialelor Random Nerd https://randomnerdtutorials.com/esp8266-weather-fo… - de fapt, biți meteorologici sunt pur copiați de acolo.

  1. Instalați următoarele biblioteci:

    • FastLED (https://fastled.io)
    • ArduinoOTA (https://github.com/esp8266/Arduino/tree/master/libraries/ArduinoOTA)
    • ArduinboJSON (https://github.com/bblanchon/ArduinoJson)
  2. Obțineți un API OpenWeatherMap (https://openweathermap.org/api)
  3. Descărcați codul de pe github:
  4. Efectuați următoarele modificări:

    • Wifi și parolă pe liniile 56 și 57
    • Oraș și cheia API pe liniile 23 și 24
  5. Încărcați pe ESP-12E

Dacă totul a mers bine, codul este încărcat, modulul dvs. se conectează la routerul wifi și arată vremea. În prezent, am configurat astfel încât:

  1. Dacă va fi înnorat / ploi - Albastru
  2. Dacă va ninge / furtuni - Roșu-Albastru
  3. Dacă e clar - Verde
  4. Else Rainbow - pentru a ține cont de condiții / erori speciale

Puteți face modificări la liniile 365-377 pentru a le modifica. Paletele utilizate sunt pe liniile 70-82

Pasul 6: Asamblați

Image
Image
Concurs Arduino 2017
Concurs Arduino 2017

Asamblați următoarele piese:

  1. Înfășurați banda LED pe suportul LED și lipiți-o cu adeziv fierbinte
  2. Introduceți modulul circuitului în partea de jos și fixați-l cu adeziv fierbinte
  3. Glisați lampa de undă din partea de sus a suportului cu LED-uri
  4. Așezați vârful deasupra

Conectați-vă la o sursă de alimentare de 5V și bucurați-vă

Pasul 7: Planuri de viitor

Deocamdată funcționează, totuși intenționez să adaug următoarele caracteristici:

  1. Incorporează MQTT, astfel încât să poată fi conectat la OpenHAB
  2. Poate creați un fel de caracteristică de notificare pentru apeluri / mesaje ratate
  3. Trezește-te ușor

Sugestii binevenite. Și dacă creați una, asigurați-vă că postați o imagine aici.

Recomandat: