Tabla de contenido:

LED sincronizados de todo el vecindario: 5 pasos (con imágenes)
LED sincronizados de todo el vecindario: 5 pasos (con imágenes)

Video: LED sincronizados de todo el vecindario: 5 pasos (con imágenes)

Video: LED sincronizados de todo el vecindario: 5 pasos (con imágenes)
Video: TUTORIAL RESOLUME 5 Parte 1 de 2 2024, Noviembre
Anonim
LED sincronizados en todo el vecindario
LED sincronizados en todo el vecindario
LED sincronizados en todo el vecindario
LED sincronizados en todo el vecindario
LED sincronizados en todo el vecindario
LED sincronizados en todo el vecindario

Tenía algunas barras LED inalámbricas que pensé que podría poner para las vacaciones. Pero, en mi jardín, también podrían haber sido cableados. Entonces, ¿cuál es el desafío más genial? ¡Decoraciones LED en todas las casas de mi cuadra con una pantalla sincronizada! En este año loco, es una forma de conectarnos.

Estos son hilos de LED alimentados por ESP8266 y están conectados en malla WiFi, por lo que todos muestran el mismo paso en la secuencia de animación al mismo tiempo. Dado que usan código de malla para conectarse, pueden estar separados por unas pocas casas, y los mensajes se pasan de un nodo a otro.

Funcionan con 5 voltios y yo usé adaptadores de corriente, pero también pueden funcionar durante un tiempo con baterías USB. Por lo tanto, son portátiles, ejecutan su propia red WiFi que no está conectada a Internet y pueden funcionar fuera de la red.

Todos nuestros vecinos estaban emocionados de tener esta decoración compartida, y es realmente agradable verlos a todos mostrando la misma exhibición mientras caminas por la calle. Tengo algunas fotos aquí de algunas frente a mi casa para probar, pero fue muy difícil fotografiarlas en la calle.

Paso 1: Partes

Partes
Partes
Partes
Partes
Partes
Partes

ESP8266 D1 Mini: utilicé los módulos D1 Mini ya que todo lo que necesito es un pin de E / S para los LED. Este proyecto podría realizarse sin soldaduras utilizando un protector de terminal como este y un módulo ESP8266 diferente. Existe una versión del D1 Mini con una mejor antena: el D1 Mini Pro. Tiene una antena de cerámica y un conector U. FL para una antena externa, pero necesita mover una resistencia de 0 ohmios de montaje en superficie para la antena externa. Más discusión en un paso posterior.

Hilos LED WS2811: utilicé hilos WS2811 ya que son impermeables (excepto los conectores JST) y fáciles de trabajar. Las tiras WS2812b "Neopixel" usarían exactamente el mismo código, etc. Usé las de 5v, pero puede obtenerlas en 12v (use menos corriente); entonces necesitaría un convertidor de voltaje para los ESP8266s. También puede obtener hilos de LED WS2811 con conectores a prueba de agua si lo desea. Las hebras de LED que utilicé tienen conectores JST SM en ambos extremos, la hembra es la entrada, aunque los he visto conectados al revés (macho como entrada). La dirección también está marcada en los propios LED. También hay cables de inyección de energía: corté los extremos para que las piezas estañadas no pudieran cortocircuitarse. También puedes comprarlos en paquetes de 10.

Resistencia de 330 ohmios y 1/4 vatios: se utiliza en el pin de datos del ESP8266 para evitar el parpadeo de los LED.

Conector macho JST SM de 3 clavijas: se conectan a las tiras de LED. Tenga en cuenta que el conector "macho" tiene una capucha sobre él.

Conector hembra CCTV de 2,1 mm: se utilizan para el conector de alimentación. Puede usar algún otro sistema de conectores para esto si lo desea.

Fuente de alimentación de 5 V: la clasificación de amperios depende de la cantidad de LED que tenga. Un 2A probablemente esté bien para 50 o 100 LED que nunca están completamente encendidos (consulte el paso de cableado para obtener más información).

Cable de extensión JST SM de 3 clavijas o un cable de extensión de 2,1 mm: dado que el conector JST en el D1 Mini está cerca de los LED, generalmente desea una extensión para permitir que los LED se coloquen más lejos de la CPU. En mi caso, terminé colocando la CPU más arriba en la decoración para obtener un mejor alcance de WiFi, así que mantuve la CPU cerca de los LED y usé un cable de extensión de 2.1 mm en su lugar.

Cable USB a 2,1 mm, opcional, le permite alimentar el hilo desde cualquier fuente USB o batería.

Tubo termorretráctil de 3 mm: solo necesita aproximadamente 1 de este para cubrir la resistencia del D1 Mini.

Tubo termorretráctil transparente de 20 mm: esto es en parte opcional para proteger los conectores del D1 Mini. Asegúrese de sujetar el interruptor de reinicio después de la aplicación si el tubo comprime el interruptor.

Caja impermeable: para proteger la fuente de alimentación y la CPU en el exterior. La mayoría de mis vecinos solo usaban bolsas de plástico.

Conducto EMT de 1/2 "- una pieza de 29" encaja en la forma del bastón de caramelo - utilicé 4 bridas para sujetarlo. Probé PVC de 1/2 "y encaja, pero toca los LED de ambos lados.

Varilla de refuerzo de 3/8 "x 3 ': una vez que el EMT está unido a la forma, puede golpear la barra de refuerzo en el suelo y colocar la tubería EMT sobre ella. La barra de refuerzo de 1/2" encajará, pero deberá cortar cualquier partes dobladas y está cerca; si se aplana o algo al golpearlo, estará muy apretado. Por lo tanto, es más probable que el 3/8 "despeje fácilmente el diámetro interior de la tubería EMT.

Forma de bastón de caramelo: mira el paso en estos, puedes hacer una forma de bricolaje, colocarlos sobre un arbusto o usar una forma como esta.

Paso 2: Ensamblaje del controlador

Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador
Ensamblaje del controlador

El controlador consta del D1 Mini (ESP8266), un conector hembra CCTV de 2,1 mm, una resistencia de 330 ohmios y un conector macho JST de 3 pines.

La suposición para este proyecto es que utilizará 50-100 LED. Si desea utilizar más, deberá utilizar la inyección de energía para alimentar todos los LED. Vea este otro Instructable para una discusión más profunda sobre eso.

Con 50 LED todos en blanco completo, consumirían 50 x 0.06A = 3 amperios. Entonces, con un adaptador 2A, asumimos que nunca estarán completamente encendidos. Para 100 LED, el máximo es 6A, por lo que se debe tener aún más cuidado de tener solo algunos encendidos a la vez. Incluso con 100 LED a 0.02A cada uno, tenemos 2 amperios en uso. Por lo tanto, se recomienda una fuente de alimentación de mayor corriente, aunque sintonicé las pantallas para no usar todos los LED o colores a la vez, los atenué mucho y comencé con suministros de 2A con otros más grandes en reserva. Este es un gran artículo sobre cómo reducir los requisitos de energía.

La resistencia de 330 ohmios en línea con el cable de datos es para evitar el parpadeo del timbre electrónico, ya que los datos tienen una frecuencia bastante alta. Esto es más un factor con muchos LED, pero es una buena práctica agregarlo.

Soldé la resistencia al D1 Mini directamente, pero dejé aproximadamente 1/8 "del cable por encima de la placa para poder doblarlos planos. Usé aproximadamente 1" de termorretráctil de 3 mm en la resistencia para evitar que se cortocircuite en el tablero.

Utilicé un termorretráctil transparente de 20 mm para proteger el D1 Mini de tocar el metal, etc. Asegúrese de revisar el interruptor de reinicio en el costado; es posible que deba cortar el termorretráctil ligeramente para asegurarse de que no presione el interruptor. Necesitaba eso en todos los míos.

Tenga en cuenta que no parecía necesitar un cambiador de nivel de las salidas 3.3V ESP8266 y los LED funcionando a 5V (dado que la especificación del chip LED es que la línea de datos no sea menos del 70% del suministro). Necesitaba un diodo / LED de sacrificio en proyectos anteriores (Paso 3) con tiras WS2812b, pero los chips WS2811 directos en los LED parecen estar bien hasta ahora.

¡Podrías hacer esto sin soldar! Un protector de terminal ESP8266 con una CPU diferente funcionaría igual de bien. El factor de forma D1 Mini es agradable y pequeño, pero todos funcionan de la misma manera.

Paso 3: formas

Formas
Formas
Formas
Formas
Formas
Formas

Las hebras de LED pueden ser de forma libre, o puede convertirlas en formas, ya sea de bricolaje o de una tienda en línea. Pedí algunas formas a HolidayCoro: algunos árboles LED pequeños, una media y un bastón de caramelo. La media tomó 50 LED muy bien, la longitud de una hebra. El árbol pequeño tiene 100 LED, pero puede hacer la mitad si lo desea, de cara a la calle. Al final, el bastón de caramelo fue el favorito de los vecinos ya que era un poco más grande. 99 LED, y dejé el último en la parte de atrás con la idea de que podría usarse para depurar.

Dado que las formas venían en blanco, decidimos pintarles rayas rojas para que se vean mejor durante el día. Los oculté, hice una arena fina rápida, una toallita con acetona (quitaesmalte de uñas sin diluir) y usé dos capas de pintura en aerosol que funciona en plástico. Parecía adherirse bien. Lo hicimos principalmente en un lado y algunos en el otro lado para un par de casas que tenían 2 de ellas.

Paso 4: Código y WiFi

Código Wi-Fi
Código Wi-Fi
Código Wi-Fi
Código Wi-Fi
Código Wi-Fi
Código Wi-Fi

El D1 Mini utiliza un módulo Espressif ESP8266. Lo programé usando el IDE de Arduino, por lo que se siente como un Arduino poderoso con WiFi incorporado. Hay numerosas instrucciones en Internet sobre cómo configurar el IDE de Arduino para ESP8266 y D1 Mini, así que no las repetiré aquí.

El código se basa en un Instructable anterior. Utiliza la biblioteca Painless Mesh para que todas las CPU se comuniquen entre sí. Usé la biblioteca FastLED ya que tuve problemas anteriormente con la biblioteca de malla y la biblioteca de Neopixel, y no volví a probar eso esta vez.

No estoy seguro de cuál es el máximo en el número de nodos. Algunas publicaciones indican que estará limitado por la cantidad de mensajes y tipos de CPU y tal vez el límite sea de alrededor de 30-60 nodos. Esta aplicación no envía muchos mensajes, solo el cambio de animación, aunque hay algunos automáticos como el cambio de malla y los mensajes de sincronización de tiempo.

Puede conectar los LED al D1 Mini mientras codifica, pero es posible que desee un suministro externo si tiene más de 50, ya que posiblemente excederá el suministro del puerto USB de su computadora y el regulador de potencia en el D1 Mini. Dicho esto, con mi código que no enciende los LED por completo, pude programar 100 LED en la conexión USB sin problemas.

El módulo ESP8266 tiene WiFi integrado. Dado que el código de malla (PainlessMesh) que estamos usando crea un punto de acceso en cada módulo, el rango para un alcance amplio en el vecindario es importante. Usé formas de bastón de caramelo y puse la CPU en la parte superior para obtener el mejor rango, y era de 50 a 100 pies, una yarda o dos en mi vecindario. Una línea de visión (LOS) más alta y mejor mejora las cosas. El rango cruzó la calle en algunos casos (dependía más de que los autos bloquearan la LOS).

Hubo un par de casas que no se sincronizaron debido a obstrucciones de WiFi, pero las luces se ven bien incluso cuando no están sincronizadas. Hice un nodo "repetidor" con solo un D1 Mini en un dispositivo que funciona con una batería USB. Cuando se colocan entre las casas, se sincronizaron correctamente. Para un repetidor más remoto, posiblemente podría usar una batería USB solar, aunque no se cargan muy rápido.

Seguía viendo problemas de sincronización intermitente, luego encontré esta nota sobre tener demasiados nodos o tenerlos dispersos:

gitlab.com/painlessMesh/painlessMesh/-/wik…

¡Usando esa configuración, comenzó a funcionar mucho mejor! Esto designa un nodo en particular como el principal, por lo que mi código para negociar el nodo de control no es necesario, lo que puede dividir la malla. He adjuntado una muestra de código actualizado / alternativo. Este enfoque requiere que el nodo principal esté encendido para que estén sincronizados, por lo que la malla no es tan tolerante a fallas, pero funciona mejor cuando se extiende como lo está la mía. Asegúrese de editar el código para esa versión; solo se debe establecer un nodo en la raíz; consulte los comentarios en el código.

También agregué una actualización más a la variante SetRoot: agregué código para restablecer el ESP8266 si no ha habido comandos durante 10 minutos. Esto le da al nodo la oportunidad de redescubrir el nodo raíz. Esto pareció ayudar con algunos de los nodos más distantes.

Al final de la temporada, pude probar algunos módulos D1 Mini Pro. Tienen una antena de cerámica en la placa, y también puedes usar un conector U. FL y una antena externa si mueves una resistencia de cero ohmios. Probé un par que tenía problemas de sincronización con el D1 Mini Pros con las antenas de cerámica y funcionaron mejor. Hice algunas pruebas posteriores con un nodo en mi casa. Según los resultados, cambiaremos a los módulos D1 Mini Pro con antenas cerámicas el próximo año.

Con un D1 Mini remoto: solo el D1 Mini Pro con una antena externa lo vio, y la intensidad de la señal era baja

Con un D1 Mini Pro remoto con antena de cerámica: el D1 Mini, el D1 Mini Pro con antena de cerámica y el D1 Mini Pro con antena externa lo vieron con aproximadamente la misma intensidad de señal, por lo que fue una mejora. La orientación de las placas (antenas) importa hasta cierto punto

Con un D1 Mini Pro remoto con antena externa: Todas las demás placas lo vieron, pero la intensidad de la señal no fue mucho mejor que las pruebas con la antena de cerámica integrada, así que no me molestaré en mover esas resistencias de cero ohmios y poner antenas en el bastones de caramelo

Paso 5: Ensamblaje final

Montaje final
Montaje final
Montaje final
Montaje final
Montaje final
Montaje final

Una vez que tenga el controlador listo y programado, todo lo que necesita hacer es conectar los LED al controlador con los cables JST y una fuente de alimentación de 5 V en el conector de 2,1 mm.

La extensión JST debería ser útil para mantener el controlador y el adaptador de corriente siempre alejados de los LED. O, para subir la CPU, coloqué una pequeña bolsa de plástico sobre ellos asegurada con una brida y usé un cable de extensión de 2.1 mm para la fuente de alimentación.

La caja impermeable ayudará a proteger el adaptador y la CPU, pero la mayoría de mis vecinos usaban bolsas de plástico simples.

Desafío de velocidad de decoraciones navideñas
Desafío de velocidad de decoraciones navideñas
Desafío de velocidad de decoraciones navideñas
Desafío de velocidad de decoraciones navideñas

Segundo premio en el desafío de velocidad de decoraciones navideñas

Recomendado: