NiCD - Charging circuit - Using PIC


Closed Thread
Results 1 to 17 of 17

Hybrid View

  1. #1
    Join Date
    Feb 2010
    Location
    USA, New England
    Posts
    164


    Did you find this post helpful? Yes | No

    Default

    Megahertz,

    A couple of items for your consideration.

    -I think you should take a hard look at using an ADC instead of a comparator. I actually had a lot more trouble figuring out how to use the comparator than the ADC.

    -It would be helpful, for the purposes of this discussion, to sketch out at least a rough schematic of what you are trying to do.

    -To charge NiCD or NiMH battteries, you need to supply a constant current. As I understand what you describe, you are just hooking up a regulated voltage supply. That will destroy your batteries sooner or later. The LM317 I linked earlier is the heart of a constant current supply. You also need a top voltage on the power supply of at least 1.9V per cell. That means you need at least 7.6V to charge 4 cells. The 5.7V charger is not enough.

    -Lead acid batteries instead use a constant voltage to charge. The charging voltage is somewhat higher that the listed voltage, i.e. you use 14-point-something volts to charge a 12V SLA battery.

    I've started my own PIC-based charger. I haven't written code yet but I can post the basic schematic tomorrow.

    Best Regards,
    Paul

  2. #2
    Join Date
    Feb 2010
    Location
    USA, New England
    Posts
    164


    Did you find this post helpful? Yes | No

    Default

    The rough schematic for the battery charger I am playing with is attached. It's not the cleanest schematic ever but I trust it is sufficient to get the idea across.

    D1 indicates that power is connected to the device. D2 and D3 are controlled by the PIC and I have them shown as being used to indicate that a charge is active and when it is complete.

    VR1 provides the regulated +5V for the PIC. VR2 is set up to provide a constant current of ~80 mA when GP1 on the PIC is low and about 220 mA when GP1 is high. The relay switches the resistance between 16 ohms when open and 6 ohms (16 and 9 in parallel) when closed.

    R7 and R8 create a voltage divider so that roughly 30V at the top of the batteries will show up as 5V at AN0.

    The PIC, a 12F675, will on startup begin a "fast" charge cycle. Once it detects that (a) the voltage is too high on the cells, (b) the voltage has stopped increasing (or, for NiMH, started decreasing), or (c) too much time has elapsed it will open the relay to put it in trickle charge mode.

    There are any number of items that could be changed but I think this is a decent start...

    Best Regards,
    Paul
    Attached Images Attached Images

  3. #3
    Join Date
    Nov 2005
    Posts
    51


    Did you find this post helpful? Yes | No

    Default

    This is a well documented about a Atmel charger, for SLA,NiMH,Nicad and Li-lon batteries you can get some very good information from it, There is code avaliable in C for Atmel but you can understand bit and may be easy converted, Just replace the the AMtel with a pic

    http://www.atmel.com/dyn/resources/p...ts/doc1659.pdf

  4. #4
    Join Date
    Nov 2009
    Location
    London
    Posts
    251


    Did you find this post helpful? Yes | No

    Default

    Thanks for the input guys. Prstein, you have surely got me thinking about using ADC. I have spent 2 hours today understanding it from the datasheet. It seems to me that I have an idea of what goes on (just kidding ), but still few clarifications needed.
    1) I read 16F676 datasheet, it says 10 bit result - which means 1024 steps conversation. Now 1024 steps with what respect (is it the VDD)?
    2) How do these steps relate to voltage supplied by two 1% precision voltage divider resistors on the ADC PIN.
    3) In a nutshell, how does these 3 relate( internal VDD as Vref, 1024 steps, Voltage on ADC PIC by V. divider)?


    After understanding the basics above, I will be surely be able to dig my way up and carry on with my charging solution. Having the knowledge from this thread only, I am considering using 12V Sealed lead acid battery and replacing NiCD. It seems if I can control the voltage drop of lead acid, it is more forgiving in terms of charging and it is cheaper as well + I only need one with sufficient current upto 4AH etc. Also using 12V in my TX is giving me increased range
    Where as, putting two 4.8 NiCD in parallel, I have read that the current needs to be pushed in, and because the two battery packs may have different impedance(whatever that is), there is always a possibility of one charging more than the other.

    So voltage drop of the 12V battery is sorted, can be done with comparator easily. Once ADC conversion is clear and the relation between 3 values mentioned above, I think I can do the charging & full charge indication as well.

  5. #5
    Join Date
    Feb 2010
    Location
    USA, New England
    Posts
    164


    Did you find this post helpful? Yes | No

    Default

    Hi Megahertz,

    The invincible Darrel Taylor has spelled it all out for us!

    http://www.picbasic.co.uk/forum/content.php?r=245

    Best Regards,
    Paul

  6. #6
    Join Date
    Nov 2009
    Location
    London
    Posts
    251


    Did you find this post helpful? Yes | No

    Default

    Darell is as always THE GURU of all this stuff. The example speaks for itself, no more questions on that front.

    But if I have understood it correctly, he is measuring the voltage through a voltage divider, what can I do for current sensing? I think for that I need to add a very small value resistance in series to the current path and measure voltage drop across it, when it is nearly 0, battery charge is full, but what next? How to make a connection with PIC?

    OR

    Is that in his circuit he is actually doing the same thing? one set of divider on one side of the series resistor, and the other set is on the other side of the series resistor. Keep measuring both sides until they are giving nearly same readings?
    Last edited by Megahertz; - 13th October 2010 at 10:34.

  7. #7
    Join Date
    Feb 2010
    Location
    USA, New England
    Posts
    164


    Did you find this post helpful? Yes | No

    Default

    I know almost nothing about current sensing. What little I do know I got from the MAX712/713 datasheet. I need to let others respond to this one.

    Best Regards,
    Paul
    The way to avoid mistakes is to gain experience. The way to gain experience is to make mistakes.

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts