Autor Tema: Como funcionan los carteles a LED RGB?  (Leído 17390 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #15 en: 04 de Octubre de 2012, 20:12:35 »
Bruno, como siempre gracias, eres un libro abierto!
No piensen que este tema quedo relegado, lo tengo siempre presente, pero tengo muchos proyectos abiertos que me estan consumiendo más tiempo.
Aparte estaba esperando que la gente de Texas me entregue las muestras delo 5940. Ayer me llegaron y estoy por empezar las pruebas. Los led RGB todavía no salieron de china (jeje), pero hasta que lleguen tengo tiempo de sobra para hacer las primeras pruebas de los TLC.

Por lo que me comentas y estuve viendo lo de procesar señales VGA no es nada simple. Creo que en principio podría suponer que la informacion está almacenada en forma digital en una memoria, quizá ya extraidos los frames.

Lo cual me lleva a enunciar nuevas preguntas. Cuales son los tipos de memorías que podrían funcionar (dado el flujo de informacion requerida) para una aplicacion de este tipo? quizá la memoria no sea el cuello de botella y la pregunta no tenga sentido, pero desconozco esta parte (como casi todo, ja) Algún documento de como se almacena un video en algún formato simple en memoria y como extraer los frames?

Bueno, seguimos almacenando info! saludos
-
Leonardo Garberoglio

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Como funcionan los carteles a LED RGB?
« Respuesta #16 en: 05 de Octubre de 2012, 01:21:46 »
Bruno, como siempre gracias, eres un libro abierto!
No piensen que este tema quedo relegado, lo tengo siempre presente, pero tengo muchos proyectos abiertos que me estan consumiendo más tiempo.
Aparte estaba esperando que la gente de Texas me entregue las muestras delo 5940. Ayer me llegaron y estoy por empezar las pruebas. Los led RGB todavía no salieron de china (jeje), pero hasta que lleguen tengo tiempo de sobra para hacer las primeras pruebas de los TLC.

El TLC5940 puede entregar mucha corriente por salida. Hasta 120mA. Seguramente sea excesivo para la mayoría de los LEDs RGB usados en pantallas, pero si el precio no se dispara debido a eso, es mas fácil usarlo con pocos mA y listo!(mediante su resistencia de calibración).

Por lo que me comentas y estuve viendo lo de procesar señales VGA no es nada simple. Creo que en principio podría suponer que la informacion está almacenada en forma digital en una memoria, quizá ya extraidos los frames.

No es sencillo debido a las velocidades que se manejan.
Si hacemos unos cálculos básicos, nos daremos cuenta enseguida de que el tráfico de datos es muy alto. Si elegimos una resolución que podría considerarse hoy en día hasta obsoleta en una PC: 640x480 pixeles, a una tasa nominal de 60Hz, en digamos 16 bits(2 bytes) de profundidad de color por pixel(ni hablemos de 24 o 32 siquiera), haciendo las cuentitas y sin tener en cuenta los front y back porchs de los barridos horizontal y vertical, tenemos nada mas que de datos útiles por segundo:
2 * 640 * 480 * 60 Bytes/s = 36864000 B/s > 35 MBytes/s.

O bien directamente vemos en Wikipedia: http://en.wikipedia.org/wiki/Video_Graphics_Array que la velocidad de un controlador VGA es de 25.175 Mhz, y consideramos que en cada clock debe ser capaz de adquirir 16bits en nuestro caso, tenemos un ancho de banda absoluto de más de 50MB/s.

Si utilizaramos conversores AD para digitalizar la información, deberían ser de al menos 25MSPS (Mega Samples Per Second) para poder obtener toda la información gráfica de una señal de las características propuestas. Claro que ni los conversores  de los PIC32, que alcanzan poco más del MSPS llegarían a lograr procesar toda la información. Mucha se perdería o promediaría(dependiendo del tipo de conversor ADC).
Creo que si exíste, no hay que ponerse a lidiar con ello. Incluso vendían por ebay placas PCI (conexión interna) o bien módulos independientes(por Ethernet/VGA) que directamente recibían la trama desde un soft de PC que lo único que hace es capturar toda/parte de la pantalla y enviarla. Es lo más sencillo y es lo que suelo hacer yo también. Un soft sencillo selecciona la/las partes de la pantalla a capturar, y dicha información se envía digitalmente a un receptor que la distribuirá entre los controladores "zonales' de la pantalla. Volviendo al tema de estos dispositivos que vi que venden por ebay, muchos ya vienen listos para conectarle los controladores zonales mediante un protocolo que puede o bien ser propio del vendedor, o bien alguno más popularizado en este tipo de productos.


Lo cual me lleva a enunciar nuevas preguntas. Cuales son los tipos de memorías que podrían funcionar (dado el flujo de informacion requerida) para una aplicacion de este tipo? quizá la memoria no sea el cuello de botella y la pregunta no tenga sentido, pero desconozco esta parte (como casi todo, ja) Algún documento de como se almacena un video en algún formato simple en memoria y como extraer los frames?

Eso dependerá mucho de la resolución de pantalla que pienses hacer. Una controlador de memoria SD puede transferir varios MB/s de información utilizando protocolo SPI, y bastante más utilizando el protocolo SD. Si bien AVI es un contenedor de video y no un formato de video en si, los formatos que menos procesado requieren(sin compresión) suelen contenerse en archivos AVI. Esos son los que pueden resultar más interesantes porque si bien el tamaño del archivo es grande en comparacion a otros formatos, es menor el procesado requerido para poder utilizar su información gráfica contenida.
Si es para meros experimentos, debe haber alguna aplicación dando vueltas en la web que pueda tomar un video y extraer/guardar la información grafica RAW. No es muy complejo tampoco hacer una aplicación de PC que convierta los frames de un video a un formato propio, que sirva directamente para el propósito.

Saludos
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: Como funcionan los carteles a LED RGB?
« Respuesta #17 en: 05 de Octubre de 2012, 12:27:19 »
Lo cual me lleva a enunciar nuevas preguntas. Cuales son los tipos de memorías que podrían funcionar (dado el flujo de informacion requerida) para una aplicacion de este tipo? quizá la memoria no sea el cuello de botella y la pregunta no tenga sentido, pero desconozco esta parte (como casi todo, ja) Algún documento de como se almacena un video en algún formato simple en memoria y como extraer los frames?

Eso dependerá mucho de la resolución de pantalla que pienses hacer. Una controlador de memoria SD puede transferir varios MB/s de información utilizando protocolo SPI, y bastante más utilizando el protocolo SD. Si bien AVI es un contenedor de video y no un formato de video en si, los formatos que menos procesado requieren(sin compresión) suelen contenerse en archivos AVI. Esos son los que pueden resultar más interesantes porque si bien el tamaño del archivo es grande en comparacion a otros formatos, es menor el procesado requerido para poder utilizar su información gráfica contenida.
Si es para meros experimentos, debe haber alguna aplicación dando vueltas en la web que pueda tomar un video y extraer/guardar la información grafica RAW. No es muy complejo tampoco hacer una aplicación de PC que convierta los frames de un video a un formato propio, que sirva directamente para el propósito.

Cuando realice el reproductor AVI con PIC32 utilice el programa ffmpeg que permite transformar a AVI un vídeo especificando el fps, el tamaño (QQVGA por ej.), el formato de RGB del pixel, etc. que en ese caso era muy útil. Seguramente hay otros similares.

En ese caso utilice un LCD TFT el cual tiene un controlador que dibuja sobre la pantalla y ya estaba muy ajustado en tiempos. A lo que voy es que, el programa lo único que hace es cargar la RAM del LCD. Pensar en que en lugar de eso debe "dibujar" sobre los led RGB me parece que va a ser complicado  :tongue: Entonces SPI se quedaría corto, puede ser protocolo SD o utilizar una memoria Flash paralela.

Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #18 en: 05 de Octubre de 2012, 13:30:53 »
Creo que si exíste, no hay que ponerse a lidiar con ello. Incluso vendían por ebay placas PCI (conexión interna) o bien módulos independientes(por Ethernet/VGA) que directamente recibían la trama desde un soft de PC que lo único que hace es capturar toda/parte de la pantalla y enviarla.

Mientras proceso el resto de la informacion, bajo que nombre vienen esos módulos? Estoy buscando en bay y no encuentro nada...

SAludos
-
Leonardo Garberoglio

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Como funcionan los carteles a LED RGB?
« Respuesta #19 en: 05 de Octubre de 2012, 14:36:30 »
Yo tampoco estoy encontrando nada! Hace varios años que no las busco! Creo que había llegado a ellas a traves de un par de integrados drivers de corriente contínua chinos, utilizados en este tipo de carteles. Si encuentro te aviso!
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #20 en: 07 de Octubre de 2012, 19:00:50 »
Mientras tanto una consulta más, si la corriente máxima del TLC por salida es 120mA y quiero hacer un cartel monocromo de 7 filas no podría?? por que cuando esté la fila completa encendida por el TLC pasarán 140mA. Estoy pensando mal???? Y si coloco uln's, no estaría perdiendo el control de corriente?

Saludos
-
Leonardo Garberoglio

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: Como funcionan los carteles a LED RGB?
« Respuesta #21 en: 07 de Octubre de 2012, 20:25:55 »
Como sería el esquema de implementación? Estarías multiplexando? Porque en ese caso el TLC controlarían las columnas para que el PWM fuera para cada led individual y no para toda la fila.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Como funcionan los carteles a LED RGB?
« Respuesta #22 en: 07 de Octubre de 2012, 22:40:20 »
Seguramente estará multiplexada la matriz, como Suky menciona. En ese caso cada salida controlaría sólo un LED a la vez. La corriente que circula se regula con una resistencia de precisión.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #23 en: 07 de Octubre de 2012, 22:58:57 »
Ah, entiendo. Yo pensaba manejar las filas con 1 salida para cada una. Pero es cierto que si son muchas filas hay que multiplexar, en cuyo caso solo hay un led por vez encendido... Bueno, esto complica más aún los tiempos imagino...

saludos
-
Leonardo Garberoglio

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: Como funcionan los carteles a LED RGB?
« Respuesta #24 en: 07 de Octubre de 2012, 23:24:45 »
Ah, entiendo. Yo pensaba manejar las filas con 1 salida para cada una. Pero es cierto que si son muchas filas hay que multiplexar, en cuyo caso solo hay un led por vez encendido... Bueno, esto complica más aún los tiempos imagino...

saludos

Un cartel monocromático se suele refrescar a mínimo 60 Hz, por lo que si son 7 filas, cada fila esta encendida ~ 2.4ms. Si usaras un TLC a su máxima capacidad, deberías de generar un GCLK de 1/(2.4ms/4096)~1.72MHz. Y tienes los 2.4ms para enviar todos los bytes necesarios según la cantidad de TLCs en cadena. Igualmente hay que tener en cuenta que ya el led trabaja con un PWM de 60Hz, con ciclo de trabajo máximo de 14%  :tongue:


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Como funcionan los carteles a LED RGB?
« Respuesta #25 en: 08 de Octubre de 2012, 00:06:34 »
Ah, entiendo. Yo pensaba manejar las filas con 1 salida para cada una. Pero es cierto que si son muchas filas hay que multiplexar, en cuyo caso solo hay un led por vez encendido... Bueno, esto complica más aún los tiempos imagino...

saludos

La cantidad de datos que hay que enviar es constante. Multiplexes o no, el ancho de banda total necesario permanece constante. Si querés, podés optar por no multiplexar. Algunas empresas hacen matrices sin multiplexación. Si no multiplexás, hay que poner mucho más has hardware, pero ganás en brillo (100% de duty máximo). Si multiplexás, te ahorras hardware y sacrificás brillo( 100/cantidad de filas % de duty máximo).
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #26 en: 08 de Octubre de 2012, 12:38:15 »
Claro, cuando decía que se complicaban más los tiempos es por que suponía que al multiplexar debería refrescar la pantalla muchas más veces por segundo para no perder brillo. Esto es así? O sea, para 7 filas el duty ya es de 14% y eso no lo puedo cambiar, pero si pinto más imagenes por segundo.... no, es lo mismo, refresque a lo que refresque siempre va a estar el 14% del tiempo encendido y el resto apagado, aunque quizás halla algún efecto como de persistencia que me haga ganar brillo pintando más rápido?

Saludos
-
Leonardo Garberoglio

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6759
Re: Como funcionan los carteles a LED RGB?
« Respuesta #27 en: 08 de Octubre de 2012, 13:04:17 »
Claro, cuando decía que se complicaban más los tiempos es por que suponía que al multiplexar debería refrescar la pantalla muchas más veces por segundo para no perder brillo. Esto es así? O sea, para 7 filas el duty ya es de 14% y eso no lo puedo cambiar, pero si pinto más imagenes por segundo.... no, es lo mismo, refresque a lo que refresque siempre va a estar el 14% del tiempo encendido y el resto apagado, aunque quizás halla algún efecto como de persistencia que me haga ganar brillo pintando más rápido?

Saludos

El ciclo de trabajo va a ser el mismo, sea cual fuere la frecuencia de refresco de la pantalla. Después al aumentar la frecuencia no se nota cambio en el brillo de los leds, hice la prueba (imagen de izq. a der., 60Hz, 120Hz, 240Hz), pero al aumentar la frecuencia se disminuye el tiempo que tienes para cargar los datos a cada fila y te quita tiempo para hacer otras cosas.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado BrunoF

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3865
Re: Como funcionan los carteles a LED RGB?
« Respuesta #28 en: 08 de Octubre de 2012, 13:19:51 »
Personalmente, las matrices que hice y hago siempre están encima de los 100Hz. Idealmente arriba de los 200. Si bien a 60Hz es prácticamente imperceptible para el humano, hay cámaras donde la imágen del cartel puede grabarse mal si la velocidad de refresco es baja.

Lo que se suele hacer como remedio parcial para el problema del duty, es incrementar la potencia con que se aplica a los LEDs. Esto hace que el LED brille más, y como en este caso el LED trabaja 1/7 partes de segundo, en teoria se le da suficiente tiempo para que enfríe y no se destruya. Claro que en este caso el LED se sacrifica menos si los intervalos de encendido son menores(más Hz), hay que estar seguro que de ninguna manera una fila va a quedar permanentemente encendida (utilizando watchdog timer que resetee el uC por ejemplo en caso de que el código falle) y seguramente perdamos parte de la vida útil ideal de los LEDs.

Saludos.
"All of the books in the world contain no more information than is broadcast as video in a single large American city in a single year. Not all bits have equal value."  -- Carl Sagan

Sólo responderé a mensajes personales, por asuntos personales. El resto de las consultas DEBEN ser escritas en el foro público. Gracias.

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: Como funcionan los carteles a LED RGB?
« Respuesta #29 en: 08 de Octubre de 2012, 13:41:43 »
El ciclo de trabajo va a ser el mismo, sea cual fuere la frecuencia de refresco de la pantalla. Después al aumentar la frecuencia no se nota cambio en el brillo de los leds, hice la prueba (imagen de izq. a der., 60Hz, 120Hz, 240Hz), pero al aumentar la frecuencia se disminuye el tiempo que tienes para cargar los datos a cada fila y te quita tiempo para hacer otras cosas.
Saludos!

Está bien, si esta probado, está probado... no mejora el brillo con la frecuencia de refresco...

Saludos!
-
Leonardo Garberoglio