Taula de continguts:

Barres LED sincronitzades de malla WiFi: 3 passos (amb imatges)
Barres LED sincronitzades de malla WiFi: 3 passos (amb imatges)

Vídeo: Barres LED sincronitzades de malla WiFi: 3 passos (amb imatges)

Vídeo: Barres LED sincronitzades de malla WiFi: 3 passos (amb imatges)
Vídeo: BEST TWINKLY LIGHT EFFECTS 2024, De novembre
Anonim
Image
Image
Barres LED sincronitzades de malla WiFi
Barres LED sincronitzades de malla WiFi
Barres LED sincronitzades de malla WiFi
Barres LED sincronitzades de malla WiFi
Barres LED sincronitzades de malla WiFi
Barres LED sincronitzades de malla WiFi

Per CarlSTeleToyland Segueix més de l'autor:

Selector de colors remot per a LEDs de casa
Selector de colors remot per a LEDs de casa
Selector de colors remot per a LEDs de casa
Selector de colors remot per a LEDs de casa
LEDs sincronitzats de tot el barri
LEDs sincronitzats de tot el barri
LEDs sincronitzats de tot el barri
LEDs sincronitzats de tot el barri
Il·luminació digital permanent de vacances per a casa LED LED V2
Il·luminació digital permanent de vacances per a casa LED LED V2
Il·luminació digital permanent per a cases LED LED V2
Il·luminació digital permanent per a cases LED LED V2

Quant a: un fabricant des de la infància amb tots els símptomes clàssics, un fabricant de robots i un gestor de productes CTO / Tech de programari d'Internet. Més informació sobre CarlS »

Aquest projecte és una col·lecció de barres LED amb LED digitals controlables individualment (WS2812b "Neopixels"). Permeten fer animacions a través d'ells sense connectar-los. Utilitzen una malla WiFi per connectar-se entre si i l’animació s’adapta a tenir més o menys barres a la malla.

La inspiració va ser que un parell de majors de bateria haguessin decorat maces / porres per a una desfilada de Nadal. L'animació LED entre ells està sincronitzada. Els LED també podrien ser fils en lloc de tires.

L'altre ús és per a una instal·lació artística de LED on no es vulgui executar un cable de dades entre tots els LED que hi ha al voltant d'una habitació; tot el que han de fer és connectar-se individualment.

Per a aquest projecte, no estan connectats a Internet. Configuren els seus propis punts d’accés WiFi privats i servidors web. Per tant, aquest projecte no depèn de xarxes externes i es pot executar en ubicacions remotes. Funcionen amb 5V, de manera que es poden alimentar fàcilment amb bateries de telèfons mòbils externs.

Pas 1: parts

Parts
Parts
Parts
Parts
Parts
Parts

Es van utilitzar les parts següents en el projecte per a cada tira:

  • Una tira LED WS2812b no impermeable. He utilitzat 30 LEDs / metre. Els que no són impermeables solen tenir cinta de doble cara ja adherida perquè siguin fàcils de muntar. Necessitareu 1 metre per canal, ja que tenen un metre de llargada. Més LED per metre està bé, només cal que us assegureu d’obtenir una font d’energia corresponent. Tots els LEDs (5050) d’aquestes tires poden utilitzar fins a 60 ma quan estan completament engegats.
  • Tancament de projecte electrònic de plàstic 60x36x25mm: aquest és prou petit per contenir un D1 Mini.
  • Un connector de 5,5 mm x 2,1 mm de corrent continu

  • Una font d'alimentació de 5 V: una de 2 ampere hauria d'estar bé amb 30 LEDS a 0,06 amp cadascun quan estigués ple.
  • Un cable USB a 5,5 mm x 2,1 mm si voleu alimentar aquest projecte des d’una bateria USB
  • Una placa D1 Mini ESP8266: també disponible per menys, però amb una espera més llarga.
  • Canal d'alumini amb tapa i taps finals per a tires LED. Hi ha molts perfils per triar. Aquesta és prou àmplia per a les tires LED de WS2812b (12 mm) i de perfil baix.
  • Barra d'alumini: el canal fa 17 mm d'ample, de manera que una barra d'alumini de 1/2 "d'ample té una bona mida. Ha de tenir 1/16" de gruix i 6 "de llarg per cada barra que feu.
  • Cinta d'escuma de doble cara - 1/2 "d'ample.
  • Condensador 1000uF: es recomana per a cada tira, per evitar que els pics de tensió danyin els LED.
  • Cable de connexió. Aquest cable de silicona de calibre 26 és molt flexible i ajuda a evitar que el cable estiri les pastilles de soldadura de la tira LED. Tampoc es fon quan el toqueu amb el soldador. També he utilitzat filferro servo que també és molt flexible, però el filferro de silicona és el meu nou fil preferit. Només necessitareu aproximadament 6 "de cada color (vermell, negre, groc).
  • Cables de pont: les femelles vermell, negre i groc s’utilitzen per connectar-se a la CPU. Podeu saltar-los i soldar el cable de connexió directament al tauler si sou segur.
  • Una resistència de 330 ohms per reduir el soroll a la línia de dades de la tira LED.
  • Un díode de senyal 1N4448 o similar per permetre que el processador de 3,3 v condueixi de manera fiable la tira LED de 5 v.
  • Tubs termorretractables de 3 mm: només en necessiteu uns 5 ".

Pas 2: Creeu les barres

Construeix les barres
Construeix les barres
Construeix les barres
Construeix les barres
Construeix les barres
Construeix les barres
Construeix les barres
Construeix les barres

La construcció de les barres és la mateixa que en aquest instructable anterior. Aquí hi ha imatges similars pas a pas d’una compilació recent, i la discussió es pot trobar en aquest altre instructable.

Un nou consell per enganxar els LED al canal d’alumini: de vegades la cinta de doble cara de les tires LED és lleugerament més curta que la placa de circuits LED i veureu una lleugera sivella a la tira LED. Si simplement talla la cinta en aquest lloc, quedarà plana.

També vaig utilitzar algunes gotes de cola UV per bloquejar el cable d'alimentació i qualsevol part de la tira LED que no quedés apagada.

En lloc dels controladors Particle Photon, aquest projecte utilitzava targetes WeMos D1 Mini basades en el conjunt de xips ESP8266. Són agradables i petits per a un projecte LED. Vaig utilitzar capçaleres masculines per deixar espai a les dones que saltaven. La inversió dels connectors no cabrà al recinte. Aquest enfocament també és fàcil de soldar. També he utilitzat filferro de nucli sòlid de calibre 20 amb connectors femelles encastats, i això també funciona, però suposa un esforç més gran.

Aquestes barres utilitzen el mateix enfocament LED de sacrifici per al primer LED. A la pràctica, realment no es nota. A més, la lleugera bretxa entre els dos primers també és gairebé desapercebuda

Si teniu intenció d’utilitzar els clips per muntar el canal d’alumini, la barra d’alumini que connecta el canal amb la caixa del projecte pot dificultar el muntatge directe dels clips a la paret, de manera que és possible que hàgiu de posar unes volanderes o una femella solta allà per resaltar-los 1/16.

Pas 3: Codi de malla

Image
Image
Codi de malla
Codi de malla

Cadascuna de les barres de LED està executant el mateix codi. La base d’aquest projecte és la biblioteca painlessMesh a https://gitlab.com/BlackEdder/painlessMesh. Aquesta biblioteca gestiona la major part del treball de baix nivell en establir punts d'accés, servidors web, etc. Cada barra és un node de malla.

La malla té un controlador i els avisos de canvi d’animació s’emeten a tots els nodes / barres LED. Per a una malla gran, hi pot haver una certa latència en la missatgeria, però per a l’escala que treballava no es notava.

En iniciar-se, el node assumeix que és el controlador, però el missatge de canvis de nodes provoca una avaluació. L'identificador de # xip més baix de la malla es converteix en el controlador. Això sol trigar un segon o dos a establir-se tots els nodes i assumir un únic controlador. Podríeu esforçar-vos a tornar a sincronitzar més ràpidament (animació mitjana), però aquests missatges de canvi són bastant xerradets, de manera que la xarxa triga una mica a establir-se de totes maneres. A la pràctica, un cop es tornen a sincronitzar, es mantenen molt sòlids.

Per a les animacions que creuen barres, el codi obté una llista dels nodes, l'ordena i només dibuixa si el node actual és el que es dibuixa. S'ordenen per ordre d'identificació de xips, de manera que podeu fer animacions que siguin consistents, independentment de quan s'inicien. A més, les animacions s’adaptaran als nodes que s’estan deixant de banda.

El codi d'animació apareix en tres llocs. La primera és la funció de rebre una trucada, on la barra ha rebut una nova ordre d’animació. Això és bastant senzill: només defineix la mida del pas de sincronització per a l'animació i restableix els comptadors. El segon lloc és a la funció de bucle. Allà, el codi comprova si s'ha realitzat l'animació actual i passa al pas següent. El lloc final del codi d’animació és la funció stepAnimation, on es fa tot el dibuix.

El sistema utilitza el temporitzador millis per actualitzar, evitant l'ús de la funció de retard, ja que bloqueja algunes de les biblioteques. El codi millis hauria de canviar-se correctament.

Tingueu en compte que tenia problemes amb la biblioteca NeoPixel i el painlessMesh amb més d’un LED, així que vaig canviar a FastLED.

Aquí teniu el codi a GitHib i també s’adjunta aquí. El carregueu gairebé a totes les barres i ja esteu a punt per codificar l’animació LED.

Recomanat: