Está en la página 1de 7

Medir la capacidad real de una batería con ARDUINO.

Para que este sistema pueda funcionar


de forma autónoma (sin PC), se utiliza el módulo ‘LCD Keypad Shield’ para mostrar la
información en su display. Midiendo la capacidad real de una batería nueva, podremos saber la
fiabilidad del fabricante y además calcular el tiempo de funcionamiento que tendrá cualquier
dispositivo que utilicemos con dicha batería.

LCD Keypad Shield – Esquema


El módulo ‘LCD Keypad Shield’ está diseñado para poder insertarlo encima del módulo
ARDUINO, sin la necesidad de realizar ninguna conexión adicional. Como podemos ver en el
esquema anterior, este módulo LCD  transfiere las entradas/salidas de ARDUINO que no
utiliza (incluso el conector ICSP y el pulsador RESET) hacia su circuito impreso, permitiendo
la inserción de conectores para poder utilizar estas conexiones sin tener que soldar cables en el
módulo ARDUINO. LCD Keypad Shield dispone de 6 pulsadores, el pulsador Reset y 5 más
para realizar maniobras, así como un diodo Led para indicar cuando está alimentada la placa.
Los 5 pulsadores de maniobras están conectados a una red de resistencias alimentadas con 5V,
y la salida va conectada a la entrada analógica ‘0’ de ARDUINO. Dependiendo del pulsador
que se accione, aparecerá una tensión diferente en esta entrada analógica. Si leemos el valor
desde ARDUINO utilizando la sentencia: analogRead(0), obtendremos un valor diferente con
cada pulsación. Añadiendo una simple rutina en el código, podremos detectar la posición de
cualquier botón. En la imagen anterior se muestran los valores que he medido en mi
ARDUINO -tus medidas pueden variar ligeramente-, así como la rutina que podrías utilizar
para detectar la pulsación de los botones.
LCD Keypad Shield & ARDUINO
El módulo LCD utiliza su propia tabla de caracteres (ROM), pero también dispone de 8
caracteres programables (RAM). Los caracteres programables los podemos utilizar para generar
cualquier carácter o símbolo que necesitemos mostrar en la pantalla y no se encuentre en la
tabla de caracteres (ROM) del display. En la imagen anterior se muestran los detalles para
programar estos caracteres, así como las sentencias que se deben utilizar con la
librería: LiquidCrystal.h en ARDUINO.
Sistema de medida: Capacidad real de una batería
Para medir la autonomía de la batería, vamos a utilizar ARDUINO como cronómetro de
precisión. La conexión/desconexión del cronómetro se realiza de forma automática,
utilizando una entrada digital como control. El sistema de detección del estado de la batería
será el incluido dentro del módulo TP4056 (módulo de carga para 3,7V con protección). El
módulo TP4056  además controlar la carga de la batería, mostrando su estado mediante dos
indicadores LED, desconecta la batería de cualquier dispositivo que conectemos a su salida
cuando la batería llega a umbral mínimo de tensión (<2,5V).  Entre la salida de tensión del
módulo TP4056 y ARDUINO conectaremos un pequeño interface, consistente en un transistor
NPN, 2 resistencias y un condensador (ver esquema). Para facilitar el cálculo y obtener
precisión en la medida, utilizaremos una carga electrónica para conseguir que la corriente
permanezca constante, independientemente de la tensión que tenga la batería.
El cronómetro incrementará el contador de tiempo, siempre que tengamos tensión a la salida
del módulo TP5056. Cuando el cronómetro se detenga podremos calcular la capacidad real de
la batería, convirtiendo el valor de tiempo medido en horas y multiplicándolo por la corriente
que hayamos seleccionado en la carga (la corriente en amperios para Ah). Es importante
destacar que al final del ciclo de descarga, cuando el cronómetro se detenga, la carga se
desconectará de la batería… y esta empezará a recuperarse más rápido o despacio dependiendo
de la carga que le hayamos desconectado. Al subir de nuevo la tensión de la batería, llegará un
momento en el que se supere el umbral de reposición del módulo TP4056, se conectará de
nuevo y el cronómetro seguirá incrementando el tiempo. Cuando esto suceda, se producirán
ciclos intermitentes de cadencia cada vez más larga, y al final se detendrá por completo. Si
queremos conocer la capacidad de la batería con bajo consumo, podemos esperar hasta el final.
Pero si necesitamos comprobar la autonomía con el consumo que hemos seleccionado en la
carga (porque es el consumo de nuestro dispositivo), tendremos que hacer el cálculo cuando se
desconecte el cronómetro por primera vez.
En la siguiente imagen se muestran las medidas comparativas que he realizado con dos baterías
de origen chino, rotuladas con una capacidad de 9800 mAh. Las dos baterías son nuevas y
pertenecen al mismo lote. Las medidas las he realizado con una corriente constante de 500 mA,
y el tiempo que se muestra es el de la primera desconexión. Al medir la capacidad de dos
baterías iguales, nos aseguramos que la batería que hemos utilizado no está defectuosa  (ambas
medidas son parecidas). Al realizar dos medidas utilizando la misma batería, comprobamos la
precisión del sistema de medida que estamos utilizando (valores casi idénticos).

Resumen de las medidas


En la última línea se muestra la capacidad que he medido en otra batería de tipo TR 14500,
de una ‘supuesta’ capacidad de 1200 mAh.

Medidas con umbral de tensión ajustable


Si queremos medir la capacidad de otros tipos de batería, con tensiones diferentes, o
simplemente necesitamos comprobar el tiempo de funcionamiento de cualquier batería hasta
llegar a una tensión umbral determinada, podríamos montar el circuito que se muestra a
continuación.
Sistema de medida opcional, con umbral de tensión ajustable
Como podemos ver, sólo tendremos que sustituir el módulo de carga TP4056 por el circuito de
control que se muestra en la imagen. Mediante el potenciómetro de ajuste (22K), fijaremos el
umbral mínimo de tensión a la que se debe desconectar de la carga electrónica,  y detener la
cuenta del tiempo (cronómetro).
Descargar el código de ARDUINO : Crono_Battery
COMPARTE ESTO:
 Imprimir

ME GUSTA ESTO:
RELACIONADO

Medir las revoluciones R.P.M.


2 mayo, 2016
En «Reparaciones y montajes electrónicos»
Amplificador Bluetooth - ICStation
8 marzo, 2018
En «Reparaciones y montajes electrónicos»

Shield programador ATmega/ATtiny (ARDUINO)


22 julio, 2018
En «ARDUINO»
Publicado el26 abril, 2016AutorjrpmCategoríasARDUINOEtiquetasanalogRead(0), Arduino, Autonomía,Capacidad
batería, Capacidad real, Carga constante, Carga electrónica, Corriente constante, Cronómetro, LCD Keypad
Shield, LiquidCrystal.h, mAh, Medir capacidad de una batería

6 comentarios en «Capacidad real de una batería con


ARDUINO»

1. luis franciullidice:
26 febrero, 2020 a las 00:49

El articulo esta bueno pero no puedo bajar el


archivo https://www.dropbox.com/s/qcj0ot3xfpcy633/Crono_Battery.zip?dl=0
RESPONDER

1. jrpmdice:
29 febrero, 2020 a las 20:05
Lo acabo de probar y la descarga funciona. Tienes que pulsar en los 3 puntos del lateral
derecho de la ventana para abrir el menú ··· , y luego Download
RESPONDER

2. charlydice:
2 mayo, 2018 a las 06:27

hoola que tal el codigo ya no esta disponible


RESPONDER

1. jrpmdice:
2 mayo, 2018 a las 21:34

El código está disponible, se puede descargar sin problemas.


RESPONDER

3. Camilo Diazdice:
26 octubre, 2016 a las 22:07

Una pregunta uno similar al mtp15 ?


Hay otro aue pueda usar?
RESPONDER

1. jrpmdice:
30 octubre, 2016 a las 20:34

En principio, cualquier transistor MOSFET de canal N te podría valer.

También podría gustarte