Actualice su corona navideña con una matriz LED activada por movimiento

  • Gabriel Brooks
  • 0
  • 3843
  • 602
Anuncio

La Navidad está aquí nuevamente, y ya sea que se trate de tus vacaciones favoritas del año o que te haga sudar frío, las decoraciones comienzan a subir. Este año, ¿por qué no incorporar tecnología DIY en sus decoraciones para que se destaquen??

En este proyecto construiremos una matriz de LED 8 x 8 resistente a la intemperie, activada por movimiento desde cero ... por menos de $ 20. Está diseñado para caber en el centro de una corona de puerta de Navidad estándar, aunque podría usarse en cualquier lugar de la casa. Y dado que funciona con baterías, también en cualquier lugar fuera de la casa!

Lista de partes

Para este proyecto necesitarás:

  • Arduino.
    • Utilicé el Nano por su tamaño pequeño, pero podría usar casi cualquier microcontrolador compatible con Arduino Guía de compra de Arduino: ¿Qué placa debería obtener? Guía de compra de Arduino: ¿Qué placa debería obtener? Hay tantos tipos diferentes de placas Arduino por ahí, que te perdonarían por estar confundido. ¿Cuál deberías comprar para tu proyecto? Permítanos ayudarlo con esta guía de compra de Arduino! .
  • 64 x LED rojos.
  • 8 resistencias de 220 ohmios.
  • Sensor de movimiento PIR.
    • Muchos kits de inicio de Arduino ¿Qué se incluye en un kit de inicio de Arduino? [MakeUseOf explica] ¿Qué se incluye en un kit de inicio Arduino? [Explica MakeUseOf] Anteriormente presenté el hardware de código abierto Arduino aquí en MakeUseOf, pero necesitarás más que el Arduino real para construir algo y comenzar realmente. Los "kits de inicio" de Arduino son ... ven con estos. Compré un paquete múltiple de Amazon por $ 10.
  • 1 pieza de tablero de prototipos.
    • El que se usó aquí fue de 9 x 7 cm, aunque puede usar cualquier tamaño que desee.
  • Batería de 7-12v.
    • Aquí se usa un paquete de batería simple por razones de presupuesto, pero un cargador de banco móvil Los mejores bancos de energía de Pokemon Go Los mejores bancos de energía de Pokemon Go Pokemon Go supera a la batería de un teléfono. Exprimir un poco más de jugo capturador de Pokémon de tu teléfono requiere un banco de energía. ¿Pero cuál es la mejor batería que existe? puede durar aún más.
  • Surtido de piezas cortas de alambre.
  • Caja Tupperware o caja resistente a la intemperie similar.
    • Asegúrese de que sea lo suficientemente grande como para que quepan todos sus componentes dentro!
  • corona de Navidad.
    • Cualquiera servirá, solo asegúrese de que la caja del gabinete encaje dentro de ella.
  • Soldador y soldador.

Si bien no es estrictamente necesario, ya que podría soldar los componentes directamente al Nano, también encontré una pequeña placa de prueba muy útil durante las pruebas. Una pistola de pegamento caliente también ayuda a juntar todas las partes.

Este proyecto requiere bastante soldadura, y como principiante puede parecer desalentador. Personalmente, todavía soy un principiante en la soldadura y descubrí que no es tan difícil o lento como parece. Si también es nuevo en la soldadura, aquí hay algunos buenos consejos para ayudar Aprenda a soldar, con estos simples consejos y proyectos Aprenda a soldar, con estos simples consejos y proyectos ¿Está un poco intimidado por la idea de un hierro caliente y ¿metal fundido? Si desea comenzar a trabajar con la electrónica, necesitará aprender a soldar. Dejanos ayudar. .

Si realmente no le gusta la idea de soldar, este proyecto también es posible con tiras de LED Proyecto de fin de semana: Construya una pantalla gigante de píxeles LED Proyecto de fin de semana: Construya una pantalla gigante de píxeles LED Me encantan los píxeles LED: brillantes, fáciles de controlar, barato y muy versátil. Hoy los convertiremos en una gran pantalla de píxeles que se puede colgar en la pared. , o una matriz LED lista para usar que puede tener en su kit de inicio. Algunos ajustes de código serán necesarios si decide seguir esa ruta.

Configurando el Arduino

Comenzaremos con el diagrama de circuito del Arduino y los cables que conectaremos a nuestro sensor PIR y matriz LED.

Dentro de la matriz

Ahora para hacer nuestra matriz de LED 8 x 8. Para empezar, es una buena idea crear una fila y una columna de la matriz, para asegurarse de que esté exactamente donde la quiere en el tablero de prototipos..

En la foto de arriba, todos los LED están colocados de modo que los ánodos (la pata positiva más larga) estén hacia la parte superior del protoboard. Esto es importante, ya que crearemos columnas de ánodos comunes uniéndolos y filas de cátodos comunes (la pata negativa más corta). Obtener esto ahora ahorrará dolores de cabeza más adelante!

Vamos a construir una matriz de cátodo de fila común, este diagrama muestra cómo está todo conectado.

Puede parecer un poco desalentador al principio, pero es una configuración bastante simple. En cada fila, todos los cátodos se unen de derecha a izquierda y luego se unen a uno de nuestros pines Arduino. Después de esto, hacemos lo mismo para cada columna de ánodos. De esta manera, dependiendo de la columna a la que apliquemos energía y a qué fila unimos a tierra, podemos encender cualquier LED individual en la matriz.

Que comience la soldadura

Comience colocando su primera fila de LED. Asegúrate de que todos los ánodos estén orientados hacia la parte superior y dale la vuelta. Descubrí que agregar otro LED en cada esquina y unir otra pieza de protoboard en la parte superior con un cable elástico ayudó a mantener todo en su lugar.

Ahora, uno por uno, doble la pata del cátodo (corta) de cada LED hacia la izquierda para que se superpongan entre sí. Es más fácil comenzar desde el lado izquierdo y trabajar a la derecha. Si está utilizando una pieza de protoboard más grande, primero puede soldarlos a la placa y conectarlos entre sí mediante las almohadillas. Tenga cuidado de no unir ninguno de los cátodos a ninguna otra línea del tablero ni a ninguno de los ánodos.!

Repita este proceso para las ocho filas, y cuando haya terminado, debería tener algo parecido a esto:

Ánodos de salto!

Las columnas de ánodos son un poco más complicadas. En el diagrama anterior, los ánodos se curvan cada vez que cruzan una fila de cátodos. Esto se debe a que no pueden tocar las filas en absoluto. Debemos doblar los ánodos sobre las filas de cátodos y unirlos entre sí. Puede encontrar que usar un bolígrafo para doblar las piernas ayuda mucho.

Haga esto para cada fila de ánodos y conecte una resistencia a cada ánodo superior. Probablemente le resulte más fácil colocar la resistencia en el siguiente orificio del protoboard y unir las almohadillas con soldadura. Ahora debería tener algo como esto:

¡Felicidades! La matriz LED está completa. Verifique su soldadura a fondo en esta etapa para asegurarse de que no haya interrupciones y que ninguna de las columnas toque las filas. ¡No se preocupe si no se ve bonito, solo necesitamos que funcione! Puede verificar cada LED individualmente ahora conectando 5v a cualquiera de los extremos de la columna, y conectado a tierra a cualquiera de los extremos de la fila.

Siempre que todo esté bien, conecte los cables de conexión a cada columna y cada fila, y conéctelos a su Arduino como se muestra en el diagrama de arriba.

Vamos a codificar

Abra el IDE de Arduino y elija su placa y puerto. Si es nuevo en Arduino, consulte esta guía de inicio. Introducción a Arduino: una guía para principiantes Introducción a Arduino: una guía para principiantes Arduino es una plataforma de creación de prototipos de electrónica de código abierto basada en hardware y software flexible y fácil de usar. Está destinado a artistas, diseñadores, aficionados y cualquier persona interesada en crear objetos o entornos interactivos..

Ingrese este código en el editor. Es un código bastante denso si no está familiarizado con él, pero está disponible aquí completamente anotado para ayudar a comprender cómo funciona..

const int fila [8] = 2,3,4,5,6,7,8,9; const int col [8] = 10,11,12,14,15,16,17,18; int pirPin = 19; int pirState = BAJO; int val = 0; bool pirTrigger = falso; const int pirLockTime = 12000; int pirCountdown = pirLockTime; int píxeles [8] [8]; const int refreshSpeed ​​= 500; int countDown = refreshSpeed; int currentCharIndex = 0; typedef bool CHAR_MAP_NAME [8] [8]; const CHAR_MAP_NAME en blanco = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; const CHAR_MAP_NAME threedownthreein = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; const int noOfFrames = 5; const CHAR_MAP_NAME * charMap [noOfFrames] = & blank, & threedownthreein, & blank, & blank, & threedownthreein; configuración nula () para (int i = 0; i<8;i++) pinMode(row[i], OUTPUT); pinMode(col[i],OUTPUT); //motion sensor pinMode(pirPin, INPUT); digitalWrite(col[i], LOW);   void screenSetup() const CHAR_MAP_NAME *thisMap = charMap[currentCharIndex]; for (int x = 0; x < 8; x++)  for (int y = 0; y =noOfFrames) currentCharIndex = 0;   void refreshScreen() for (int currentRow = 0; currentRow < 8; currentRow++) digitalWrite(row[currentRow], LOW); for (int currentCol = 0; currentCol < 8; currentCol++) int thisPixel = pixels[currentRow][currentCol]; digitalWrite(col[currentCol], thisPixel); if (thisPixel == HIGH)  digitalWrite(col[currentCol], LOW);   digitalWrite(row[currentRow], HIGH);   void loop() val = digitalRead(pirPin); if (val == HIGH) pirTrigger = true;  else if (val == LOW && pirCountdown  0)  refreshScreen(); countDown--; pirCountdown--; if(countDown <= 0)  countDown = refreshSpeed; screenSetup();    

