Reloj y Texto en display LED, con ESP32

Construcción de un display LED de reloj y texto con matrices LED. Este display se configura desde un teléfono móvil vía WiFi. La información de la fecha y hora se sincroniza a través de un servidor NTP, convirtiéndolo así en un reloj muy preciso. Este display está construido con el módulo ESP32 y 4 matrices LED de 8×8 pixel. De forma opcional, también se puede montar un segundo display OLED de 64×48 pixel (0,66 pulgadas).

Este display lo he montado con un módulo LED que ya contiene las 4 matrices, en lugar de los 4 módulos independientes que utilicé en el montaje anterior:

Reloj de precisión, configurado por WiFi

Matrices LED de 8×8 pixel

En la construcción del último reloj LED que monté, lo hice conectando 4 matrices LED de 8×8 pixel. Estas matrices llevan las conexiones de entrada y salida por la cara inferior y superior, y esto obliga a que el tamaño del reloj sea más grande de lo necesario.

Matriz LED 8x8 pixel

En este caso voy a montar otro reloj con un display LED del mismo tamaño, pero será más pequeño que el anterior. Aunque el nuevo firmware también permite utilizar un segundo display OLED, en este caso no lo voy a montar, y además utilizaré 4 matrices LED interconectadas en un sólo PCB.

PCB con 4 matrices LED de 8x8

Esquema de montaje

El montaje de este reloj es muy rápido y sencillo,  sólo hay que conectar 5 hilos entre un lateral del display LED y el módulo ESP32.

Montaje del display: Reloj-Texto

Configuración con doble interface WEB

Ahora el display LED permite mostrar la hora, o textos rotantes de hasta 255 caracteres. Tanto el modo de funcionamiento como su configuración, se programa a través de una conexión WiFi, y se guarda en la memoria EEPROM del módulo ESP32. De esta forma el reloj arranca siempre en el modo en el que se dejó la última vez: modo texto, o modo reloj.

Doble interface WEB

Esta nueva versión de firmware incluye un menú WEB con nuevas opciones,  y también animaciones cada vez que se reciben datos desde el reloj.

Firmware

El archivo que necesitas para programar el ESP32, lo puedes descargar de forma gratuita desde el repositorio GitHub: Clock-Text_ESP32

Y también desde Dropbox: ESP32_Time_Text_Matrix_JR.rar

Caja 3D (Reloj-Texto)

Caja 3D, para el PCB de 4 matrices LED de 8x8

El fichero .stl que necesitas para fabricar la caja de este display LED, lo puedes descargar desde el siguiente enlace: Clock and Text on LED display, configured by WiFi

¿Necesitas fabricar un circuito impreso?

Actualmente hay muchas empresas que se dedican a fabricar circuitos impresos (PCB), pero no en todas podemos conseguir pequeñas tiradas a buen precio. Por suerte, ahora disponemos de Internet y es mucho más fácil que antes. Podemos buscar empresas en cualquier parte del mundo, y es más fácil encontrar un fabricante que haga nuestros prototipos (PCB) a buen precio. Una de las empresas más grandes del sector es PCBWay.

PCB de prototipo gratis y con plazo de entrega rápido: https://www.pcbway.es/

Logo: PCBWay

 

Reloj de precisión, configurado por WiFi

Construcción de un reloj con matrices LED, configurado desde un teléfono móvil vía WiFi. Este reloj toma la información de la fecha y hora a través de un servidor NTP, convirtiéndolo así en un reloj muy preciso. El reloj está construido a partir del módulo ESP32, acoplando un pequeño display OLED de 64×48 pixel (0,66 pulgadas) y 4 matrices LED de 8×8 pixel.

Como este reloj está creado a partir del Transmisor DCF77 que mostré anteriormente, hay mucha información de interés relacionada con el módulo ESP32  y el display OLED en el siguiente documento:

Transmisor DCF77 con ESP32

Matriz LED de 8×8 pixel

El display LED del reloj está construido con 4 matrices LED de 8×8 pixel. Estas matrices LED se pueden comprar junto a su controlador en módulos independientes, y encadenar en serie todas las que se necesiten. El circuito integrado controlador de la matriz LED, es el MAX7219.

Matriz LED 8x8 pixel

MAX7219

El CI MAX7219 permite controlar matrices de 8×8 LED de cátodo común. También puede controlar un grupo de 8 displays  de 7 segmentos, pudiendo habilitar o no su decodificador interno BCD. Este CI incluye un registro de desplazamiento, y se pueden encadenar para controlar una serie de matrices LED de 8×8, o una serie de grupos de 8 displays de 7 segmentos.

Circuito integrado MAX7219

El MAX7219 dispone una memoria SRAM para almacenar el estado de los 64 LED que puede controlar, y se encarga de realizar la multiplexación para su encendido individual, con una frecuencia de refresco típica de 800 veces por segundo a todo el conjunto. La memoria SRAM mantiene la información siempre que la alimentación no baje de 2V. La carga de datos se realiza en serie mediante el control de 3 hilos más 2 de alimentación (Data, Clock, CS, GND, Vcc)

El MAX7219 incluye un control de apagado de los LED reduciendo el consumo hasta 150µA. Tiene un control de brillo analógico y digital, un registro de límite de escaneo que permite al usuario mostrar de 1 a 8 dígitos, y un modo de prueba que fuerza el encendido de todos los LED.

La información se recibe en 2 Bytes, bits D0 – D15. El primer bit que se envía es el D15, el más significativo (MSB).

  • D0 – D7 contienen los datos
  • D8 – D11 contienen la dirección de registro
  • D12-D15 son bits sin contenido.

Esquema de montaje

El montaje de este reloj es muy sencillo, no hace falta montar ni un sólo componente electrónico, sólo los cables de conexión entre matrices y los 5 hilos entre el módulo ESP32 y la primera matriz LED.

Esquema de montaje del reloj

Configuración inicial del reloj

Este reloj necesita una conexión a Internet por WiFi para funcionar. Al arrancar se conecta a un servidor NTP para sincronizar el reloj (RTC) del módulo ESP32. A continuación ya puede funcionar de forma autónoma, y se puede configurar y controlar desde un dispositivo móvil (WiFi) y también desde un PC que tenga conexión a la misma red local a la que se haya conectado el reloj por WiFi.

La primera vez que se pone en marcha el reloj, es necesario acceder por WiFi al punto de acceso que crea el propio reloj cuando no dispone de acceso a Internet, y configurar su conexión WiFi.

  • SSID: ESP_32
  • IP: 192.168.4.1

Punto de acceso WiFiEn la imagen siguiente se muestra el diagrama de funcionamiento cada vez que se reinicia el reloj.

Diagrama de funcionamiento del reloj en el arranque

Modos de funcionamiento y ajustes del reloj

El reloj puede mostrar la fecha y hora siguiendo el estándar europeo o americano (24H/12H). También se puede personalizar el formato de la hora en dos tamaños, las animaciones de los números cuando cambian y el ajuste de brillo del display LED. Todos estos ajustes se realizan a través de una conexión a la red local que se haya conectado el reloj, ya sea por WiFi o cable. No es necesario instalar ningún software, porque el reloj incluye su propio navegador web (web browser). Conectando cualquier dispositivo a la dirección IP que muestra el reloj cuando se conecta a la red Wifi, se puede acceder al menú de control de este reloj.

Configuración del reloj por WiFi

Firmware:

El archivo que necesitas para programar el ESP32, lo puedes descargar de forma gratuita desde el repositorio GitHub:
https://github.com/J-RPM/Precision-clock_ESP32

Y también desde Dropbox: ESP32_NTP_Time_Matrix_JR.rar

Caja 3D (Reloj de precisión)

Caja 3D

El fichero .stl que necesitas para fabricar la caja de este reloj, lo puedes descargar desde el siguiente enlace: Precision clock, configured by WiFi

¿Necesitas fabricar un circuito impreso?

Actualmente hay muchas empresas que se dedican a fabricar circuitos impresos (PCB), pero no en todas podemos conseguir pequeñas tiradas a buen precio. Por suerte, ahora disponemos de Internet y es mucho más fácil que antes. Podemos buscar empresas en cualquier parte del mundo, y es más fácil encontrar un fabricante que haga nuestros prototipos (PCB) a buen precio. Una de las empresas más grandes del sector es PCBWay.

Logo: PCBWay

https://www.pcbway.es/

 

 

¡Maldito foco LED! – Damn LED spotlight!

