Battery Voltage Monitoring
Last Modified: 2009-01-20
find:

basket

Acroname Robotics PDF webpage version Battery Voltage Monitoring PDF
 

Since robots are typically mobile and therefore battery powered, maintaining a watch over the battery voltage (and therefore charge) is essential.  With this information, your robot can plan when to perform tasks such as mapping or navigation and when to forage for more power.  It also allows operators to "bring the robots in" when being used in remote settings. 

Batteries fluctuate in voltage when being used but a rough average gives a pretty clear indication of the remaining charge in a battery.  Each battery has a characteristic discharge curve of voltage compared to capacity.  Armed with a discharge curve for your typical battery usage and your battery, you can pretty accurately gauge the remaining time of operation. 

Image of battery discharge curve showing characteristic S-shaped voltage change over capacity.
Typical discharge curve shape for a NiMH battery is roughly S-shaped.

Since most systems use regulated power to maintain a constant voltage regardless of battery capacity or current demand in the system, the batteries voltage is typically than the A/D voltage range.  For a 5V logic system like many micro processors, the raw battery voltage may come from a 12V battery and then get regulated down to a steady 5V.  We need to reduce this raw voltage to something that will always (regardless of battery charge) remains in the range of the A/D capacity. 

Fortunately, scaling voltage down is very easy to accomplish and it can be done efficiently with 2 relatively precise resistors.  The precision is not even critical although a lack of precision in the resistors will need to be compensated for in calibration of each such system. 

A resistor divider takes two resistors connected in series between a voltage source (in this case our battery) and the intervening mid-point of the two resistors will be some scaled down voltage...  depending on the two values. 

A series resistor divider schematic showing the proportions created by a voltage divider.
Typical voltage divider to scale down battery voltage

Creating a voltage in the range involves only the selection of resistor values that give a range within that of the A/D capacity.  For instance, a BrainStem GP 2.0 with 4 NiMH batteries will see roughly 6V at complete charge on the batteries.  That is above the 0-5V range of the GP's A/D so you might want to reduce this value by say half.  Using the equation above, you can see that two matching resistors will give this one-half reduction in voltage in the intermediate point between the resistors in series. 

Using precise resistors will improve the predictability of the actual scaling the resistor divider creates.  In addition, a mid-range resistance value will give a reasonable amount of current.  These two resistors should probably not add up to more that 10k Ohms to ensure enough current to match the impedance of the A/D inputs. 

The linearity of the A/D converter itself and the resolution impact how many steps of accurate resolution you then get between a fully charged battery and an empty one.  Probably the easiest way to calibrate your monitor is just to compare the A/D values for a couple of battery levels to those observed directly using a voltmeter.  The scaling can then be readily calculated for your particular A/D and resistor values...  dependent upon the linearity of your A/D converter. 

Plotting a full discharge of the battery over time can give you a sense of battery capacity as it relates to voltage. 

Revision History:

  • 2009-01-20: Initial Post
 

Related Links:

Plan for week 3 (Jan 21st) of 407/507 Robotics Course

voice: 720-564-0373, email: sales@acroname.com, address: 4822 Sterling Dr., Boulder CO, 80301-2350, privacy
© Copyright 1994-2010 Acroname, Inc., Boulder, Colorado. All rights reserved.