I'm attempting to build a simple circuit that will apply a constant voltage to a Lithium-Ion battery. If the applied voltage is greater than the battery, it should source current at a constant voltage, if the applied voltage is less than the battery, it should sink current at a constant voltage.

The circuit I've tried so far is attached in the image(s) below. I like this circuit because it allows me to control the voltage applied just by dialing a pot. It works well for sourcing current (image 1), however, as soon as the applied voltage drops below that of the battery, it flattens out (image 2). That is to say, the circuit cannot sink current at constant voltage.

I would like to build a circuit that can do both, as indicated by the cartoon graph in image 3. I would like to get behavior indicated by the dashed curve.

Does anyone have any suggestions for this?


image 1

image 2

image 3

  • 1
    \$\begingroup\$ Don't do this. Li-ion batteries should be charged at constant current first. \$\endgroup\$ – Finbarr Feb 17 '18 at 18:17
  • \$\begingroup\$ You're absolutely right. Applying voltages that are substantially different from the cell voltage would cause a huge spike in current. The goal is actually to first charge (or discharge) a battery at a constant current until a particular voltage limit is reached, and then hold at that voltage. I have accomplished the constant current part with two other circuits that I haven't included in this post. Once the battery has hit the voltage limit, the goal is to hold that voltage until the current decays to a particular value. That is the goal of the circuit I am trying to build here. \$\endgroup\$ – jkrbasu Feb 17 '18 at 18:40
  • \$\begingroup\$ @ Finbarr constant'current is not important. so long as the current is low-engough. the 10 ohm resistor makes that happen. \$\endgroup\$ – Jasen Feb 17 '18 at 18:57

Add a PNP transistor emitter to node 5, base to node 2 and collector to ground.

what this does is transform your output stage into a half-bridge.

  • \$\begingroup\$ Hey that's really cool! I think that will work! Thank you! \$\endgroup\$ – jkrbasu Feb 17 '18 at 19:07
  • \$\begingroup\$ Hi Jasen, do you have a recommendation for a pnp transistor to use? I'm using a 2N3904 for the npn \$\endgroup\$ – jkrbasu Feb 18 '18 at 18:51
  • 1
    \$\begingroup\$ went with the 2n3906. seems to be working well. thanks again! \$\endgroup\$ – jkrbasu Feb 18 '18 at 18:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.