Society of Robots
Search and Index Search Here

 Parts List
 Robot Forum
 Member Pages
 Axon MCU
 Robot Books

 How To Build
  A Robot




 Robot Journals
 Robot Theory


    Battery Monitor Circuit Readings Curve

    It does not take long to figure out how useful a battery monitor circuit can be. A robot that self recharges can figure out when to dock in the charger, or how best to position its solar cells. Or how efficient it should run depending on distance away from a battery charger. You can also know if your robot needs to be charged between rounds in a robot competition without removing the batteries to check. Humans know when they are hungry, shouldn't your robot?

    To operate this circuit, just follow the equation to determine the appropriate resistor value. Then plug Vout to your microcontroller analog input port. As your total voltage drops, so will the analog value. From there you can have your microcontroller decide what to do with the information. Perhaps turn an LED on or off, or even blink as a warning. Maybe a buzzing noise, or activation of a 'find charger' algorithm.

    Battery Monitor Circuit:
    Battery Monitor Circuit To solve for resistor R,
    plug in to this equation:
    R = 50000 / (Vin / Vlog - 1)

    Vin is your fully charged battery voltage.
    Vlog is the logic high you want, usually 5V.

    As long as you select the appropriate resistor R based on the above information, Vout will always be between 0 and Vlog - perfect for your analog port on your microcontroller. Note that a fully charged battery can often be up to 20% of its rated value and a fully discharged battery only 20% below its rated value. For example, a 6V battery fully charged can be 7V, and fully discharged 5V. So make sure you set Vin to be 7V. This circuit is great because your controller can know exactly how much power is left in your battery. A difficulty you may have with this is when a battery is under heavy current load (such as a motor) the voltage will tend to drop. You will have to take readings only when not operating heavy loads. You should probably have a 10mF capacitor connected between power and ground too to prevent short term voltage drops.

    There is however another slightly less direct way to determine remaining battery power. This works on the concept that if you put a finite amount of energy into a battery, it can only lose that same finite amount of energy and no more. So if you measure the energy going in and out, you will always know when your battery is running low. This is sometimes called "Gas Gauging", or "Fuel Gauging". What makes this difficult however is that typical batteries generally require 105%-115% recharge due to innefficiencies. You will have to test your battery to know. All of this requires a fairly complex circuit that I wont go into. So how do you do all this? Easy, buy an IC. The IC registers are then simply read from a microcontroller.

    There are many IC's out there that can do this, each with different special features:
    Texas Instruments: bq2010, bq2018, bq2019, bq2023
    Maxim: MAX1660, MAX1780
    Nat Semi: LM3822, LM3824
    Dallas Semiconductor: DS2438, DS2760

    For further reading, look at methods for measuring current use.

Get Your Ad Here

Has this site helped you with your robot? Give us credit - link back, and help others in the forums!
Society of Robots copyright 2005-2014
forum SMF post simple machines