Cinta fabricada por Adafruit clik Aqui para visitar la pagina, no es común encontrarlos en las tiendas de electrónica, sin embargo aun así puedes hacer pedidos en ebay, aliexpres u otros mercados virtuales. Esta cinta Led modelo WS2812b, el metro de 30 leds esta alrededor de unos 45 nuevo soles o 15 dolares, son tres veces mas caros que la cinta Led modelo 5050 debido a que cada led o pixel tiene un controlador de 3 canales pwms con entrada de datos de un solo hilo.
Este tipo de leds te facilita enormemente en la parte del armado físico, por ejemplo hacer una matriz de leds RGB ya es muy facil, compras y cortas la tiras en pedazos del tamaño del matriz que necesitas y es mas puedes tener un letrero full color maleable es decir una cortina de leds como pantalla. vaya que facil, lo complicado esta en programarlo, pero sin embargo hay controladores que puedes comprar en el mercado están al rededor de 100 dolares. Como lo que vez en la siguiente figura:
Sin embargo para los aficionados a la electrónica pueden controlarlo con un microcontrolador atmega328p, cuesta al rededor de 12 soles unos 3.4 dolares mas una fuente de 5v -1A que bien puedes tomarlo de un cargador de un celular en desuso. el esquemático es básico:
El oscilador externo es de 20MHz tambien trabaja a 16MHz, pero para trabajar ha 16MHz hay que modificar el programa no es mucho solo es corregir los tiempos.
se preguntaran por que no utilice un pic16fxx o un 18fxx es simple, los microcontroladores de microchip dividen la frecuencia de su reloj internamente entre 4 esto se debe a la arquitectura de estos MCU's, es decir son un poco lento.
Esta cinta led demanda de una velocidad de entrada de datos de unos 800KHz esto hace que el pic se ponga en aprietos, pero para una atmega es suficiente por que este no divide su reloj como en los pics.
Comparacion sencilla: Cada uno con su frecuencia máxima de operación.
MIPS ( millones de instrucciones por segundo). el mas ideal para este trabajo es el atmega y sin mencionar su precio es tres veces mas bajo que un 18f2550.
se preguntaran por que no utilice un pic16fxx o un 18fxx es simple, los microcontroladores de microchip dividen la frecuencia de su reloj internamente entre 4 esto se debe a la arquitectura de estos MCU's, es decir son un poco lento.
Esta cinta led demanda de una velocidad de entrada de datos de unos 800KHz esto hace que el pic se ponga en aprietos, pero para una atmega es suficiente por que este no divide su reloj como en los pics.
Comparacion sencilla: Cada uno con su frecuencia máxima de operación.
- PIC16f628A va a 20MHz pero como lo divide entre 4 queda en 5MIPS.
- PIC18f4550 va a 48MHz al dividirlo entre 4 nos quedan 12MIPS.
- ATMEGA328P va a 20MHz sin ninguna división nos da 20MIPS
MIPS ( millones de instrucciones por segundo). el mas ideal para este trabajo es el atmega y sin mencionar su precio es tres veces mas bajo que un 18f2550.
El programa esta hecho en C atmel studio 6. y no es complejo solo hay que leer la hoja de datos del WS2812B.
y sincronizar el tiempos que nos pide el fabricante.
El programa lo podes ver a continuación:
primero declare una mapa de bits para un total de 28 Leds WS2812B, como cada led consume 3 Bytes, en total la mapa de bits es de 3*28=84 bytes, estos bytes tienen los datos correspondientes para visualizar el arco iris en la cinta led. A continuación el programa principal.
Esta parte del programa se encarga de enviar los datos a la cinta de acuerdo a los tiempos que el fabricante indica. se puede haber hecho con los temporizadores o por PWM del microcontrolador, esto lo dejo al criterio de usted.
Las siguientes lineas de código es una función que hace el rotamiento de bytes, esto es para ver en movimiento los colores de cada pixel como un efecto mas que le añadí.
A continuación en las siguientes imágenes tendremos el armado en el protoboard y su funcionamiento.
Funcionamiento en protoboard:
Y con mas imaginación esta cinta, los podemos hacer un arreglo como para mostrar mensajes y animaciones a full color y muchas otros arreglos mas. si alguien se pregunta cual es la cantidad maxima de pixeles a controlar es de unos 2000, pero esta cantidad puede mejorar si consigues un microcontrolador de mucha mas velocidad, pero sin elevar mucho los costos, por ejemplo tenemos ATxmega32D4 van 32MIPS y están al rededor de 25 soles, estos incluyen dos canales DMA que es ideal para un transferencia masiva de datos sin cargar al procesador de tareas pesadas.
En fin puedes utilizar el controlador que tienes en casa o el que mas te agrade, con los pics se puede, pero suben los precios, ejemplo el pic18f46k22 es una muy buena opción corre a 64MHz sin embargo el precio esta alrededor de 60 soles, esto no va conmigo pero si no es problema el precio puedes hacerlo tu propio controlador con un núcleo de Microchip o tal vez con un Raspberry.
Eso es todo Gracias por ver mi blog siempre estaré compartiendo ideas con ustedes, si tienen alguna preguntas me ponen como comentarios y responderé lo mas pronto posible.
y sincronizar el tiempos que nos pide el fabricante.
El programa lo podes ver a continuación:
primero declare una mapa de bits para un total de 28 Leds WS2812B, como cada led consume 3 Bytes, en total la mapa de bits es de 3*28=84 bytes, estos bytes tienen los datos correspondientes para visualizar el arco iris en la cinta led. A continuación el programa principal.
Esta parte del programa se encarga de enviar los datos a la cinta de acuerdo a los tiempos que el fabricante indica. se puede haber hecho con los temporizadores o por PWM del microcontrolador, esto lo dejo al criterio de usted.
Las siguientes lineas de código es una función que hace el rotamiento de bytes, esto es para ver en movimiento los colores de cada pixel como un efecto mas que le añadí.
En el siguiente imagen podrás apreciar la conexión de la cinta led modelo ws2812b, solo es conectar en serie los pedazos y darle la forma que tu necesites. las hojas de datos lo puedes descargar directamente Aqui.
Funcionamiento en protoboard:
Y con mas imaginación esta cinta, los podemos hacer un arreglo como para mostrar mensajes y animaciones a full color y muchas otros arreglos mas. si alguien se pregunta cual es la cantidad maxima de pixeles a controlar es de unos 2000, pero esta cantidad puede mejorar si consigues un microcontrolador de mucha mas velocidad, pero sin elevar mucho los costos, por ejemplo tenemos ATxmega32D4 van 32MIPS y están al rededor de 25 soles, estos incluyen dos canales DMA que es ideal para un transferencia masiva de datos sin cargar al procesador de tareas pesadas.
En fin puedes utilizar el controlador que tienes en casa o el que mas te agrade, con los pics se puede, pero suben los precios, ejemplo el pic18f46k22 es una muy buena opción corre a 64MHz sin embargo el precio esta alrededor de 60 soles, esto no va conmigo pero si no es problema el precio puedes hacerlo tu propio controlador con un núcleo de Microchip o tal vez con un Raspberry.
Eso es todo Gracias por ver mi blog siempre estaré compartiendo ideas con ustedes, si tienen alguna preguntas me ponen como comentarios y responderé lo mas pronto posible.
Que tal amigo, es muy interesante tu blog. Que te parece formar una empresa para vender proyectos con Microcontroladores.
ResponderEliminarSaludos Cordiales.
Hola Gilberto. me interesa tu propuesta contactame a esta dirección de correo electrónico washin_2006@hotmail.com. saludos !.
EliminarHola yony soy del sur de Perú saludos ,quería preguntarte si vendes o donde puedo encontrar la cinta de les ws2812b, gracias
ResponderEliminarHola yony soy del sur de Perú saludos ,quería preguntarte si vendes o donde puedo encontrar la cinta de les ws2812b, gracias
ResponderEliminarEste comentario ha sido eliminado por el autor.
EliminarHolas Wiliam Aqui en el peru no los vas encontrar todavia por que estan bien caros, te las puedo importar por minimas cantidades, por que por cantidad me van a cobrar impuestos + aranceles + costo de envio y esto hace que se duplique el precio de las cintas. unos 30 metros es la maxima cantidad que se me permite sin impuestos. saludos
EliminarSALUDOS , por curiosidad llegue a tu blog y me intereso mucho los proyectos que realizaste, pero resulta que el enlace de ejmplo de este proyecto esta roto (MEGA), me seria de mucha ayuda si me compartieras quizá tengas el proyecto aun. mi correo es jhordysagitario@hotmail.com
ResponderEliminargracias ok, le enviare estos dias, primero voy intentar ubicar el programa de este proyecto.
Eliminarya lo recibí gracias por tomar el tiempo, veo que también se puede controlar mediante IR lo cual es muy emocionante viendo todos los aplicativos a los que se puede adaptar.
Eliminar