Avería de un foco LED de 12V, después de 72 horas de funcionamiento continuo. La reparación anterior se hizo sustituyendo la matriz LED original del foco,  por 4 diodos LED SMD de 1W en serie. Debido a un mal contacto térmico de los diodos con el bloque disipador del foco, uno de los diodos se quemó. Se vuelve a reparar el foco, mejorando mecánicamente el contacto térmico de los diodos con el disipador, y reduciendo ligeramente su corriente de trabajo.

A pesar de que este tipo de reparaciones no compensa, decido acabar con la reparación que comencé, ya que no dio buen resultado. Como era de esperar, uno de los 4 diodos LED se ha quemado, provocando el apagado del foco. Teniendo en cuenta que la corriente de trabajo de este foco es de 256 mA, corriente dentro de los límites del LED utilizado, el problema puede estar relacionado con la mala disipación térmica.

Reparación

La reparación consiste en sustituir el diodo LED quemado por uno nuevo, y unir de nuevo la serie de 4 diodos con masilla de dos componentes. Con el fin de mejorar el contacto térmico con la carcasa del foco, ya que esta hace de disipador, en esta ocasión el conjunto de los 4 diodos lo monto sin utilizar la placa soporte del diodo original. Una vez seca la masilla, es conveniente aplanar todo el conjunto con una lija de grano fino (imagen siguiente).

Aplanado LED

Reducir la corriente del LED

A pesar de que la corriente de trabajo del foco (256 mA) está dentro del margen de funcionamiento de los diodos LED utilizados (250 – 300mA), decido reducir ligeramente su valor. El circuito de control ajusta la corriente de trabajo con 2 resistencias en paralelo, una de 1 ohmio y la otra de 6,2. Al eliminar la resistencia de 6,2 ohmios, la corriente del circuito se reducirá de 256 mA hasta 220 mA.

Ajuste de corriente del foco LED

A pesar de que esta corriente no varía mucho con respecto a la original (-13%), la temperatura de funcionamiento del LED se reducirá bastante… pero también caerá de forma exponencial el rendimiento lumínico del diodo LED.

Rendimiento lumínico

Después de reparar el foco y modificar su  corriente de funcionamiento, realizo una prueba comparativa del rendimiento lumínico. Esta medida de luminosidad no sirve para conocer el valor real en lúmenes del foco LED, pero nos permite conocer la relación que existe entre el valor de la reducción de corriente y su pérdida de luminosidad.

Rendimiento lumínico

Como podemos apreciar en la imagen anterior, al reducir la corriente del LED en un 13%, el rendimiento lumínico se ha reducido en un 50%.

 

 

Foco LED mal diseñado, ¿estafa? – Spotlight LED bad designed, scam?

Avería de un foco LED de 12V/15W, después de un mes de uso normal. Se desmonta la matriz LED con el fin de conocer el motivo de su corta duración. Como esta es la segunda vez que se quema un LED de la matriz, se realiza un análisis a fondo de su construcción, detectando que tiene un fallo de diseño. Al final se sustituye la matriz LED original por 4 diodos LED SMD de 1W de tipo CREE. Finalmente se realizan medidas comparativas de consumo y rendimiento lumínico, comparando el foco reparado con otro nuevo igual que el averiado.

¿Cómo funciona un foco LED?

Construcción de la matriz LED

El diodo LED de este foco está compuesto por una matriz de 10 diodos. Es un montaje de 5 diodos en paralelo, dos a dos, y estos 5 conjuntos montados en serie.

Interior del LED

El problema que existe con este montaje, es que el fabricante no puede emparejar los diodos que van montados en paralelo, ya que están impresos en la matriz y no van montados en una cápsula de forma independiente. En estas condiciones, es muy difícil que la corriente que circula por cada diodo sea idéntica a la que circula por el otro que va conectado en paralelo. Así siempre iluminará uno de ellos más que el otro, y tendrá que soportar una corriente mayor a la calculada. Si el fabricante no contempla esta posibilidad, y monta diodos ajustados a la corriente que ha calculado, lo normal es que acabe por quemarse alguno de los diodos.

Esquema del Foco LED

En el esquema del foco LED se puede ver que el circuito de corriente constante está ajustado para 256 mA. Así circulará una corriente de 128 mA por cada diodo. Si alguno de los diodos se quema por exceso de corriente, se abrirá, obligando al otro diodo que va montado en paralelo  a soportar los 256 mA de la serie. Como cabe suponer, este segundo diodo también se quemará y dejará de lucir toda la matriz LED.

Reparación del foco LED

En la mayoría de los casos no compensa reparar un foco LED. El precio del repuesto y la mano de obra, suele ser superior al precio de compra de un foco nuevo. A pesar de esto, si ya disponemos del repuesto y lo hacemos como hobby, es muy satisfactorio repararlo… o por lo menos intentarlo. En este caso la reparación consiste en sustituir la matriz LED. Una solución alternativa es montar una serie de diodos LED de potencia en lugar de la matriz. Como este foco está alimentado a 12V, es necesario que la tensión de funcionamiento de la serie de diodos sea ligeramente superior a 12 V. En caso contrario, el circuito de control no podría limitar la corriente y se quemarían los diodos.

LED de 1W

Si tenemos en cuenta que este foco de 15W, en realidad es de 5W, podemos obtener una luminosidad parecida montando 4 diodos LED en serie de 1W. Como es lógico, estos diodos deben estar dimensionados para funcionar con una corriente de 256 mA, ya que es la que suministra el circuito de control del foco.

Foco modificado

Para sustituir la matriz LED original por 4 diodos, hay que asegurar que el contacto térmico del conjunto con la base de aluminio sea bueno. Yo he optado por crear un bloque con los 4 diodos, utilizando masilla de 2 componentes, mas conocida como barra arregla todo. Antes de aplicar la masilla, es muy importante poner pasta térmica en la base de cada diodo LED.

Luminosidad del foco LED

Después de la reparación, decido hacer una prueba comparativa de luminosidad entre el foco reparado y otro foco LED nuevo. El resultado es favorable al foco reparado, porque el consumo es de 4W en lugar de 5W, y la luminosidad es un 16% superior a la del foco original.

 

BINGO de pared #2

Construcción de un Bingo electrónico de grandes dimensiones, para colgarlo en la pared de un salón social. El panel tiene unas dimensiones de 1 metro de ancho por 80 centímetros de alto, y está construido con la tapa de madera de un cajón de embalaje. En esta segunda parte, se finaliza el montaje del Bingo y se realizan pruebas de funcionamiento.

Rotulación

Para rotular los 90 números en el panel he construido una plantilla para centrar los números en cada cuadro, y otra para los números. El primer paso es rotular todos los números en la madera.

Rotular números

Una vez rotulados todos los números, con la ayuda de un pincel de punta fina, especial para la rotulación, se pinta el interior de los números. Yo utilicé esmalte metálico de color verde.

Pintar números

Mecanizado

A continuación se taladran los 90 agujeros para montar los diodos LED. Aunque el diodo es de 10 mm, es conveniente hacer el agujero a 9 mm y ajustar el hueco con la ayuda de una lima, o utilizando una pequeña fresa y un taladro de mano.

Mecanizado LED

Los diodos LED se colocan por la parte trasera del mural,  y se fijan con adhesivo termo fundible.

Pegado LED

Conexiones

Para cablear la matriz, hay que conectar los ánodos de los diodos LED de las 9 líneas (sus resistencias limitadoras), y los cátodos de las 10 columnas. Al final se conecta un cable de cinta plana para los cátodos (10 hilos) y otro para los ánodos (9 hilos). Es importante identificar la primera línea y la primera columna, conectando el hilo que lleva la marca roja en esta posición.

Matriz LED

Por finalizar, se monta un anclaje para la CPU y se fija el display y el pulsador en el mural. El conexionado es muy rápido, porque todas las conexiones se hacen con terminales y no es necesario utilizar el soldador.

Montaje CPU

Funcionamiento

Al conectar el panel aparece un texto en el display, mostrando la versión del firmware, y se iluminan los 90 diodos LED del panel durante unos segundos.

Bingo de pared

En el siguiente video se muestran todos los detalles de montaje y funcionamiento de este Bingo electrónico.

BINGO de pared #1

