Reloj Pac-Man con ESP32 & UTF-8

Actualización del firmware (v1.44) para el Reloj-Texto construido con 4 matrices LED, y controlado con el microprocesador ESP32. Con esta actualización, el display podrá mostrar los caracteres latinos de uso más frecuente: áéíóúü ÁÉÍÓÚÜ cÇ ñÑ. También se incluyen los avisos con voz sintetizada, y efectos gráficos Pac-Man.

Reloj-Texto con dos alarmas y 2 husos horarios

UNICODE & UTF-8

La conexión entre diferentes redes de ordenadores provocó la necesidad de crear un estándar que contemplara el juego de caracteres gráficos de cualquier lengua, incluyendo ideogramas, caracteres árabes, chinos, etc.

Caracteres UNICODE

El año 1991 se anunció públicamente la creación de Internet, y ese mismo año el Consorcio Unicode y la ISO desarrollaron ambos un estándar para codificar los caracteres:  Unicode – ISO / IEC 10646. Ambos estándares se pueden considerar equivalentes, si tenemos en cuenta que el repertorio, los nombres de caracteres y los puntos de código del estándar ‘Unicode Versión 2.0’, coinciden exactamente con los de ISO / IEC 10646-1: que fue publicado en 1993.

Actualmente, la codificación dominante es UTF-8, que es una codificación de ancho variable diseñada para la compatibilidad con versiones anteriores de ASCII, y para evitar las complicaciones con las marcas de orden de bytes que existen con UTF-16 y UTF-32 . Además, el 93% de todas las páginas web están codificadas en UTF-8 y el Grupo de trabajo de ingeniería de Internet (IETF) requiere que todos los protocolos de Internet identifiquen las codificación UTF-8. También el Consorcio de correo de Internet (IMC), recomienda que todos los programas de correo electrónico puedan mostrar y crear correo utilizando UTF-8.

Codificación UTF-8

Los primeros 127 caracteres de cualquier tabla de caracteres de procedencia anglosajona o latina, son comunes y su origen es la tabla de caracteres ASCII. Este conjunto de caracteres se pueden codificar dentro de una matriz binaria de 7 bit., y son los caracteres que por defecto muestra cualquier display.

Caracteres ASCII de 7 bits

Si queremos mostrar los caracteres específicos de cualquier lengua, por ejemplo las letras acentuadas, tendremos que ampliar de tamaño la matriz del display que almacena los caracteres en memoria, y asociar una posición específica a cada uno de los caracteres dentro de esa matriz.  De esta forma, la tabla de caracteres que almacena el display no se corresponderá con el código del carácter que recibamos a través del interface Web. Así el procesador del display tendrá que comprobar el código del carácter que recibe, y si es superior al 127,  reposicionar el código para apuntar al gráfico que tenemos asociado a ese código entrante, dentro de la matriz gráfica del display. El tamaño de la matriz gráfica del display suele ser de 8 bit, y con esto es posible almacenar 127 caracteres extra, que podrían ser letras acentuadas, logotipos o cualquier dibujo.

Integración UTF-8 en el display

Si pretendemos que los caracteres de este reloj se puedan programar a través de un interface Web, es necesario utilizar una codificación de caracteres estándar, y la más versátil es la codificación UTF-8 de 2 Bytes.

Este reloj utiliza 3 tipos de fuentes gráficas, dos de ellas limitadas a los 10 números, utilizadas para mostrar los dígitos de la hora en formato estrecho y ancho, y la otra es la que almacena los caracteres ASCII, desde el espacio cuyo código es 32 en decimal, hasta el 126 que es la tilde de la letra eñe, más conocida como virgulilla ~. A continuación, y a partir del código 127, es donde se almacenan los caracteres extra.

Hay muchas formas de almacenar las fuentes gráficas en un display, pero la forma más eficiente es asociar un Byte a los 8 pixeles que tiene cada columna de la matriz LED. Así es más rápida la gestión que tiene que hacer el procesador para desplazar los textos por el display.

La fuente de textos y gráficos de este display es de ancho variable, entre 2 y 5 pixel de ancho por 8 pixel de altura. Así se limita el ancho a las letras que no lo necesiten, por ejemplo el espacio, y se pueden mostrar más caracteres en el display.  Para localizar los caracteres en la matriz, todos ellos ocupan 6 Bytes. El primer Byte indica el ancho del carácter, que se corresponde al número de Bytes que tiene que leer el procesador para formar la letra en el display.

Para facilitar la interpretación visual de los gráficos, los 5 Bytes de cada carácter se suelen escribir en formato binario, pero también se podría escribir en formato hexadecimal o decimal si se quisiera reducir el tamaño del archivo en el editor.

En el gráfico siguiente. vemos el esquema de codificación de caracteres UNICODE, junto con UTF-16 y UTF-8.

Cuando se asigna un código a un carácter, se dice que dicho carácter está codificado. El espacio para códigos tiene 1.114.112 posiciones posibles (0x10FFFF). En el grafico anterior vemos el espacio de códigos dividido en tramos, con el fin de mostrar los diferentes esquemas de codificación UTF. Los puntos de código se representan utilizando notación hexadecimal agregando el prefijo U+.

Actualmente los sistemas operativos limitan la tabla UNICODE a los primeros 65.536 caracteres (0xFFFF), y el valor hexadecimal se muestra añadiendo ceros a la izquierda si es necesario, hasta completar los 4 dígitos hexadecimales.

Es conveniente aclarar, que los sistemas operativos disponen de diferentes tablas de caracteres, algunas de ellas son privadas, y no se deberían utilizar en un documento público con acceso a Internet, ya que no son un estándar.

Internamente en un PC se podría crear un documento utilizando cualquier fuente de caracteres, con el fin de mostrar algún gráfico en especial. El problema es si ese mismo documento se abriese utilizando una fuente de caracteres diferente; porque algunos caracteres ya no serían los mismos.

Si queremos codificar caracteres en UTF-8, limitando su longitud máxima a dos Bytes por carácter, sólo podremos codificar los primeros 2.048 caracteres UNICODE, y recibiremos caracteres de 11 bits. Así cuando recibamos un Byte en UTF-8 que comience con 110, sabremos que se trata de un carácter doble, y los 5 bits siguientes de ese Byte serán los 5 bits más significativos del carácter UNICODE que estamos recibiendo, sin olvidar que este carácter  tiene una longitud de 11 bits. A continuación recibiremos el segundo Byte, el cuál empezará con los bits 10, y a continuación recibiremos los 6 bits menos significativos del carácter UNICODE.

Decodificación UTF-8

  1. Cuando el bit más significativo de un Byte en UNICODE comience con un 0, la longitud del código UTF-8 no cambia, manteniendo el mismo valor UNICODE, y respetando así su compatibilidad con la tabla ASCII.
  2. Si se recibe un Byte en UTF-8 que empieza con los bits 110, su longitud será de 2 Bytes, y el segundo Byte empezará siempre por 10.
  3. Si se recibe un Byte en UTF-8 que empieza con los bits 1110, su longitud será de 3 Bytes, y los dos Bytes siguientes al primero empezarán con 10.
  4. Si se recibe un Byte en UTF-8 que empieza con los bits 11110, su longitud será de 4 Bytes y los 3 Bytes siguientes al primero empezarán con 10.

Esquema de montaje

Para que este display Reloj-Texto funcione, sólo hay conectar 5 hilos entre un lateral del display LED y el módulo ESP32. El sonido de la alarma y el audio sintetizado sale por el pin GPIO26 del módulo ESP32, y hay que conectarlo a un amplificador de audio con su altavoz.

Firmware (v1.44)

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

Interface Web y ajustes

Este reloj se controla a través de cualquier dispositivo móvil, siempre que esté conectado a la misma red WiFi. El reloj dispone de 2 interfaces Web diferentes, pudiendo elegir su modo de funcionamiento. El reloj funciona de forma muy parecida en ambos modos, presentando la hora de acuerdo al formato que se haya configurado, y cada 30 segundos mostrando un rotación de texto.

  • Cuando el display está configurado en modo RELOJ: el texto será el día de la semana y la fecha; pero sólo en caso de que estuviese habilitada su presentación, porque en caso contrario el reloj siempre mostrará la hora.

Interface RELOJ: se puede modificar el huso horario al cuál se debe sincronizar el reloj, realizar los ajustes de formato y presentación de la hora, y modificar el brillo del display.

  • Cuando el display está funcionando  en modo MENSAJE: cada 30 segundos intercalará una rotación del texto que tenga programado.

Interface MENSAJE: se puede ajustar la velocidad de desplazamiento del texto, modificar el contenido del mensaje, y fijar la hora y repeticiones de sus dos alarmas.

Ambos interfaces disponen de un botón para cambiar su modo de funcionamiento, teniendo en cuenta que el reloj primero se reiniciará, sincronizando de nuevo la fecha y hora con el servidor NTP que le corresponda al uso horario ajustado. Al reiniciar el reloj, el punto de acceso WiFi al que se conecta,  podría asignar una dirección IP diferente a la anterior. También se han incorporado dos botones nuevos, uno para mostrar la hora con voz, muy interesante para personas invidentes, y el otro para forzar el borrado del display en cualquier momento, mediante la aparición de Pac-Man.

Con esta nueva versión (v1.44), es posible escribir textos utilizando letras acentuadas y la letra Ñ, tanto en mayúsculas como en minúsculas. Además, si el reloj está configurado con el huso horario de España y el formato de presentación de la hora es el Europeo, los textos del día de la semana y fecha, aparecerán traducidos al Español.

¿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

 

 

 

Control-Medidor de Ozono en el aire, con Arduino

Construcción de un medidor de ozono en el aire con Arduino. Al mismo tiempo, este medidor se encargará de controlar el encendido y apagado del equipo generador de ozono, manteniendo así un nivel de concentración prefijado, dentro de un compartimento destinado a la desinfección de objetos. El sensor de gas ozono tipo MQ-131, de baja concentración, permite medir concentraciones de ozono en el aire comprendidas entre 0,01 y 1 ppm.

Medidor de la concentración de ozono en el aire

 

Concentración de Ozono en el aire

El ozono es muy bueno para desinfectar locales, ropa de trabajo, mascarillas y también alimentos. Debido a la situación actual, se están vendiendo generadores de ozono de todo tipo, y muchos de ellos orientados al uso doméstico.  El ozono, al igual que cualquier producto desinfectante, hay que utilizarlo con precaución. Es importante destacar que el ozono es un gas tóxico para los pulmones. Los generadores de ozono hay que utilizarlos en sitios cerrados y sin gente dentro.

Concentración máxima de ozono en el aire durante 8 horas

El problema que tiene el ozono frente a otros productos desinfectantes, es que es muy difícil de dosificar. El ozono es un gas muy inestable y no se puede envasar, debido a que las moléculas del ozono se recombinan muy rápidamente, convirtiéndose de nuevo en oxígeno. Cuando se utiliza el ozono como desinfectante, lo más importante es calcular el tiempo que debería estar funcionando el equipo generador. Ese tiempo dependerá del valor de concentración de ozono que necesitemos alcanzar (ppm), y varía en función de los metros cúbicos desinfectar (volumen) y de la potencia del generador.

Desinfectantes

Teniendo en cuenta que la producción de ozono de un generador varía en función de la calidad del aire (temperatura, humedad…) y además depende del rendimiento de su elemento reactor, el cual se envejece y no es muy lineal; la única manera de calcular ese tiempo sería mediante un equipo de medida, que a su vez controlara el encendido y apagado del equipo generador de ozono. Este interruptor funcionaría como el termostato de una calefacción, conectando y desconectando el generador en función de la concentración de ozono en el aire que se quisiera alcanzar.

Sensores de gas MQ

MQ  es una familia de sensores de gas, orientados a medir diferentes compuestos químicos dependiendo del modelo de sensor que se utilice. Los sensores MQ están compuestos por un elemento semiconductor (óxidos metálicos) sensible a cada tipo de gas, el cuál varía su resistencia en función de la concentración de gas en el aire.

Sensores de gas de la serie MQ

Estabilidad y Precisión de los sensores MQ

Para obtener una mayor estabilidad, los sensores MQ incorporan una resistencia calefactora, lo cual supone un consumo extra y una falta de precisión en las medidas que se realicen al poco tiempo de alimentar el sensor. Otro punto importante a considerar, es que cada modelo de sensor MQ tienen alta sensibilidad a un gas específico, pero en menor medida también reaccionan o otros gases, y esto provoca una mayor imprecisión. Por ejemplo, el sensor de ozono MQ-131 tiene una alta sensibilidad al ozono, pero también es sensible a otros gases oxidantes como el cloro y el dióxido de nitrógeno.

Módulo sensor de gas ozono MQ-131

