La mejor manera, con diferencia, de medir el estado de carga es hacer el recuento de culombios. Con este método se añade una pequeña resistencia en serie en el lado positivo o negativo de la batería y se integra la caída de tensión sobre esta resistencia. Esto le dará la integral de la corriente a través de las baterías, es decir, la carga que ha entrado y/o salido de la batería. Como la cantidad de carga que una célula mantendrá sólo se deteriorará muy lentamente en cada ciclo de descarga, esto le dará una medida muy precisa del estado de carga. Por supuesto, tendrá que recalibrar el rango cada 10 ciclos de carga aproximadamente para tener en cuenta la pérdida de capacidad.
El recuento de culombios no es especialmente difícil ni caro de implementar: una resistencia sensora de bajo valor, un amplificador de derivación de corriente (por ejemplo, INA21x) y un circuito opamp integrador + una interrupción en tu microcontrolador que lea periódicamente el valor de la carga y reinicie el integrador.
Una forma más fácil pero mucho menos precisa de medir la capacidad es seguir la curva de tensión de descarga de la batería. Una batería llena tiene una tensión más alta que una vacía. El problema de este método es que cuando la batería está cargada, la resistencia interna hará que el voltaje disminuya y la batería parezca "más vacía" de lo que realmente está. Por el contrario, durante la carga, la batería parece constantemente "más llena" de lo que realmente está. Por último, las baterías tienen un voltaje bastante estable en un amplio rango de carga. Por ejemplo, una célula de iones de litio suele pasar del 20 al 80% de su capacidad en un intervalo de sólo 0,4 V, o menos en el caso de algunos productos químicos. Eso significa que hay que hacer muchas conversiones de voltaje y promediarlas para tener una resolución razonable del SoC.
Medir la resistencia interna no es una buena manera de intentar inferir el SoC. La resistencia interna está mucho más correlacionada con la edad y el desgaste de una batería que con el estado de carga. Sin embargo, varía con el estado de carga y, al igual que con el método del voltaje, si se puede calibrar de alguna manera muy a menudo, puede dar resultados significativos, aunque toscos.