Las partes importantes para entender son:

los refreshSpeed variable. Esta variable determina cómo se actualiza el tiempo entre cada pantalla. Un número mayor significa una espera más larga.

El const CHAR_MAP_NAMEs. Aquí es donde coloca cada mapa de caracteres (o marco si es más fácil pensar en ellos de esa manera) que desea mostrar.

los noOfFrames variable. Esto determina cuántos fotogramas se muestran en una reproducción completa. Tenga en cuenta que puede ser diferente al número de mapas de caracteres. Por ejemplo, si desea mostrar “UN GATO” solo necesitaría definir cuatro marcos distintos: en blanco, un UNA, una do y un T.

Ahora, cuando el sensor de movimiento detecta movimiento, la pantalla LED debe parpadear tres veces hacia abajo y tres hacia adentro desde la parte superior izquierda. Si no se muestra correctamente, revise su cableado nuevamente para asegurarse de que todo esté en el lugar correcto. Cuando agrega su propia imagen o mensaje, puede cortarse temprano o reproducirse por demasiado tiempo. Intenta cambiar el pirLockTime variable hasta que juegue durante el tiempo que desee.

El proceso de agregar cada marco a la pantalla LED puede ser un poco tedioso, por lo que hemos creado esta hoja de cálculo para que sea un poco más fácil crear texto e imágenes para su matriz LED (haga una copia de la Hoja de Google para que pueda editarla). ).

Usando la hoja de cálculo, puede copiar sus creaciones directamente en el código.

Haz que desafíe a los elementos

Ahora que tenemos una matriz de LED en funcionamiento, necesitamos una forma de sobrevivir al clima invernal. Si bien este método puede no resistir una tormenta tropical o ser sumergido en la piscina, debería ser suficiente para mantener todos los componentes electrónicos a salvo de los elementos.

Utilicé una caja redonda de Tupperware que tiene 15 cm de diámetro y 6 cm de profundidad, ya que se adapta perfectamente a mis componentes. Corte una ventana en la tapa un poco más grande que su matriz LED, y pegue una película de plástico transparente, asegurándose de no dejar espacios para que ingrese líquido. El plástico resistente de algunos empaques funcionaría mejor, pero esto fue todo lo que tenía. También puede colocar algunos soportes para el protoboard, aunque ambos trabajos pueden realizarse fácilmente con una cinta resistente al agua.

Luego, haga un pequeño agujero debajo de la ventana, luego ensanche con cuidado y lentamente hasta que su sensor PIR solo pueda pasar. Desea que se ajuste lo más ajustado posible.

Conecte su sensor PIR y complete cualquier espacio que pueda ver con cinta adhesiva o pegamento caliente.

Limpie cualquier cinta o pegamento que pueda impedir que la caja se cierre correctamente y agregue todos sus componentes a la caja junto con su batería. Aquí, se usó una batería AA simple, conectada directamente al pin VCC del Nano. Se agregaron algunos pequeños trozos de corcho al exterior del recinto para ayudar a colgar la estructura en el centro de la corona..

Y hemos terminado

Una vez que la caja esté sellada, cuélguela con su corona de Navidad y espere las reacciones de sus visitantes a su bienvenida personal de alta tecnología de $ 20. Incluso podría ir un paso más allá y crear impresionantes decoraciones de bricolaje Decoraciones navideñas impresas en 3D para Perfect Geeky Holidays Decoraciones navideñas impresas en 3D para Perfect Geeky Holidays ¿Por qué no ahorrar algo de dinero esta Navidad e imprimir en 3D algunos adornos festivos para su hogar? para otra parte de la casa también!

En este proyecto, hemos construido un sistema de matriz de LED autónomo desde cero, que se activa por movimiento y puede sobrevivir estando al aire libre en todas las condiciones climáticas. Esta construcción será útil mucho después de que termine la temporada de vacaciones en otros proyectos, y la misma técnica podría usarse para crear recintos a prueba de intemperie baratos para otros proyectos también.

¿Has construido algo para darle a tu Navidad un toque DIY? ¿Estás planeando algún regalo de Navidad con temas de bricolaje este año? Háganos saber en los comentarios a continuación!




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.