Battery capacity tester

battery-capacity-tester

[Moris_zen] built a device to accurately measure the capacity of batteries. He needed to have an accurate measurement for the batteries he uses in a RC airplane. Knowing the discharge time allows him to fly the friendly skies while avoiding crashes from lost communications.

He based the tester around the Arduino platform. Instead of using a pre-built Arduino board he referenced the open source schematics and built the device from components to fit his needs. His solution automatically detects the battery type (Lithium-Ion, Nickel Metal Hydride, etc) based on voltage when the battery is added to the circuit. It then uses a 2.2 Ohm resistor and ADC measurements to take the battery through a discharge cycle. A character display shows status information with the ability to track discharge information using a computer to graph the data.

Apart from flashing an LED this was his first Arduino project. It’s a great use of the platform and much more automatic than other solutions we’ve covered.

16 thoughts on “Battery capacity tester

  1. Vondering, why he use 2 ADC for measuring voltage. A mosfet is used in switch mode, or to control current (that probably would explain why 2 ADC)?

  2. The 2 ADC are to measure the voltages across the 2.2 ohm resistor. The purpose is too measure the current running through it. The voltage should be used to decide when to stop the discharge process. The current measurement would tell the capacity of the battery (mAh or Ah)

  3. I think he’s made a mistake. because current is measured in mA and not mAh. mAh = I (in mA) * time (in hour)

    so he uses the 2 ADC’s because he measures on the side which is charged. so the voltage across the battery is not constant, and thus he needs to measure the voltage before, and after the 2,2Ohm resistor. (ADC2 is equal to Vcharger, which may variate during charging)

    GND)—(-BAT+)–(FET)-(ADC1)-(2,2OHM)-(ADC2)–(VCharger)

    if he moved the circuit, he might save one ADC

    GND)-(ADC1)-(2,2OHM)-(ADC2)–(FET)–(-BAT+)–(VCharger)

    (ADC1 will now always be 0)

  4. My LaCrosse BC-900 is also good for this. It charges, exercises and/or tests the capacities of 1 to 4 NiCd or NiMH AA and AAA independently and simultaneously.

    I modified it so I can also work with the sub-C cells found in cordless drills.

    Very handy to be able to easily put numbers to the capacity of rechargeable cells.

  5. Im afraid this method with so low impedance not valuable for making measurement instead this is great way to ruin battery life quickly.

  6. The biggest mystery, why he use arduino bootloader. The only arduino advantage over uC is no programmer requirement, and it very arguable one(you always cab build programmer with less than 2 resistor).

  7. Therian,

    A lot of people have started using microcontrollers using Arduino hardware because it’s easy and straightforward. Many people don’t even know about programmers and bootloaders and their functions because that’s not required to mess around with platforms such as Arduino.

  8. This is probably the first Arduino project I’ve taken seriously in a while. It actually shows an effort and practicality.

    urlax pointed out a good refinement for it too

  9. Therian, for one NiMH cell 2.2 Ohm will be about only 0.5A In most cases that is less than 0.5C (C – capacity), its safe. Ofcorse everything ruin NiMH/Cd battery life, slov charging, fast charging, slow discharging (this hapens when battery is not used for some time).

  10. Note that standard practice for battery manufacturers is to discharge the battery at 0.1C, then multiply that value by 10 to get the (m)Ah capacity. This is probably why you are getting results that differ from the manufacturer’s stated value.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s