Push and pull current source, controlled by voltage input - Page 1
Forum section: electronics / beginners

author: Infraviolet
author_rank: Super Contributor
timestamp: May 06, 2023, 07:44:17 pm
content: Can anyone recommend a circuit which allows one to input a voltage waveform (0 to 5 V, centred about something like a 2.5V rail) and have an output emerge which can push and pull current from a 2.5V rail? Doing so such that for any given voltage input there would be the same amount of current flowing to/from this circuit's output to the 2.5V rail, regardless of changes in resistance of the load? I would be hoping this could work for low resistance loads, and I wouldn't be expecting any clipping type problems as I would never be expecting output currents anything near large enough to require voltages above the 5V to 0V range I could supply from.Thanks

author: Kim Christensen
author_rank: Super Contributor
timestamp: May 06, 2023, 07:58:40 pm
content: Essentially an inverting amplifier using OP-Amp could work. The load is placed where the feedback resistor would normally be. What exactly are you trying to drive with this current source/sink?

author: wasedadoc
author_rank: Super Contributor
timestamp: May 06, 2023, 08:07:40 pm
content: Quote from: Kim Christensen on May 06, 2023, 07:58:40 pmIn that configuration the load current flows in/out of the resistor between the variable voltage and the inverting input. That may or may not be an issue.An alternative is two op-amps as voltage followers. One has the variable voltage as input. The other has fixed 2.5 volts as input. Load placed between the two outputs.For high currents make something essentially the same as an audio power amp using bridged output. Difference is that only one side of the bridge is driven.

author: David Hess
author_rank: Super Contributor
timestamp: May 06, 2023, 09:59:25 pm
content: The Howland current pump is the common answer, however there are other configurations which use a difference amplifier combined with an operational amplifier to make a voltage controlled current source.See page 20 of Linear Technology application note 16, and page 65 of Linear Technology application note 47.

author: Infraviolet
author_rank: Super Contributor
timestamp: May 07, 2023, 06:43:23 pm
content: David Hess, regarding Fig 48, in app note16, would that circuit still work, for less demanding circumstances, if the resistors were not so well matched?

author: David Hess
author_rank: Super Contributor
timestamp: May 07, 2023, 08:56:34 pm
content: Quote from: Infraviolet on May 07, 2023, 06:43:23 pmFigure 48 is an improved Howland current pump and relies on resistor matching for high output impedance. Note that R4 on the right side is the R4 in the equation but should be marked R5.I guess you should ignore figure 49 since nobody makes a direct replacement for the old LM163 instrumentation amplifier. The LT1102 might work but is not a drop in replacement.

author: Zero999
author_rank: Super Contributor
timestamp: May 07, 2023, 10:14:35 pm
content: Use an instrumentation amplifier IC for the Howland and resistor matching is no longer an issue.

author: Terry Bites
author_rank: Super Contributor
timestamp: May 08, 2023, 03:16:07 pm
content: Howland sources need excelent resistor matching to get decent performance.In practice its a real faff and can get very expensive if you use precsion resistors.There are ready made diff amps with internal trimmed resistors, eg INA597There are other simple ways to achieve bipolar operation.See attached- of course, none of these current sources can output more than the amplifier(s) are able to. Say 10mA or so.Also attached is 1 Amp source which will operate up to about 10kHz. Many Inas that have the three amp internal topology will work here, I just used what was to hand.The same goes for the buffer, any low offset amp will do.Io=Av(Vin/Rsense). I set Av to unity here.

author: Infraviolet
author_rank: Super Contributor
timestamp: May 09, 2023, 12:58:18 am
content: Ok, so my situation has grown a bit more specific now, and relates to my other discussion about resolvers.I'm trying to drive a low resistance coil with a fast varying current, ideally doing push and pull such that the current switches direction rather than merely going from zero to maximum and back.The inductance of the coil is pretty negligible*, so this is NOT going to be a case where the inductance of a coil limits the rate of current increase enough that by the time the signal switches the other way the peak current hasn't grown too excessive.*I don't have an inductance meter, but <10 loops of wire with diamters on the order of a few cm doesn't have much inductance. I could make some inductance measures by trying to place things in an op-amp colpitts, but this may take a while to set up.As this is low resistance I can't really use situations where I just put a voltage straight in to it. And putting a larger series resistor in series with the coil is surely extremely inefficient?This is not designed as a high powered wireless power transfer system, it is all just about inducing some detectable signals in a nearby rotor, so I'm hoping to avoid the sort of systems which " run hot" and either need massive heatsinking, or can only run or short bursts, and need high current rated transistors, power supplies... plus also are wasteful of energy so unsuitable for use in battery powered projects.The voltage controllable current level I'd been asking about was because I had been thinking of trying to feed a generated voltage waveform in and use that to create a varying current output, even according to an ideal sine wave or custom shaped waveform rather than just switching. But I think this is less important now I've got the full situation planned out. I just need a way to pre-set what the maximum current peak would be, and otherwise just have my coil driving circuit varying according to whichever of square, triangular or sine wave is most practical.I will want to be switching in the several hundred KHz to a few MHz frequency range.I will mostly want peak currents in the range of 10mA to 100mA, though I'm not surely precisely what currents I'll need yet though.What is the best sot of circuit topology with which to do this, using generic type components (op amps, timers, r, c, l, transistors...) rather than special function ICs.What sort of search terms should I be using to find such circuits online? Anything related to "driving coils" only brings up results for very high current electromagnets or spark plugs, all of which have a pretty big inductance to limit the rate of current rise too.Thank you