Construcción de un Bingo electrónico de grandes dimensiones, para colgarlo en la pared de un salón social. El panel tiene unas dimensiones de 1 metro de ancho por 80 centímetros de alto, y está construido con la tapa de madera de un cajón de embalaje. Este panel tendrá el mismo diseño y electrónica que el Bingo portátil, pero utilizando la matriz doble de 7 segmentos que se montó anteriormente, y utilizando para los números del panel diodos LED de 10 mm.

Mural de madera

Al realizar este montaje sobre un panel de madera de embalaje, lo primero que hay que hacer es lijar, reparar los desperfectos y barnizar todo el panel. Antes de rotular y mecanizar el tablero, es muy importante replantear el diseño y tamaño de todos los componentes que se van a montar. Para mostrar los 90 números del Bingo en el panel, tenemos que rotular los 90 marcos. Si se hace con pintura, la mejor manera de hacerlo sería delimitando las zonas a pintar, tapando el resto con papel y cinta de enmascarar (cinta de carrocero /cinta adhesiva de papel).

Marco para los números

LED para el panel

En cada uno de los 90 marcos del mural tendremos que rotular un número y montar un diodo LED. Es importante que el diodo LED que se monte sea de alta luminosidad y de gran tamaño, pero también es importante que no deslumbre. Los diodos LED de 10 mm son una buena elección, pero lo difícil es conseguir un diodo LED de alto brillo y luz difusa. Para evitar el deslumbramiento frontal, podemos eliminar la lente de los diodos LED (frontal del encapsulado) con la ayuda de una piedra esmeril. La luminosidad la podemos comprobar visualmente, comprobando su brillo con otro diodo LED de referencia… pero lo mejor sería medir la luminosidad con un luxómetro.

Medida de luminosidad

CPU para el Bingo

Este Bingo de mural lleva los mismos componentes que el Bingo más pequeño que montamos anteriormente.

Esquema BINGO

En este caso, decidí montar su propio sistema de alimentación, integrando el módulo ‘Step-Up’ de la batería Li-ion en la placa del circuito impreso.

Fuente de alimentación

El módulo de carga de la batería lo monté en el soporte de la batería. La placa de control (CPU) dispone de 2 entradas de alimentación, una de 5V y la otra de 3,7V. Si conectamos la batería a la toma de 3,7V, la toma de 5V quedaría libre, y podríamos utilizarla como salida de 5V para alimentar algún adorno  auxiliar o indicador cuando el  panel está encendido.

Circuito impreso (PCB)

Para obtener el fotolito del circuito impreso a escala, sólo tienes que imprimir en una hoja de film transparente de tamaño A4, especial para impresoras láser, la imagen siguiente (descargar del tamaño real).

Bingo PCB

A continuación se muestra la disposición de todos los componentes montados en la placa del circuito impreso (PCB).

CPU del Bingo montada

Firmware: J_RPM_v3_BINGO.HEX

Puedes ver todos los detalles de este montaje en el siguiente video:

Matriz de 7 segmentos #2

Construcción de una matriz LED de 7 segmentos y 2 dígitos. Cada dígito tiene un tamaño de 8 centímetros de alto y 4 de ancho. En esta segunda parte, se sustituyen los diodos LED por otros de mayor rendimiento lumínico. Se realizan pruebas comparativas entre ambos diodos, ajustando su corriente al mismo valor. También se mide la luminosidad de ambos diodos con un luxómetro.

Elección de los diodos LED

Estos son los datos del los diodos LED que se han elegido como sustitución de los anteriores:

Referencia : Green C503B-GCS/GCN (30 degree)
Bin code: C0
Luminisodad (según el fabricante):
Mínima: 23.500 mcd Máxima: 32.900 mcd

Datasheet LED: C503B

Comparativa entre ambos diodos LED

Estos diodos se alimentarán con una tensión de 5 VDC, limitando su corriente máxima a 18 mA. Una vez colocada la resistencia limitadora en cada diodo, el montado con anterioridad y el nuevo, se realiza una prueba comparativa antes de cambiarlos.

Luminosidad LED

Medida de luminosidad

Posteriormente se mide la luminosidad de ambos diodos, utilizando un luxómetro adaptado para medir diodos LED.

Medida con luxómetro

Esquema de montaje

