Además de las protecciones básicas y los cargadores, en muchos casos suele ser necesario conocer la carga de la batería para actuar consecuentemente, por ejemplo, para lanzar un aviso de batería baja o apagar el sistema para evitar que funcione incorrectamente.
La forma más básica consiste en leer la tensión de la batería mediante el conversor analógico digital que se halla presente en la mayoría de microcontroladores. Esta técnica es válida para sistemas que no requieran mucha precisión y puede satisfacer muchos de los casos. En caso de que el sistema tenga un consumo medio-alto, o se necesite una buena estimación de la carga, es necesario emplear un medidor de carga dedicado para obtener buenos resultados.
Estos medidores dedicados, además de proporcionar el nivel de carga, permiten monitorizar el estado de la batería, siendo posible leer los valores de tensión y corriente instantáneos, temperatura, envejecimiento, etc. Algunos más avanzados permiten la autentificación de la batería y conocer estadísticas como ciclos de descarga o el consumo máximo del sistema.
Para monitorizar el consumo, suelen apoyarse en una resistencia de medida externa de muy bajo valor, situada entre la batería y el resto del sistema. La caída de tensión en esta resistencia es proporcional a la corriente, por lo que así se puede medir la corriente instantánea que entra o sale de la batería. Dado que se emplean resistencias de muy bajo valor, es necesario cuidar el rutado y la soldadura para que las medidas no se vean afectadas.
El medidor de batería integra esta corriente a lo largo del tiempo y, junto con la medida de voltaje que hace en el borne de la batería, predice el consumo total que se ha realizado. De esta manera, conociendo algunos parámetros básicos de la batería, permite conocer con cierta precisión el estado de carga.
A la hora de usarlo, es necesario inicializar estos parámetros del medidor a partir de las especificaciones de la batería y de los extremos de funcionamiento (tensión de terminación, tensión de funcionamiento mínima, etc.).
Una vez que se ha configurado el medidor, este comenzará a crear un modelo matemático del comportamiento de la batería, a partir del cual se extrae el porcentaje de carga actual. Este modelo evoluciona en el tiempo en función de los datos que recoge el medidor, como son la energía que absorbe la batería hasta cargarse completamente, o su respuesta ante transitorios de corriente. Esto permite que, según la batería envejece, los datos sigan siendo cercanos a la realidad.
Dado que este modelo es específico para cada celda concreta, si reemplazamos la batería es necesario reiniciar el proceso de aprendizaje. Por ello, si la batería del sistema es extraíble se habrá de monitorizar el cambio de celda para comunicárselo al medidor.
Los medidores de batería suelen ser ligeramente distintos en función de si están diseñados para residir en la batería (por lo que siempre estarían alimentados y no habría cambios de celda) o en el sistema (host), que requerirá que el medidor se adapte a la batería que se use en cada momento. En este segundo caso, siempre estará situado justo tras la conexión de la batería y antes del resto del sistema.
En cuanto a la forma de comunicar la información y configurar el medidor, la interfaz habitual es PMBUS o I2C. Si el medidor se halla en el sistema (host), no es necesario tomar precauciones específicas, mientras que, si se halla en la batería, se habrán de proteger las líneas I2C de posibles descargas electrostáticas.