author: David Hess
author_rank: Super Contributor
timestamp: May 09, 2023, 09:06:25 am
content: The output at the collectors of a differential pair of transistors is a pair of currents. Place an inductor between them and the current will flow either way through the inductor depending on the polarity of the input voltage between the bases. Operation is linearized by adding low value resistors in series with the emitters.This would allow bipolar operation to 10s or 100s of MHz with common transistors.

author: Infraviolet
author_rank: Super Contributor
timestamp: May 09, 2023, 12:21:45 pm
content: Thank you,One of the V_in leads would be held at Vcc/2, the other would have a sine voltage applied? R_C controls the limit of the current? and no need for series resistors to limit currents in to the bases?EDIT: sorry, , ignore the "In the diagram the inductor goes where R_e is in diagram (c)? Without the wires to ground from each end of it? " and the "My inductor coil does NOT have a centre-tap wire, so I wouldn't be able to arrange for half of the inductor to be where each R_e is in diagram (b).", I can see the V_out wires, I assume inductor would infact go between them.

author: Zero999
author_rank: Super Contributor
timestamp: May 09, 2023, 12:37:14 pm
content: How about using a small transformer, with a centre tap? If a very low voltage is required, make it step down, to increase efficiency.

author: Infraviolet
author_rank: Super Contributor
timestamp: May 09, 2023, 01:21:26 pm
content: The end use for this is to have coils on layers of a PCB serving as the inductor which is then used to induce signals in to a rotor. If there is a way to make a transformer on a PCB that would be really good, and step down would definitely let one increae current in exchange for lower voltages. Is it feasible to make a transformer (for signals in the 100s of KHz to a few MHz) in PCB coils without the use of an iron core?

author: mikerj
author_rank: Super Contributor
timestamp: May 09, 2023, 03:41:35 pm
content: Quote from: Infraviolet on May 09, 2023, 12:58:18 am10 turns in air with a diameter of 30mm is likely to be in the mid single digits uH range depending on how close the turns are packed; I wouldn't discount this as negligible. A fast current source driving inductive loads is a recipe for stability headaches.

author: Kim Christensen
author_rank: Super Contributor
timestamp: May 09, 2023, 04:08:05 pm
content: If it's a coil (electrically isolated from everything else) you are driving, then a simple circuit like I mentioned before will work.The hard part will be finding an OP-Amp that's going to be able to drive your inductive load at those higher frequencies, currents, and be stable under all conditions.EDIT: I think your requirements are too vague to give you an optimal answer. Precise control of the current may not even be necessary, and a simple resistor could work. What exactly is the end goal of this project?

author: David Hess
author_rank: Super Contributor
timestamp: May 09, 2023, 04:54:02 pm
content: Quote from: Infraviolet on May 09, 2023, 12:21:45 pmYes, it is the difference between the base voltages which controls the different between the emitter voltages which controls the difference between the collector currents. Circuits B and C produce the same result, but C might be preferred so that only one emitter resistor controls the transconductance (voltage to current).QuoteThe collector resistors only limit the current if the transistors are driven into saturation. In practice the collector resistors should be as high as possible, or could be replaced with a current mirror, but resistors will work for this. They do have the effect of setting the maximum output resistance at the collectors. The voltage across the inductor causes a difference in current to flow through the resistors which represents an error term, but a small one with low inductance.QuoteNo base resistor is absolutely required, but there may be other reasons to add a small base resistance.QuoteThe inductor goes directly between the collectors, so with equal base voltages, no current flows through the inductor and all current flows through the collector resistors. The collector resistors might be selected so that half of the voltage between the positive rail and the emitters is across the resistors. The other half is across the collector of each transistor.Note that at idle, both transistors are conducting half of the maximum current, so they will dissipate some heat. We are not using 2N3904s here, although a bunch of 2N4401s could be used in parallel for each side. Assuming say 10 volts between the supply and emitter, that will be 0.5 watts at 50 milliamps on each side. With the proper collector resistors, that becomes 5 volts so 0.25 watts per side.Obviously there are more precise solutions using operational amplifiers, as shown earlier. I am just giving this example as an alternative which is faster but less precise. Analog oscilloscope vertical amplifiers use very similar circuits for high performance.

author: Zero999
author_rank: Super Contributor
timestamp: May 09, 2023, 05:37:42 pm
content: Quote from: Infraviolet on May 09, 2023, 01:21:26 pmWhat's wrong with an iron core? There are cores which can be fitted on a PCB.Why not use an ordinary transformer before the PCB coil?

author: Kim Christensen
author_rank: Super Contributor
timestamp: May 09, 2023, 06:03:44 pm
content: Perhaps all you are looking for isa voice coil driver IC?

author: Vovk_Z
author_rank: Super Contributor
timestamp: May 09, 2023, 08:26:30 pm
content: Quote from: Terry Bites on May 08, 2023, 03:16:07 pmResistor matching totally depends on a required accuracy level.Actually we can very easy get and use 0.1% resistors. Taken from the same batch they give us about 0.01% matching. Thats quite a good matching and quite a good general Howland current pump performance (output impedance etc).

author: David Hess
author_rank: Super Contributor
timestamp: May 09, 2023, 09:09:24 pm
content: And just like a difference amplifier, you can trim a resistor in the Howland current pump for best matching.