Esta matriz LED, compuesta por 2 dígitos de 7 segmentos con punto decimal, contiene 30 diodos LED (2 diodos por segmento). Cada diodo LED incorpora su propia resistencia limitadora, colocada en serie con el ánodo de cada diodo. Los 28 diodos de los segmentos llevan resistencias de 100 ohmios. Debido a que la orientación de los puntos decimales es frontal y producen un efecto luminoso mayor, se montan resistencias de mayor valor (470 ohmios) con el fin de igualar su luminosidad. A continuación se muestra el esquema de montaje de esta matriz LED.

Esquema: Matriz de 7 segmentos

PRUEBAS

Para comprobar el funcionamiento de la matriz LED, se conecta una CPU que muestra un contador numérico. Con el fin de comprobar los posibles defectos de luminosidad, este firmware reduce el tiempo de encendido en 1/10 (brillo reducido). A continuación se muestra la comparativa entre ambos matrices (antes de cambiar los diodos y después), funcionando ambas en las mismas condiciones.

Comparativa: Matriz LED

En el siguiente video se muestran todos los detalles y medidas realizadas al sustituir los diodos LED.

Matriz de 7 segmentos

Matriz LED

Construcción de una matriz LED de 7 segmentos y 2 dígitos. Cada dígito tiene un tamaño de 8 centímetros de alto y 4 de ancho. Se utilizan 2 diodos LED de 5mm (alto brillo) por cada segmento y se monta una resistencia limitadora en cada diodo LED. Los diodos LED se podrían sustituir por tiras LED de tipo SMD, consiguiendo así una luz más uniforme en todo el segmento. Siguiendo este proceso, se podría construir cualquier display a medida… independientemente de su tamaño y número de dígitos. También es posible construir un display incluyendo diferentes tamaños en la misma matriz, incluir logotipos o gráficos controlados con luz, etc.

2 dígitos

Construcción, paso a paso

El soporte base de la matriz está hecho con un trozo de cartón prensado, cartón piedra laminado en color blanco. El color no importa, porque habrá que pintarlo en negro mate. El corte lo he realizado con una fresadora digital (CNC), pero también se puede cortar a mano, utilizando una sierra de ‘pelo’.

Cartón piedra

Para el frontal de la matriz, cortaremos un trozo de metacrilato semi transparente (plexiglás), del mismo tamaño que el cartón piedra. Sujetaremos ambas piezas con cinta adhesiva de papel, colocando el lado más brillante del frontal hacia dentro.

Soporte de la matriz

Rellenamos todos los huecos de los segmentos con adhesivo termo-fundible. Hay que tener especial cuidado con las burbujas, si queda alguna habrá que quitarla.

Relleno matriz

Para iluminar los segmentos, se pueden utilizar trozos de tiras LED SMD. En este caso, yo lo hago poniendo un diodo LED en los extremos de cada segmento (2 diodos LED por segmento). Cada diodo LED lleva su propia resistencia limitadora. Dependiendo de la tensión de alimentación y el brillo que queramos obtener, calcularemos el valor más óptimo de la resistencia. Los diodos LED se introducen con un ángulo aproximado de 30º en los extremos de cada segmento, calentando previamente el adhesivo con aire caliente.

Conexiones de la matriz

La matriz la podemos hacer de ánodo o cátodo común. Como yo lo hago de ánodo común, todas las resistencias de cada dígito (conectadas al ánodo de los LED) van conectadas a un hilo común. Los 2 cátodos LED de cada segmento van conectados en paralelo con su correspondiente del otro dígito, saliendo un cable de conexión por cada segmento. En total tendremos los 2 cables del ánodo de cada dígito (ánodo común) y los 7-8 hilos del cátodo de los segmentos (8 si se añade el punto decimal).

En el siguiente video puedes ver con más detalle todo el proceso de construcción.

Bingo electrónico

Construcción de un Bingo electrónico, fabricando una matriz con 90 diodos LED de forma artesana (sin circuito impreso). Este montaje es muy adecuado para que lo pueda realizar cualquier aficionado a la electrónica.  El Bingo electrónico está construido a partir del micro-controlador AT89S52.

En la primera parte del video se muestra la fabricación de la matriz, en una carcasa de fibra plástica, y se fresan con una CNC los números en una lámina de plexiglás (PMMA) semitransparente.

En la segunda parte del video se analiza el esquema eléctrico, realizando la construcción de la lógica de control y la comprobación de funcionamiento. También se explica el sistema de multiplexación, midiendo las formas de onda con el osciloscopio. Al final, se realiza la construcción del frontal con serigrafía, y se construye una caja utilizando madera reciclada.

MULTIPLEXACIÓN

En la imagen siguiente se muestra el mapa de memoria del Bingo, necesaria para almacenar y mostrar en la matriz LED los números que van saliendo.

Mapa de memoria

La información de los 90 números del Bingo se almacena en 12 Bytes RAM del micro-controlador (12 Bytes X 8 Bit = 96). El Bit menos significativo  (LSB) del primer Byte contiene el  estado del número 1 del Bingo (LED: On/Off). El Bit más significativo del Byte 11 contiene el estado del número 88; y del Byte 12 de la memoria sólo se utilizan los 2 Bit menos significativos, asignados a los números 89 y 90 del Bingo.

Para mostrar toda la información del Bingo en el panel frontal, es necesario multiplexar en el dominio del tiempo 11 informaciones diferentes: las 9 líneas del panel numérico + 2 para el display de 7 segmentos. Como las líneas van conectadas a los ánodos de los diodos LED, el micro-controlador tiene que habilitar de forma secuencial y cíclica cada una de las 11 líneas de control, generando un impulso positivo en cada instante. Como se puede ver en el mapa de memoria, las 8 primeras líneas van conectadas al puerto 2 del AT89S52, la 9ª línea al P3.6, la 10ª línea al P1.1 y la 11ª al P1.0.

Multiplexado
Frecuencia de refresco

En este oscilograma se muestra la forma de onda de una de las 9 líneas de control del panel numérico. Con esta medida podemos conocer el tiempo que está encendido cada diodo LED (237 uSeg) y su velocidad de encendido = frecuencia de refresco (311 Hz). La frecuencia de refresco tiene que ser superior a la persistencia del ojo humano, procurando siempre que esta velocidad sea lo más alta posible, con el fin de evitar el efecto parpadeo o estroboscópico, al mezclarse dos fuentes de luz de frecuencia diferente.

¿Cómo se genera el número?

La generación del número aleatorio se basa en el modo de funcionamiento del sistema mecánico, mediante la extracción de una bola numerada del bombo. En un Bingo tradicional (mecánico), al principio hay 90 bolas numeradas dentro del bombo, y en cada extracción el número de bolas va disminuyendo de una en una.

En este Bingo electrónico, la generación del número se hace siguiendo estos pasos:

  • El micro-controlador utiliza un contador (Timer) que modifica su valor a una velocidad de 2 millones de valores por segundo aproximadamente (0,5 uSeg).
  • El valor del número máximo de este contador se limita en función a la cantidad de números que faltan por salir en el Bingo. Al principio el número máximo es 90 y va decreciendo a medida que se van extrayendo los números (igual que el número de bolas de un bombo mecánico).
  • En el momento que se pulsa el botón, el micro-controlador toma el valor del número generado por el contador, y este valor lo asigna al ‘hueco libre’ que queda en la tabla de números que faltan por salir.
  • Con ese valor, el micro-controlador busca el ‘hueco libre’ dentro de la tabla de números, empezando desde el número 1 hasta el 90, y luego asigna esta posición de ‘hueco libre’ al número real… ocupando el hueco y mostrando el número real en el display de 7 segmentos

De esta manera, las probabilidades de salir un número determinado son las mismas que en un bombo mecánico (es totalmente aleatorio). Por otra parte, se evita la generación de números ya extraídos.

Circuito de control (CPU)

Esquema BINGO

Siguiendo el esquema es muy fácil montar todos los componentes en una placa de circuito impreso de tipo universal (taladros sin conexiones). Las conexiones se pueden realizar por debajo, creando las pistas del circuito con hilo fino de cobre y estaño. Si se colocan bien los componentes, las conexiones estarán muy próximas y no será necesario realizar puentes para atravesar las pistas. Una vez finalizado el montaje, el micro-controlador AT89S52 se puede programar directamente en la placa, utilizando las conexiones ICSP que se muestran en el esquema.

El firmware de este Bingo se puede descargar de forma gratuita desde el siguiente enlace: J_RPM_v1_BINGO.HEX

Si no dispones de un programador, podrías utilizar Arduino para hacerlo:

Programador ICSP con ARDUINO