rin67630
Solar Enthusiast
Hi, I am currently building and improving a networked battery monitor based on an ESP8266 and an INA226 current monitoring device.
I have been making several experiments trying to find a way of evaluating the internal resistance of the battery in circuit.
I am currently using the variation of current that happens from changing light conditions and am using that formula, running every minute:
But I am not satisfied with the results, that are not giving consistent readings.
Apparently the dynamic behaviour of the battery within 1 min prevails over the internal resistance.
I am now planning to use another technique: Checking the internal resistance only once a day, a few minutes before midnight (where I am sure to get stable conditions) and rapidly switching a c/200 load on/off a couple of times with a relay to force the delta_voltage and delta_current.
I am pretty sure, that this will provide good results, but on the other side, it necessitates an additional relay and a power resistor.
Does someone know a method from which I could get consistent (and valid) results without extra hardware?
Of course, any measure of the internal resistance of the battery ( which should be a few milliOhms only) need a shunt close to the battery and sensing lines to compensate the cable losses, but that was part of the design right from the beginning anyhow.
I have been making several experiments trying to find a way of evaluating the internal resistance of the battery in circuit.
I am currently using the variation of current that happens from changing light conditions and am using that formula, running every minute:
Code:
if (battery.voltage < (MAX_VOLT - 1) && battery.voltage > (MIN_VOLT + 0.3))
{
// Evaluate battery internal resistance (r = dv / di) if inside regular limits.
if (fabs(delta_current) > 0.05) internal_resistance = fabs(delta_voltage / delta_current);
}
Apparently the dynamic behaviour of the battery within 1 min prevails over the internal resistance.
I am now planning to use another technique: Checking the internal resistance only once a day, a few minutes before midnight (where I am sure to get stable conditions) and rapidly switching a c/200 load on/off a couple of times with a relay to force the delta_voltage and delta_current.
I am pretty sure, that this will provide good results, but on the other side, it necessitates an additional relay and a power resistor.
Does someone know a method from which I could get consistent (and valid) results without extra hardware?
Of course, any measure of the internal resistance of the battery ( which should be a few milliOhms only) need a shunt close to the battery and sensing lines to compensate the cable losses, but that was part of the design right from the beginning anyhow.