This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Best practice for monitoring coin cell battery voltage given ESR

I'm using an NRF51 w/ S130 operated directly from a coin cell battery. I use the ADC with a voltage divider to successfully measure analog voltages. One of the challenges of the coin cell is that its ESR is not insignificant and degrades overtime. This means that if I have a substantial current pulse (for example from RF activity) the battery voltage droops in a meaningful way (sometimes ~200 mV). The ESR is not fixed and usually gets worse over time. Suppose my system cannot operate below 2.4V and I want to monitor the battery voltage and [do something] when there's a low battery condition. What's the best way to do this given the ESR? For example with a multimeter I might see "2.6V", but with a healthy current pulse the battery might actually droop to 2.4 momentarily, which could brownout my system. Is there a way to synchronize sampling the ADC with RF activity so I can measure the worst case battery voltage?

Parents
  • An easy solution I could suggest would be to take a simple discharge test using a fully charged coin cell battery. Then, by doing a constant current pulse (e.g. somewhere between 200-300 mA) for a few minutes (say 10 or 20) and then stop the current pulse after the time limit. Then, you should get a graph that is similar to this:

    image description

    This graph was found on Prof. Gregory Plett's homepage in the Chapter 2 PDF file.

    From this graph, you can approximate the R_0 value (i.e. ESR) crudely from Ohm's law: V=R_0*I. Since you can calculate the change in voltage and you know the Delta I (i.e. the difference between the current pulse and 0 A), you can approximate R_0. Like you said, the ESR does increase as the state of health of the battery decreases. So maybe, you could try this on a "used" or multiple used battery, but which still has/have a bit of charge left in it.

    It is always a possibility to do some battery testing & find a better estimate of R_0, but this would take more time & computing resources. I would try this first & if you don't think it's a good idea we can discuss more advanced methods.

Reply
  • An easy solution I could suggest would be to take a simple discharge test using a fully charged coin cell battery. Then, by doing a constant current pulse (e.g. somewhere between 200-300 mA) for a few minutes (say 10 or 20) and then stop the current pulse after the time limit. Then, you should get a graph that is similar to this:

    image description

    This graph was found on Prof. Gregory Plett's homepage in the Chapter 2 PDF file.

    From this graph, you can approximate the R_0 value (i.e. ESR) crudely from Ohm's law: V=R_0*I. Since you can calculate the change in voltage and you know the Delta I (i.e. the difference between the current pulse and 0 A), you can approximate R_0. Like you said, the ESR does increase as the state of health of the battery decreases. So maybe, you could try this on a "used" or multiple used battery, but which still has/have a bit of charge left in it.

    It is always a possibility to do some battery testing & find a better estimate of R_0, but this would take more time & computing resources. I would try this first & if you don't think it's a good idea we can discuss more advanced methods.

Children
Related