Lipo battery level


Do you know how to measure the load of a batterie even if the battery is delivering current ? I measure the voltage at the closer motor but it is very noisy and i suddenly get very low voltage when the robot is forcing.

On lithium technology voltage is not proportional to the batterie charge, they lost their tension at the end of their discharge…

In most of the comercial product using lithium based batteries, they use “fuel gauge” components. This component mesure the curent in and out at each time to evaluate the capacity and the level of the batterie. This system need to know the limit voltage of elements (min and max) and he always need to be plugged on the batterie pack. Most of the time this system is coupled with a charge contoler.

On NAO for example this sensor is in the batterie bloc (with a charge controler) and communicate to the main board over I2C.

If you only need to know if your batteries are empty, you could measure the voltage as closer as possible of your batterie (to avoid cable resistance error) and measure the mean value of each second. If your mean value is below the lower tension of the batterie pack, your batterie could be considered as empty.

WARNING : Lithium batteries can explode if they are under and over their limit voltages.

1 Like

An other possibility is to store the uptime in a database and create statistics, removing with intelligence the values that pollute the estimation (a reboot will create small and repeated uptimes).

We could also detect a new charge and add all uptimes until the battery is connected to a power source. Or do it manually with a kind of reset button.

You shouldn’t discharge your Lipo battery below the 3.5v, that will shorten battery life.