Para obtener una precisión mínima, es necesario calibrar cada sensor, y almacenar su valor de resistencia sin presencia de gas, dentro del firmware encargado de calcular las medidas. La precisión de estos sensores depende muchos factores internos y externos difíciles de controlar (temperatura de trabajo, humedad, envejecimiento del sensor), y nunca deberían utilizarse como elemento de control en lugares críticos.

Detalles del módulo sensor de gas ozono MQ-131

Con la ayuda de un controlador programado, por ejemplo con Arduino, los sensores MQ los podemos utilizar para medir la concentración de un gas determinado, dependiendo del modelo de sensor que elijamos.  Los sensores de gas MQ pueden comprarse sueltos, pero es muy común conseguirlos ya montados en un pequeño PCB, en el cuál se incluye un circuito comparador que nos proporciona una salida digital extra, además de la propia salida analógica del sensor. A través de la resistencia variable (trimmer) que incluyen estos circuitos , podríamos prefijar un umbral máximo de gas, y disparar una alarma.

Esquema genérico, para utilizar con los sensores de tipo MQ

Medidor-Controlador de Ozono

En el caso del sensor MQ-131, muy sensible al gas Ozono, mediante esta salida digital podríamos controlar el encendido y apagado de un generador de ozono. Esto sería muy útil para mantener un nivel alto de ozono dentro de un compartimento cerrado (cabina, caja, etc.) con el fin de desinfectar objetos personales, utensilios de trabajo, ropa, etc.

Esquema del Medidor-Controlador de ozono.

Descargar el firmware

El firmware que necesitas para programar el ATMEGA328P (Arduino UNO),  los puedes descargar desde el siguiente enlace:  MQ-131_JR.rar

Cubierta del sensor, impresa en 3D

La cubierta de protección del sensor gas la he fabricado con PLA. El PCB del sensor se fija a esta cubierta sin tornillos,  calentando con un soldador los 4 resaltes de PLA que sobresalen por los orificios del PCB, una vez encajado en la cubierta.

Carcasa 3D, para el sensor de gas MQ

Los archivos que necesitas para imprimir esta cubierta de protección, los puedes descargar desde el siguiente enlace: Cover for MQ gas sensor

¿Necesitas fabricar un PCB?

Actualmente hay muchas empresas que se dedican a fabricar circuitos impresos, 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. Hasta un 30% de descuento para PCBs especiales, con fabricación en 24 horas.

Logo: PCBWay
Ahora el servicio de montaje en PCBWay por tan solo 30$, con tiempo de entrega rápido: https://www.pcbway.es/

 

 

 

 

Avisador para Smartphone

Construcción de un sencillo avisador acústico/luminoso, para amplificar las llamadas y avisos de un teléfono móvil. Este circuito entrega en una clavija la tensión de red cada vez que suena el teléfono, y podría suministrar hasta un máximo de 10 amperios.

El escuchar las llamadas de un teléfono móvil,  es un problema muy común en las personas de avanzada edad. La presbiacusia, o pérdida de audición, ocurre en la mayoría de las personas al envejecer, aunque también sucede con personas más jóvenes, cuando están expuestas a sonidos demasiado fuertes durante mucho tiempo.

Deficiencia auditivaPara teléfonos fijos existen muchos avisadores de tipo comercial… timbres de potencia, avisadores luminosos para sordos, etc. Estos dispositivos normalmente van conectados a la roseta del propio teléfono, aunque antiguamente existían algunos dispositivos que utilizaban una bobina captadora con una ventosa, que se pegaba en las proximidades del timbre del teléfono. Es complicado hacer algo parecido y fiable para un teléfono móvil, porque hay mucha variedad de dispositivos, y además la tecnología va cambiando. Mi idea es buscar algo que sirva para cualquier teléfono móvil de última generación, y sin tener que conectar nada al teléfono.

Posibles opciones

Una forma sencilla de hacerlo, sería activando el vibrador del teléfono con las llamadas; y detectar esa vibración para activar un timbre o una luz auxiliar. Hice bastantes pruebas con diferentes sensores, y al final lo descarté por ser poco fiable. El sistema de vibración de algunos dispositivos es muy leve, y al aumentar la sensibilidad del circuito se producen falsos avisos debido a las vibraciones del propio entorno.

Sensores de vibración

Buscando un poco en el Play Store, encontré muchas aplicaciones que permiten encender la luz/linterna trasera del teléfono cuando reciben llamadas o mensajes en redes sociales… y además todo esto es configurable!

Alert Flash en PlayStore
Pensando en uno de los últimos montajes que realicé, y con el fin de aprovechar los circuitos impresos que ya tenía, decidí construir una base de carga para el teléfono móvil, en la que se incluye la detección del encendido de la luz/linterna del móvil.

Interruptor inteligente

Funcionamiento del avisador

Cada vez que se encienda la luz del móvil, el circuito suministrará una tensión de red con un consumo máximo de 10A. Así en esta salida se podría conectar un timbre de potencia, una luz, o cualquier cosa que se nos ocurra.

Esquema: Avisador para Smartphone

Además, este circuito dispone un LED indicador de estado, que nos permitirá saber si ha habido alguna llamada o notificación desde que dejamos el teléfono móvil apoyado en la base.

El archivo que necesitas para programar el ATtiny85, lo puedes descargar de forma gratuita desde el siguiente enlace: Alert_Mobile.rar

Caja impresa en 3D

La caja la he fabricado en PLA, a medida del teléfono Xiaomi Mi A1.

Caja 3D: Avisador para Smartphone

Los archivos que necesitas para imprimir esta caja,los puedes descargar desde el siguiente enlace:

Call signaling for Smartphone

¿Dónde fabricar el PCB?

Actualmente hay muchas empresas que se dedican a fabricar circuitos impresos, 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. Hasta un 30% de descuento para PCBs especiales, con fabricación en 24 horas.

Logo: PCBWay

https://www.pcbway.es/

Ahora el servicio de montaje en PCBWay por 30$, con envío GRATUITO mundial:
https://www.pcbway.es/quotesmt.aspx

 

Luz de dirección para bicicletas (v2)

Diseño y montaje de una barra LED, para indicar los cambios de dirección y disponer de iluminación trasera en bicicletas y patinetes. Todo el conjunto está montado en cajas hechas a medida, fabricadas en PLA con la ayuda de una impresora y un bolígrafo 3D.

Luz de dirección para bicicletas y patinetes

Barra LED en la bicicleta

Este montaje es una mejora del circuito que mostré anteriormente, basado en el microprocesador ATtiny.

Barra LED de señalización para bicicletas, con ATtiny

En este caso, se amplía el número de puntos LED desde 5 a 9, y se habilita la posibilidad de hacer funcionar las luces de dirección cuando está conectada la luz trasera. En el circuito anterior, debido al número tan limitado de conexiones que dispone el ATtiny  (8 pines), el circuito seleccionaba el modo de funcionamiento al arrancar, y era necesario desconectar la alimentación para cambiar su modo de funcionamiento.

Barra LED para bicicletas
Barra LED para bicicletas

Al utilizar el microprocesador ATmega 328P (28 pines), es posible dedicar 2 pines como entradas y detectar su modo de funcionamiento de forma permanente –sin tener que apagar y encender

Esquema: Barra LED (v2)

Como se puede ver en el esquema, el circuito está alimentado directamente desde la batería de 3,7V. Por este motivo es muy importante que elijamos los LED de alta luminosidad, pero siempre que su umbral de encendido sea bajo (menor de 3V).

Corriente LED

Firmware

El código de programación de esta barra LED,  se puede descargar desde el siguiente enlace: Luz trasera para bicicletas (v2)

Construcción y mecanizado

Como este montaje necesita muy pocos componentes electrónicos, he utilizado un PCB de tipo universal para montar el microprocesador, la batería y el módulo de carga TP4056. Los 9 LED los he montado directamente en una caja hecha a medida, fabricada en PLA con una impresora 3D.  El mecanizado y anclaje de todo el conjunto también está hecho con PLA.

Barra LED: Piezas 3D

Descargar ficheros .stl

LED steering light for bicycles and skateboards

Para la fijación de los LED con el frontal de la caja, he utilizado un bolígrafo 3D. Este bolígrafo 3D  me lo ha enviado GearBest para que muestre su funcionamiento.

Bolígrafo 3D Sunlu SL - 300

El bolígrafo 3D Sunlu SL – 300 utiliza el mismo tipo de filamento que las impresoras 3D, permitiendo así realizar reparaciones y mecanizados en las piezas utilizando el mismo material y color con el que están hechas.

Logo GearBest

A pesar de que el bolígrafo 3D Sunlu SL – 300 tiene un precio muy ajustado, GearBest me ha facilitado un código de descuento para poder conseguirlo todavía más barato. A continuación os dejo algunos link de acceso que me han parecido interesantes, y los códigos de descuento que me han facilitado.

Bolígrafo 3D Sunlu SL – 300
https://goo.gl/sNC6qQ
Cupón de descuento: RPM3DPEN

Accesorios y filamentos 3D
https://goo.gl/9KtaaJ
Cupón de descuento: CA%PS704
8% para compras superiores a 10$

Nuevos gadgets
https://goo.gl/5iCiVL

Web de GearBest en español
https://goo.gl/knpkvD

Mini cargador de baterías, regulable de 5A

Construcción de un pequeño cargador de baterías, regulable en tensión y corriente, aprovechando una fuente de alimentación reciclada. El módulo de ajuste y control de carga, está basado en el circuito integrado XL4015 (Step-Down Converter), que permite funcionar con unos valores máximos de 36V y 5A. El conjunto lo he montado en una caja hecha a medida, fabricada con la impresora 3D en PLA.

Gearbest JGAURORA A5 Updated Large Printing Size 3D PrinterJGAURORA A5 Impresora 3D de gran tamaño de impresión

Regulador de tensión XL4015

El circuito integrado XL4015, es un regulador de tensión de bajas pérdidas, que permite funcionar con una tensión y corriente máxima de 36V/5A. La regulación de tensión se realiza modificando el ancho de impulso (PWM) de una señal de alta frecuencia, consiguiendo así un rendimiento muy alto  (>80%).

Chip XL4015

El XL4015 regula la tensión de salida mediante la comparación de una muestra de la tensión de salida y su referencia interna de 1,25V.

Step-Down Cnverter XL4015

Modificando los valores del divisor de tensión a partir de la tensión de salida (ver la fórmula en el esquema), es posible obtener una tensión estabilizada dentro de un amplio margen de tensiones. La tensión máxima de salida será la de entrada, menos algunas décimas de voltio, y la tensión mínima será la tensión de comparación del XL4015 (1,25V).

Cargador de baterías con el XL4015

A partir del circuito integrado XL4015 se puede construir un circuito de control para cargar cualquier tipo de batería, porque tiene un amplio margen de tensión-corriente, y ambos valores son regulables.

Módulo cargador de baterías XL4015

Actualmente se puede conseguir este módulo de control de carga a bajo precio, montado en una pequeña placa de circuito impreso.

Módulo cargador de baterías, con XL4015

Analizando el esquema de este módulo de carga con el XL4015, podemos ver lo fácil y barato que resulta construir un cargador de baterías ajustable en tensión y corriente, Sólo tendríamos que sustituir las 2 resistencias ajustable por 2 potenciómetros, y montarlos en el frontal de una caja junto con sus 3 indicadores LED.

Este mismo circuito también se puede comprar con el XL4005 en lugar del XL4015. El módulo con el XL4005 sería totalmente compatible para realizar este montaje, lo único que cambia es que la tensión de comparación del XL4005 es de 0,8V en lugar de 1,25V. Así la tensión mínima que obtendríamos con el XL4005 será 0,8V.

Cargador de baterías regulable

Para fabricar este cargador de baterías, nos haría falta una fuente de alimentación y un medidor de tensión/corriente.  Yo he utilizado una fuente de alimentación de 19,5VDC, recuperada de una impresora HP Deskject 940C. El medidor de tensión/corriente que he montado, es un analizador de energía eléctrica muy completo.

Medidor de energía eléctrica

 

Este analizador de energía eléctrica es muy adecuado para este montaje, porque muestra datos muy útiles para conocer el estado de carga de la batería: su capacidad, consumo, potencia, tiempo de carga, etc.

Caja a medida con PLA

A pesar de que existen muchos modelos y tamaños de cajas donde podríamos montar este cargador de baterías, he preferido hacer una caja a medida con la impresora 3D.

Caja con PLA

Descargar fichero .stl

Tiny battery charger, adjustable 5A

Hacer la caja de un cargador de baterías con PLA, quizás no sea lo más adecuado para obtener un acabado profesional y robusto. Pero como este cargador lo voy a utilizar de forma ocasional y no me importa mucho su aspecto, el PLA es una buena solución.