Tabla de contenido:

Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino: 7 pasos (con imágenes)
Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino: 7 pasos (con imágenes)

Video: Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino: 7 pasos (con imágenes)

Video: Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino: 7 pasos (con imágenes)
Video: 🚦 COMO HACER UN CUBO LED - 3X3X3 - 8X8X8 - SHIELD ARDUINO UNO - MEGA - PARTE 1 2024, Mes de julio
Anonim
Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino
Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino
Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino
Cómo construir un cubo LED de 8x8x8 y controlarlo con un Arduino

Enero de 2020 editar:

Dejo esto en caso de que alguien quiera usarlo para generar ideas, pero ya no tiene sentido construir un cubo basado en estas instrucciones. Los circuitos integrados de controladores LED ya no se fabrican, y ambos bocetos se escribieron en versiones antiguas de Arduino y Processing y ya no se ejecutan. No sé qué hay que cambiar para que funcionen. Además, mi método de construcción resultó en un desorden desigual. Mi sugerencia es seguir las instrucciones de otro instructable o comprar un kit. Este cubo costaba alrededor de $ 50 en 2011, puedes comprar un kit en eBay por alrededor de $ 20 ahora.

Introducción original:

Hay muchos cubos de LED en Instructables, entonces, ¿por qué hacer otro? La mayoría son para cubos pequeños que constan de 27 o 64 LED, rara vez más grandes ya que están limitados al número de salidas disponibles en el microcontrolador. Este cubo tendrá 512 LED y solo necesitará 11 cables de salida del Arduino. ¿Cómo es esto posible? Utilizando el controlador LED A6276EA de Allegro Microsystems.

Te mostraré cómo hice el cubo en sí, la placa del controlador y, finalmente, el código para que brille.

Paso 1: Materiales

Materiales
Materiales

Todas las piezas que necesitará para construir el cubo: 1 Arduino / Freeduino con Atmega168 o chip superior 512 LED, el tamaño y el color dependen de usted, utilicé chips de controlador LED rojo 4 A6276EA de 3 mm de los transistores Allegro 8 NPN para controlar el flujo de voltaje, Utilicé el transistor BDX53B Darlington 4 resistencias de 1000 ohmios, 1/4 vatios o más 12 resistencias de 560 ohmios, 1/4 vatios o más 1 capacitor electrolítico de 330 uF 4 toma IC de 24 pines 9 tomas IC de 16 pines 4 "x4" (o más grandes) pieza de perfboard para sujetar todas las partes, Un ventilador de computadora viejo Un cable controlador de disquete viejo Una fuente de alimentación de computadora vieja Una gran cantidad de cables de conexión, soldadura, soldador, fundente, cualquier otra cosa para hacer su vida más fácil mientras hace esto. Pieza de madera de 7 "x 7" (o más grande) utilizada para hacer la plantilla de soldadura LED. Una bonita caja para exhibir su cubo terminado. Mi Arduino / Freeduino de elección es la placa Bare Bones (BBB) de www.moderndevice.com. Los LED se compraron en eBay y cuestan $ 23 por 1000 LED enviados desde China. Los dispositivos electrónicos restantes se compraron en Newark Electronics (www.newark.com) y solo deberían costar alrededor de $ 25. Si tiene que comprar todo, este proyecto solo debería costar alrededor de $ 100. Tengo muchos equipos informáticos viejos, por lo que esas partes salieron del montón de chatarra.

Paso 2: ensamblar las capas

Ensamblar las capas
Ensamblar las capas
Ensamblar las capas
Ensamblar las capas
Ensamblar las capas
Ensamblar las capas
Ensamblar las capas
Ensamblar las capas

Cómo hacer 1 capa (64 LED) de este cubo de 512 LED: Los LED que compré tenían 3 mm de diámetro. Decidí usar LED pequeños para reducir costos y hacer que el tamaño final del cubo sea lo suficientemente pequeño como para colocarlo en mi escritorio o estante sin ocupar completamente el escritorio o el estante. Dibujé una cuadrícula de 8x8 con aproximadamente 0,6 pulgadas entre líneas. Esto me dio un tamaño de cubo de alrededor de 4,25 pulgadas por lado. Taladre agujeros de 3 mm donde las líneas se unen para hacer una plantilla que sujetará los LED mientras suelda cada capa. El A6276EA es un dispositivo de fregadero actual. Esto significa que proporciona una ruta a tierra en lugar de una ruta a la fuente de voltaje. Deberá construir el cubo en una configuración de ánodo común. La mayoría de los cubos están construidos como cátodos comunes. El lado largo del LED es generalmente el ánodo, revisa el tuyo para asegurarte. Lo primero que hice fue probar todos los LED. Sí, es un proceso largo y aburrido y puede omitirlo si lo desea. Preferiría dedicar tiempo a probar los LED que a encontrar un punto muerto en mi cubo después de ensamblarlo. Encontré 1 LED muerto de los 1000. No está mal. Corte 11 piezas de cable de conexión sólido y no aislado a 5 pulgadas. Coloque 1 LED en cada extremo de una fila en su plantilla y luego suelde el cable a cada ánodo. Ahora coloque los 6 LED restantes en la fila y suelde esos ánodos al cable. Esto puede ser vertical u horizontalmente, no importa siempre que hagas todas las capas de la misma manera. Al terminar cada fila, recorte el exceso de plomo de los ánodos. Dejé alrededor de 1/8 . Repita hasta que haya terminado las 8 filas. Ahora suelde 3 piezas de cable de conexión en las filas que acaba de hacer para conectarlas todas en una sola pieza. Luego probé la capa adjuntando 5 voltios enganche el enrejado de cables a través de una resistencia y tocó el cable de tierra a cada cátodo. Reemplace los LED que no se encienden. Retire con cuidado la capa de la plantilla y déjela a un lado. Si dobla los cables, no se preocupe, solo enderécelos lo mejor que puedas. Es muy fácil de doblar. Como puedes ver en mis fotos, tenía muchos cables doblados. Felicitaciones, has terminado 1/8. Haz 7 capas más. OPCIONAL: Para soldar las capas juntas (Paso 3) más fácilmente, mientras que cada capa subsiguiente todavía está en la plantilla, doble el cuarto de pulgada superior del cátodo hacia adelante de 45 a 90 grados. Esto permitirá que el cable alcance alrededor del LED al que se está conectando y hará que la soldadura sea mucho más fácil. más fácil. No hagas esto en tu primera capa, declararemos que una es la capa inferior y los clientes potenciales deben ser recto.

Paso 3: ensambla el cubo

Ensamblar el cubo
Ensamblar el cubo
Ensamblar el cubo
Ensamblar el cubo

Cómo soldar todas las capas juntas para hacer un cubo: La parte difícil casi ha terminado. Ahora, vuelva a colocar con cuidado una capa en la plantilla, pero no ejerza demasiada presión, queremos poder quitarla sin doblarla. Esta primera capa es la cara superior del cubo. Coloque otra capa encima de la primera, alinee los cables y comience a soldar. Me pareció más fácil hacer las esquinas primero, luego el borde exterior, luego las filas interiores. Siga agregando capas hasta que haya terminado. Si dobló previamente los cables, asegúrese de guardar la capa con cables rectos para el final. Es la parte inferior Tenía demasiado espacio entre cada capa, por lo que no obtuve una forma de cubo. No es gran cosa, puedo vivir con eso.

Paso 4: construcción de la placa controladora

Construyendo la placa del controlador
Construyendo la placa del controlador
Construyendo la placa del controlador
Construyendo la placa del controlador
Construyendo la placa del controlador
Construyendo la placa del controlador

