# Estimating battery temperature from current and voltage

Is there a way to estimate (even very roughly) the temperature a discharging lithium-ion battery can raise by knowing actual power delivered in a given time frame (in Wh)?

For example if it delivers 100 Wh for one minute, how much will its temperature raise?

First, you need an estimate of the heating power dissipated in the battery. That, in conjunction with thermal mass and thermal resistance to ambient will let you model the temperature of the battery.

Secondly, to estimate the heating power - I^2R - use an estimate of internal resistance and a measurement of the current.

The internal resistance can be estimated by comparing the open circuit voltage to the loaded voltage. The voltage difference between those two, divided by the load current, is the resistance sought.

Most loads can hold over when disconnected for a millisecond at a time, so to measure the open circuit voltage, the battery can be disconnected once a second for, say, a millisecond, and the open-circuit voltage measured at the end of the millisecond period, just before the load is reconnected. A mosfet switch can do the disconnecting job.

So, the steps are roughly:

• measure open circuit voltage
• measure under-load voltage and current
• estimate internal resistance
• estimate self-heating I^2R power
• update the thermal model with the self-heating power
• get the temperature from the thermal model - it’ll be one of the state variables.

These steps would have to be performed periodically, say once per second, and the thermal model updates will be fed the heat generated over a given sampling period - heating power * period. The under-load current and under-load voltage should be RMS values. When the loads are fairly steady, the instantaneous current sample will be close to the RMS value.

If the load is more dynamic, the internal resistance‘s dependency on loaded current and voltage will have to be sampled much more often than the open circuit voltage’s contribution to it. Eg. sample the voltage and current at 1kHz, and for one of those samples disconnect the load to get the open-circuit voltage (and a confirmation that the load got in fact disconnected!).

A fairly accurate single-cell battery thermal model would need just a couple of time constants. It can be extracted using any of the many available model extraction techniques.

Temperature rise is associated with the" internal resistance" of your battery, nothing else. So if your battery is in good shape, the temperature rise will be small. But if it's weakening (i.e. internal resistance is building up) then for the same power delivered its temperature will rise more. So in short - the answer is NO.

• Also note, that as the current draw increases, so does the ESR of the battery. Feb 15 at 17:57
• @Aaron is this so ? I'never heard of this. I always thought of ESR as a fixed number regardless of load depending only on battery condition. If ESR is a function of load, then that makes it very "exponential". Or is it an artefact of rising temperature and ON-time ? Are you sure you didn't mean "as the current draw increases, so does the IR drop" ? Feb 15 at 18:13
• See the graph here: batteryuniversity.com/article/…. ESR is a complex thing in a battery that is affected by many conditions at any instant in time. One of those is current draw. It also depends on battery chemistry, and current Li-ion batteries seem to have pretty flat ESR. Feb 15 at 18:18
• @Aaron the only line i needed to see was "..The internal resistance varies with the state-of-charge of the battery...". Nothing to do with instantaneous current draw. Feb 15 at 18:23