Capacidad real de una batería con ARDUINO

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
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
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
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
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
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

Construye una carga electrónica

Construcción de una carga electrónica, muy útil para comprobar el estado de carga de pilas-baterías, así como el correcto funcionamiento de cargadores y fuentes de alimentación. Los amplificadores operacionales, teoría y sus diferentes modos de funcionamiento: comparador, amplificador, filtro, oscilador, buffer. La carga electrónica se alimenta con una fuente de alimentación estabilizada de 5 VDC, pudiendo utilizar un cargador convencional de tipo USB. Esta carga electrónica incluye un voltímetro y un amperímetro. Con el amperímetro comprobaremos la corriente de carga, a la vez que medimos la tensión que está entregando el dispositivo bajo prueba.

Esquema: Carga electrónica
Esquema: Carga electrónica

Los primeros circuitos operacionales se comenzaron a fabricar en la década de los ‘60, por la empresa Fairchild. Se utilizaban estos circuitos para construir unidades encargadas de sumar, restar, dividir, derivar, integrar, etc. De ahí viene el origen de su nombre: Amplificador Operacional.

El amplificador operacional consta de dos entradas V1 V2 y una sola salida Vout. En la salida se obtiene la diferencia entre las dos entradas, multiplicada por un factor de ganancia G.  Un amplificador operacional ideal tiene una ganancia G infinita, una impedancia de entrada infinita, un ancho de banda (rangos de frecuencias a los cuales puede operar) también infinito, una impedancia de salida igual a cero, y ningún ruido. Como consecuencia, si tiene una impedancia de entrada infinita, sus corrientes de entrada serán nulas. En la práctica, un amplificador operacional tiene un ancho de banda del orden de MHz, con impedancias de entrada de algunos MOhm y una ganancia típica de 100.000. Aún así, con una diferencia de tensión de 50uV en sus entradas, se pueden obtener 5 voltios en la salida.

Esquema por bloques de un amplificador operacional
Esquema por bloques de un amplificador operacional

Todos los amplificadores operacionales comparten una misma estructura interna:

  • Amplificador diferencial: es la etapa de entrada que proporciona una baja amplificación del ruido y alta impedancia de entrada.
  • Amplificador de tensión: proporciona una ganancia de tensión.
  • Amplificador de salida: proporciona la capacidad de suministrar la corriente necesaria, con una baja impedancia de salida, y normalmente protegida frente a cortocircuitos.
Ganancia de los amplificadores operacionales
Ganancia de los amplificadores operacionales

OPERACIONAL COMO AMPLIFICADOR

En circuitos con ganancias superiores a 100.000, es muy fácil que la tensión de salida (teórica) llegara a superar a la tensión de alimentación. Llegado a este punto, se dice que el amplificador está saturado.

Cuando la tensión aplicada a la entrada V+ comienza a subir, la tensión en la salida Vout también sube, ya que es función de la diferencia de tensión entre sus entradas. Si conectamos una realimentación (R) entre la salida y V, la tensión en la entrada V también subirá, de manera que la diferencia de tensión entre las dos entradas se reduce y disminuye la tensión de salida (ganancia). Así es como podemos definir y limitar la ganancia de un amplificador operacional.

Filtro y oscilador, con amplificador operacional
Filtro y oscilador, con amplificador operacional

OPERACIONAL COMO COMPARADOR

Un amplificador operacional se puede utilizar como comparador. Esta característica hace que un amplificador operacional sea útil como elemento para adaptar niveles lógicos, o pudiendo generar la señal de error de un comparador de fases en un circuito PLL.

Comparador de fases con operacional
Comparador de fases con operacional

OPERACIONAL COMO BUFFER-SEGUIDOR

Operacional seguidor
Operacional seguidor

Si conectamos un amplificador operacional de la manera que nos muestra la figura, obtenemos lo que se conoce como circuito seguidor o buffer. Con esta configuración se eliminan los efectos de cargas importantes en salidas y se adaptan las impedancias, al conectar un dispositivo con una gran impedancia a otro con una impedancia pequeña o viceversa. En este caso, la tensión de salida será igual a la tensión de la entrada y la impedancia de entrada, teórica, sería infinita.