Cómo construir la placa controladora y conectarla a tu Arduino: sigue el esquema y construye la placa como quieras. Coloqué los chips del controlador en el centro de la placa y usé el lado izquierdo para sostener los transistores que controlan la corriente a cada capa del cubo, y usé el lado derecho para sostener los conectores que van desde los chips del controlador a los cátodos de las columnas LED Encontré un viejo ventilador de computadora de 40 mm con un conector molex hembra para enchufarlo a una fuente de alimentación de computadora. Esto fue perfecto. Una pequeña cantidad de flujo de aire a través del chip es útil y ahora tengo una manera fácil de proporcionar 5 voltios a los chips del controlador y al Arduino mismo. En el esquema, RC es la resistencia limitadora de corriente para todos los LED conectados a cada A6276EA. Usé 1000 ohmios porque proporciona 5 miliamperios al LED, suficiente para encenderlo. Estoy usando LED de alto brillo, no Super Brite, por lo que el consumo de corriente es menor. Si los 8 LED de una columna se encienden a la vez, solo son 40 miliamperios. Cada salida del A6276EA puede manejar 90 miliamperios, por lo que estoy dentro del rango. RL es la resistencia conectada a los cables lógicos o de señal. El valor real no es muy importante mientras exista y no sea demasiado grande. Estoy usando 560 ohmios porque tenía muchos disponibles. Usé un transistor de potencia capaz de manejar hasta 6 amperios para controlar la corriente que va a cada capa del cubo. Esto es excesivo para este proyecto, ya que cada capa del cubo solo consumirá 320 miliamperios con todos los LED encendidos. Quería espacio para crecer y podría usar la placa del controlador para algo más grande más adelante. Use cualquier tamaño de transistor que se adapte a sus necesidades. El capacitor de 330 uF a través de la fuente de voltaje está ahí para ayudar a suavizar cualquier fluctuación de voltaje menor. Como estoy usando una fuente de alimentación de computadora vieja, esto no es necesario, pero la dejé en caso de que alguien quiera usar un adaptador de pared de 5 voltios para alimentar su cubo. Cada chip controlador A6276EA tiene 16 salidas. No tenía ningún otro conector adecuado, así que soldé cables a algunos enchufes IC de 16 pines y los usaré para conectar la placa controladora al cubo. También corté un zócalo IC por la mitad y lo usé para conectar los 8 cables que conectan los transistores a las capas del cubo. Corté aproximadamente 5 pulgadas del extremo de un viejo cable flexible para usar como conector para el Arduino. El cable de disquete tiene 2 filas de 20 pines, la placa Bones desnuda tiene 18 pines. Esta es una forma muy económica (gratuita) de conectar el Arduino a la placa. Separé el cable plano en grupos de 2 cables, pele los extremos y los soldé. Esto le permite conectar el Arduino en cualquier fila del conector. Siga el esquema y suelde el conector en su lugar. No olvides soldar los cables de tierra y de 5 voltios para que el conector proporcione energía al Arduino. Tengo la intención de usar esta placa controladora para otros proyectos, por lo que el diseño modular funciona bien para mí. Si desea cablear las conexiones, está bien.

Paso 5: arma la vitrina

Construye la vitrina
Construye la vitrina
Construye la vitrina
Construye la vitrina
Construye la vitrina
Construye la vitrina
Construye la vitrina
Construye la vitrina

Haga que su producto final se vea bien: encontré este cofre de madera en Hobby Lobby por $ 4 y pensé que sería perfecto ya que tiene espacio en el interior para guardar todos los cables y además se ve bien. Teñí esta de rojo, la misma mancha que usé en el escritorio de mi computadora para que coincidan. Dibuje una cuadrícula en la parte superior del mismo tamaño que la cuadrícula utilizada para la plantilla de soldadura (.6 pulgadas entre las líneas). Perfore orificios para permitir que los cables pasen por la parte superior y perfore otro orificio detrás de la rejilla para los cables de capa / plano (de los transistores en el paso 4). Aprendí por las malas que tratar de alinear 64 pistas para atravesar pequeños agujeros es muy difícil. Finalmente decidí volver a perforar todos los agujeros un poco más grandes para que el proceso fuera más rápido. Terminé usando alrededor de una broca de.2 Ahora que el cubo está en la parte superior de la pantalla, doble los cables de las esquinas para que el cubo permanezca en su lugar mientras conecta los cables. Asegúrese de conectar todos los cables en el orden correcto. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 Y conecta los cables entre las capas (etiquetadas como 'planos' en el esquema) y los transistores. El transistor en el pin 6 de Arduino es la capa superior del cubo. Si se equivoca con los cables, es algo corregible dentro del código, pero puede requerir mucho trabajo, así que trate de ponerlos en el orden correcto. todo está construido y listo para funcionar, obtengamos un código y probémoslo.

Paso 6: Código

Código
Código

El código para este cubo se hace de manera diferente a la mayoría, explicaré cómo adaptarse. La mayoría del código del cubo usa escrituras directas en las columnas. El código dice que la Columna X necesita estar encendida, así que dale un poco de jugo y listo. Eso no funciona cuando se usan chips de controlador. Los chips de controlador usan 4 cables para comunicarse con el Arduino: SPI-in, Clock, Latch y Enable. Conecté a tierra el pin de habilitación (pin 21) a través de una resistencia (RL) para que la salida siempre esté habilitada. Nunca usé Enable, así que lo saqué del código. SPI-in es la entrada de datos del Arduino, Clock es una señal de tiempo entre los dos mientras hablan y Latch le dice al controlador que es hora de aceptar nuevos datos. Cada salida de cada chip está controlada por un número binario de 16 bits. Por ejemplo; el envío de 1010101010101010 al controlador haría que todos los demás LED del controlador se iluminaran. Su código debe ejecutar todo lo necesario para una pantalla y generar ese número binario, luego enviarlo al chip. Es más fácil de lo que parece. Técnicamente es un montón de sumas bit a bit, pero soy pésimo en matemáticas bit a bit, así que hago todo en decimal. Los decimales para los primeros 16 bits son los siguientes: 1 << 0 == 1 1 << 1 == 2 1 << 2 == 4 1 << 3 == 8 1 << 4 == 16 1 << 5 == 32 1 << 6 == 64 1 << 7 == 128 1 << 8 == 256 1 << 9 == 512 1 << 10 == 1024 1 << 11 == 2048 1 << 12 == 4096 1 << 13 == 8192 1 << 14 == 16384 1 << 15 == 32768Esto significa que si desea ilumina las salidas 2 y 10, sumas los decimales (2 y 512) para obtener 514. Envía 514 al controlador y las salidas 2 y 10 se encenderán. Pero tenemos más de 16 LED, por lo que se vuelve un poco más difícil. Necesitamos generar información de visualización para 4 chips. Lo cual es tan fácil como construirlo para 1, solo hazlo 3 veces más. Utilizo una matriz de variables globales para contener los códigos de control. Es más fácil de esa manera. Una vez que tenga los 4 códigos de pantalla listos para enviar, suelte el pestillo (configúrelo en LOW) y comience a enviar los códigos. Primero debes enviar el último. Envíe los códigos para el chip 4, luego 3, luego 2, luego 1, luego configure el Latch en HIGH nuevamente. Dado que el pin Habilitar siempre está conectado a tierra, la pantalla se cambia de inmediato. La mayoría de los códigos de cubo que he visto en Instructables, y en la web en general, consisten en un bloque gigante de código configurado para realizar una animación preestablecida. Eso funciona bien para cubos más pequeños, pero la necesidad de almacenar, leer y enviar 512 bits de binario cada vez que desee cambiar la pantalla ocupa mucha memoria. El Arduino no podía manejar más de unos pocos fotogramas. Así que escribí algunas funciones simples para mostrar el cubo en acción que se basan en cálculos en lugar de animaciones preestablecidas. Incluí una pequeña animación para mostrar cómo se hace, pero te dejo que construyas tus propias pantallas. Cube8x8x8.pde es el código Arduino. Planeo continuar agregando funciones al código y actualizaré el programa periódicamente. Matrix8x8.pde es un programa en Processing para construir sus propias pantallas. El primer número dado va al patrón1 , el segundo al patrón2 , etc. La hoja de datos para el A6276EA está disponible en:

Paso 7: muestra tu obra

Muestra tu obra
Muestra tu obra

Terminaste, ahora es el momento de disfrutar de tu cubo. Como puede ver, mi cubo salió un poco torcido. Sin embargo, no estoy muy interesado en construir otro, así que viviré con que esté torcido. Tengo un par de puntos muertos que necesito investigar. Podría ser una mala conexión o podría necesitar un nuevo chip controlador. Espero que este Instructable te inspire a construir tu propio cubo o algún otro proyecto LED usando el A6276AE. Publique un enlace en los comentarios si crea uno. He estado tratando de decidir a dónde ir desde aquí. La placa controladora también controlará un cubo RGB 4x4x4, así que esa es una posibilidad. Creo que sería genial hacer una esfera y, de la forma en que escribí el código, no sería demasiado difícil de hacer.

Recomendado: