Cuprins:

Lumina pomului de Crăciun controlată de o jucărie .: 12 pași (cu imagini)
Lumina pomului de Crăciun controlată de o jucărie .: 12 pași (cu imagini)

Video: Lumina pomului de Crăciun controlată de o jucărie .: 12 pași (cu imagini)

Video: Lumina pomului de Crăciun controlată de o jucărie .: 12 pași (cu imagini)
Video: Focus 22 - 21 decembrie 2024, Noiembrie
Anonim
Image
Image
Pregătirea. Benzi LED
Pregătirea. Benzi LED

Salutatori creatori!

Vin Crăciunul și Anul Nou. Înseamnă o dispoziție festivă, cadouri și, desigur, un pom de Crăciun decorat cu lumini strălucitoare colorate.

Pentru mine, luminile pomilor de Crăciun de pe piața de masă sunt prea plictisitoare. Pentru a face pe plac copiilor, am realizat un decor unic de brad care este controlat de o jucărie.

În acest manual, vă voi spune cum puteți să-l realizați.

Pasul 1: Ideea

Ideea este să puneți o jucărie, de exemplu, una moale, sub brad, și să o faceți inteligentă. Vreau ca o jucărie să citească culoarea oricărui obiect atașat și să picteze un copac în această culoare. Astfel, va fi un joc distractiv pentru copiii care pot folosi diferite lucruri pentru a picta bradul în diferite culori.

Pasul 2: Pregătirea. Benzi LED

Pregătirea. Benzi LED
Pregătirea. Benzi LED
Pregătirea. Benzi LED
Pregătirea. Benzi LED
Pregătirea. Benzi LED
Pregătirea. Benzi LED

În primul rând, trebuie să găsesc un înlocuitor pentru luminile obișnuite de Crăciun.

Noile lumini ar trebui să fie strălucitoare, colorate și cel mai important ar trebui să fie ușor de programat.

Pentru luminile de Crăciun, am ales banda LED RGB ws2812b digitală programabilă adresabilă. Aceste benzi LED sunt foarte populare, le puteți găsi oriunde. Sunt ușor de conectat la diferite controlere Arduino. Astfel de LED-uri sunt vândute în benzi de câteva zeci de piese și sunt alimentate de 5 12 sau 24 V DC. Puteți conecta mai multe benzi la rând și puteți gestiona un număr mare de LED-uri.

Am găsit câteva astfel de benzi acasă. Benzile mele au câte 50 de LED-uri fiecare și sunt acționate de 5 V DC.

2 x Noduri de șiruri ale modulului LED pre-lipit WS2812B ~ 18 $

Iată o posibilă înlocuire din magazinul Amazon:

  • WS2812b 5m 60leds / pixeli / m Banda flexibilă cu LED-uri adresabile individual
  • ALITOVE 16,4 ft WS2812B Lumină LED cu bandă adresabilă individual

Benzile LED au o mulțime de varietăți. Ele diferă prin numărul de LED-uri, distanța dintre LED-uri, grupare, tensiunea de alimentare etc. Alegeți ce doriți.

Pentru jucăria mea, am pregătit un mic pom de Crăciun, așa că 100LED-uri îmi sunt suficiente.

Pasul 3: Pregătirea. Jucărie

Pregătirea. Jucărie
Pregătirea. Jucărie
Pregătirea. Jucărie
Pregătirea. Jucărie

Găsiți jucăria și decideți unde să plasați controlerul cu bandă LED.

Acest pas este cel mai important deoarece rezultatul va fi evaluat de copii =).

Într-un magazin de jucării din apropiere, am găsit un urs minunat de Anul Nou. Puteți îmbunătăți o jucărie pe care o aveți deja.

Am decis să acopăr controlerul cu benzi LED cu o țesătură și să-l cus la labele urșilor. Vreau ca ursul să pară că ține un cadou.

Am cumpărat două bucăți de țesătură cu modele amuzante. Unul este moale pentru substrat și al doilea este subțire pentru stratul superior.

Pasul 4: Pregătirea. Electronică

Pregătirea. Electronică
Pregătirea. Electronică
Pregătirea. Electronică
Pregătirea. Electronică
Pregătirea. Electronică
Pregătirea. Electronică

Aveți nevoie de câteva componente electronice pentru a face jucăria mai inteligentă.

Folosesc plăci și scuturi Arduino din magazinul Amperka. În ceea ce mă privește, acestea sunt foarte convenabile datorită unei structuri modulare. Modulele pot fi ușor combinate fără lipire.

Este posibil să vă fie greu să le achiziționați, așa că includ link-uri cu un eventual înlocuitor.

Controlor

Folosesc placa de dezvoltare ESP-12 bazată pe cipul ESP8266. Aceste placi sunt foarte mici și au suficientă funcționalitate. O alegere bună pentru proiectele mici care necesită spațiu limitat, chiar dacă nu utilizați WiFi și vă conectați la Internet.

1 x slot Wi-Fi Amperka ~ 19 $

Folosesc această placă de dezvoltare deoarece este compatibilă cu alte module de la același producător.

De asemenea, are o formă pătrată! Ar trebui să încapă cu ușurință într-o cutie mică pentru urs.

Posibil înlocuire:

  • ESP-12E NODEMCU
  • WEMOS D1 MINI

Senzor de culoare

Pentru a determina culoarea, folosesc placa de separare a senzorului de culoare Amperka Troyka TCS34725. Senzorul meu este compatibil cu placa controlerului, dar poate fi înlocuit cu acesta:

1 x senzor de culoare RGB cu filtru IR și LED alb - TCS34725 ~ 8 $

Acest senzor utilizează o interfață I2C pentru comunicare. Are LED-uri luminoase încorporate și setări extinse precum câștigul culorii sau integrarea culorii pentru o recunoaștere mai precisă.

Buton

Un simplu buton compatibil Arduino. Îl folosesc ca senzor tactil, notificând controlerului că este necesar să citiți culoarea unui nou articol.

1 x modul buton Amperka Troyka ~ 1 $

Posibil înlocuire:

  • Adafruit Push-button Switch Switch Breakout
  • Modul de butoane pentru blocuri electronice

Convertor de tensiune AC-DC

Pentru a alimenta banda LED și controlerul, am achiziționat sursa de alimentare AC-DC 5V 8A.

1 x 5V 8.0A 40W sursa de alimentare ~ 16 $

Banda mea LED este alimentată de 5V. 8A curent este suficient pentru un număr mare de LED-uri. De asemenea, alimentez controlerul ESP din această sursă de alimentare. Asigurați-vă că achiziționați surse de alimentare în carcase izolate, fără tampoane de contact deschise!

Posibil înlocuire:

  • Convertor de alimentare ALITOVE 5V 8A 40W AC-DC adaptor
  • MEAN WELL original LPV-60-5 5V 8A meanwell LPV-60 5V 40W

Opțional:

Convertor de tensiune DC-DC și driver WS2812b

Pentru controlerele Arduino, firul de semnal al benzii LED ws2812b poate fi conectat direct la pinii de pe placa controlorului. Majoritatea pinilor de dezvoltare ESP8266 nu sunt compatibili cu logica de 5V. Acum este mai bine să conectați banda LED cu astfel de controlere direct. Pentru a rezolva această problemă, folosesc acest modul.

1 x driver de bandă LED Amperka Troyka ws2812 ~ 9 $

Folosesc acest modul deoarece se atașează cu ușurință la controlerul meu. De asemenea, modulul are un buffer logic de 5 volți și convertor de tensiune DC-DC de 5 sau 3,3V. În acest fel, controlerul ESP poate fi alimentat de un fir împreună cu o bandă LED de 12 sau 24V.

Pasul 5: Asamblarea. Electronică

Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică
Asamblare. Electronică

Asamblați componente electronice. Mi-am conectat componentele așa cum se arată în diagrama atașată.

Schema poate diferi în funcție de componentele dvs., dar sensul rămâne același.

  • Conectați un buton la controler. L-am conectat la pinul A2 Esp8266. Dacă nu utilizați un modul, puteți conecta un buton de moment comun printr-un rezistor.
  • Conectați un senzor de culoare la controler. Plăcile de separare a senzorului de culoare TCS34725 comunică folosind magistrala I2C. Legați pinii SDA și SCL între senzor și controler. Dacă placa senzorului dvs. are pin LED pentru a controla LED-ul integrat, conectați-l. Mi-am legat pinul LED de pinul A0 Esp8266.
  • Conectați un capăt al benzii LED la controler. Banda LED ws2812b se conectează la un controler folosind pinul DI. Tensiunea logică pentru benzile LED ws2812b este de 5V. Dacă utilizați plăci de tip Arduino, puteți conecta pinul DI direct la pinul controlerului. Tensiunea de nivel logic pentru majoritatea plăcilor Esp8266 este de 3,3 V, deci utilizați un convertor de nivel logic sau driverul de bandă LED. Am lipit firul DI Strip pe placa șoferului și am conectat placa șoferului la pinul A5 Esp8266.
  • Atașați un alt capăt al benzii LED la sursa de alimentare. Cel cu pinul DO. Dacă este necesar, lipiți ștecherul la sursa de alimentare. Nu uitați să izolați firele.

Banda mea LED ws2812b este alimentată de 5V. Am alimentat atât banda cât și controlerul de la o singură sursă de alimentare AC-DC 5V. Dacă banda LED funcționează 12 sau 24V, utilizați convertorul de tensiune pentru a alimenta toate componentele electronice dintr-o singură sursă de alimentare.

Pasul 6: XOD

XOD
XOD
XOD
XOD

Să programăm controlerul.

Ca și în proiectele mele anterioare, folosesc mediul de programare vizuală XOD pentru firmware-ul controlerului.

Am publicat câteva biblioteci de care va trebui să creați un program. Deci, asigurați-vă că le adăugați în spațiul de lucru XOD.

  • gabbapeople / christmas-tree - Biblioteca conține driverul ws2811 Neopixel și învelișul pentru un senzor de culoare tcs34725.
  • gabbapeople / color - Biblioteca pentru a lucra cu culoarea în XOD.

În continuare, voi descrie cum să programați acest dispozitiv în XOD.

Pasul 7: Programare

Programare
Programare
Programare
Programare
Programare
Programare
Programare
Programare

Iată nodurile de care aveți nevoie:

Nodul senzorului de culoare tsc.

Acesta este primul nod care se plasează pe patch. Se utilizează pentru a măsura valoarea culorilor din senzor. Nodul folosește interfața I2C pentru a face schimb de date.

Senzorul de culoare detectează culoarea suprafeței în scala RGB. Culoarea este rezultatul interacțiunii dintre o sursă de lumină, un obiect și un observator. În cazul luminii reflectate, lumina care cade asupra unui obiect va fi reflectată sau absorbită în funcție de caracteristicile suprafeței. Majoritatea senzorilor de culoare conțin un emițător de lumină albă și trei senzori de intensitate a luminii cu filtre de culoare.

  • Pinii de intrare LED și LUM sunt pentru LED-ul încorporat de pe placa de rupere a senzorului. Acest LED încorporat este un emițător de lumină al senzorului. Conform schemei mele, am pus valoarea A0 la pinul LED și am setat valoarea de 1 luminanță la pinul LUM.
  • PIN-ul IT setează valoarea timpului de integrare. Acest factor descrie un număr de cicluri pentru a integra o culoare. Valorile posibile ale IT sunt 1, 10, 20, 42, 64, 256.
  • Valoarea pinului GAIN este un factor de amplificare. Acest coeficient îmbunătățește culoarea. Puteți îmbunătăți valoarea culorii de 4, 16 sau 60 de ori. Nu puteți îmbunătăți culoarea. Apoi, valoarea de pe pinul GAIN trebuie să fie egală cu 1. Am obținut cel mai precis rezultat folosind valoarea 20 IT și valoarea 60 GAIN.
  • PIN-ul INIT declanșează inițializarea senzorului și setează factori personalizați. Schimb valoarea pinului INIT la Pornire.
  • Pinul UPD declanșează o nouă citire a senzorului. Să fie această valoare Continuă.

Tcs-color-node afișează o valoare a culorii într-o formă personalizată de culoare.

Nodul ws2811

Acest nod este utilizat pentru a configura banda LED sau matricea.

  • PIN-ul DI este pentru numărul portului plăcii la care este conectată banda LED sau matricea. Conform schemei mele, i-am pus valoarea A5.
  • Puneți numărul de LED-uri utilizate la pinul SIZE. Am 2 benzi led de 50 de diode conectate între ele, așa că am setat valoarea SIZE la 100.
  • Pinul B setează luminozitatea generală pentru toate LED-urile într-un interval de la 0 la 100. Am setat luminozitatea la 80.

Acest nod inițializează banda sau matricea LED și construiește un tip personalizat ws2811 pentru operațiuni ulterioare.

Nodul color-all

Când este instalat nodul ws2811, puteți controla banda LED folosind diferite noduri funcționale.

  • culoare-toate. Nodul pictează toate LED-urile de pe bandă sau matrice într-o culoare selectată.
  • culoare-pixel. Culori noduri LED-uri speciale pe bandă în culoarea selectată. Puneți numărul pixelului pe pinul PN.
  • culoare-n-pixeli. Nodul colorează un grup de N LED-uri în culoarea selectată. Specificați numărul LED-ului de pornire al grupului utilizând pinul STRT. Specificați ordinea unui grup la pinul STEP. De exemplu, pentru a picta fiecare al doilea LED începând cu numărul 30 și terminând cu numărul 70 puneți următoarele valori: STRT = 30; N = 40 (70-30); PASUL = 2.

În acest proiect, controlez toate LED-urile în același timp și folosesc nodul color-all.

Legez primul pin de intrare al nodului color-all cu pinul de ieșire al nodului ws2811. Apoi conectez pinul CLR de intrare care ia valoarea culorii la pinul de ieșire al senzorului.

Un impuls pe pinul SET al nodului culoare-toate declanșează un nou set de culori.

Nodul butonului

Folosesc butonul pentru a informa controlerul despre un obiect nou din fața senzorului de culoare. Pentru aceasta, așez nodul butonului pe patch și conectez pinul PRS de ieșire cu pinul SET al nodului color-all. În acest fel, făcând clic pe buton se generează un semnal de impuls pentru a schimba culoarea.

Am atașat butonul la pinul A2 Esp8266, așa că am pus valoarea A2 pinului PORT.

Nodul de purificare

Senzorul de culoare poate afișa valori de culoare într-o gamă imensă. Dar banda LED nu este capabilă să afișeze nuanțe între ele. Pentru a rezolva acest lucru, folosesc doar așa-numitele culori pure. Au o nuanță arbitrară, dar au întotdeauna saturația maximă. Pentru a purifica o valoare a culorii, plasez nodul de purificare între senzorii tsc-color-sensor și color-all noduri.

Patch-ul este gata. Puteți apăsa pe Deploy, alegeți tipul de bord și încărcați-l pe dispozitiv.

Pasul 8: Asamblarea. Cadru

Asamblare. Cadru
Asamblare. Cadru
Asamblare. Cadru
Asamblare. Cadru
Asamblare. Cadru
Asamblare. Cadru

Pot începe să creez o carcasă moale, asigurându-mă că dispozitivul funcționează așa cum ar trebui.

Ca cadru, am imprimat un model al cutiei pe carton gros.

Apoi îndoiți laturile cutiei și faceți o gaură pătrată pentru senzorul de culoare.

Notă:

Am creat acest caz special pentru componentele mele electronice, care, cel mai probabil, diferă de ale dvs. Carcasa nu este universală, în afară de aceasta puteți avea o jucărie complet diferită. Așadar, folosiți imaginația!

Pasul 9: Asamblarea. Țesătură

Asamblare. Țesătură
Asamblare. Țesătură
Asamblare. Țesătură
Asamblare. Țesătură
Asamblare. Țesătură
Asamblare. Țesătură

Am pus două țesături diferite una pe cealaltă.

Țesătura moale și groasă este pentru volum și subțire pentru aspect. În ambele țesături, am făcut și o gaură pentru senzor.

Am fixat cadrul de carton pe țesătură cu bandă adezivă obișnuită. În același mod, am fixat marginile găurii.

Apoi am tăiat bucăți suplimentare de țesătură și am cusut manual conturul găurii din interior.

Trebuie să spun că nu sunt cel mai bun croitor, așa că nu judecați calitatea. =)

Pasul 10: Asamblarea. Carcasă moale

Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale
Asamblare. Carcasă moale

Am întins țesătura și am fixat-o cu aceeași bandă adezivă. Banda va rămâne în interiorul carcasei și nu va fi vizibilă.

Apoi, am așezat dispozitivul într-un cadru și l-am cusut complet în jurul conturului, cu excepția unui colț unde merg firele.

Pasul 11: Asamblarea. Jucărie și dispozitiv

Asamblare. Jucărie și dispozitiv
Asamblare. Jucărie și dispozitiv
Asamblare. Jucărie și dispozitiv
Asamblare. Jucărie și dispozitiv
Asamblare. Jucărie și dispozitiv
Asamblare. Jucărie și dispozitiv

Mi-am cusut dispozitivul la labele unui ursuleț de pluș.

Am vrut să arate de parcă ar ține un mic cadou de Crăciun.

Pasul 12: Rezultat

Rezultat
Rezultat
Rezultat
Rezultat

Odată ce dispozitivul este programat și fixat pe jucărie, puteți conecta banda LED și puteți pune jucăria sub copac!

Atașați obiecte colorate la cadoul ursuleților de pluș și arborele va fi pictat în aceeași culoare!

Abonați-vă Dacă vă place acest mini-proiect! =)

Vor exista o mulțime de instrucțiuni amuzante diferite.

Recomandat: