## High precision, good accuracy Current Source Schematic

 Quote by maxim Interesting! I like the MOSFET in the output stage, as well as two op-amp! No too complicated, despite the fact the V is only 3V3 or 5V. Iout should be 100 mA, thus using 3.3V as input voltage and Rs = 33 Ω low tolerance, I should be on the right side. What is not clear for me is the limit of V=5V as an issue you mentioned earlier. But ok! now is the time to find components.
There are plenty of op-amp that work down to 1.8V single supply!!! That's not the problem. The uncertainty for me is the gate source turn on voltage is about 3V, that eat up your supply voltage. Look into it in more detail and see whether you can make it work for 5V. Also a hybrid darlington using a p-JFET and a PNP might help as the gate source voltage is in opposite direction and it might even help. You have to do the calculation, I am only giving a suggestion. Try look for low threshold P-MOSFET.

Maybe it's not a problem. If you can find a P-MOS with operating gate source voltage of -3V, you still have 2V on Rs to play with. Say if the op-amp output is at 0V for max current, the source will be at +3V, so operating voltage for constant current output at the drain can be from 0 to about +3V. Maybe it's not a problem.

Recognitions:
Gold Member
 I think the MOSFET can be replaced with a darlington hybrid with a p-JFET and a PNP.
i think i used a n mosfet, could just swap opamp's +&- inputs for p installed other way..

here's an interesting transistor..
see curve Ic versus Vce, pages aren't numbered it's about middle of second page.

will those 3 volt opamps drive as much as a milliamp?

never mind, just looked at one.

old jim
 This forum is fantastic, and you're really lovable persons! So, being inspired by your good advices, I put together the latest project. It uses a low power Differential Amplifier (AD8276B) supplied by a Voltage Reference (ADR3425), a low bias current Op Amp (AD8603) for a feedback loop, then an external current source BJT (T1, to be defined). Please, have a quick look to that and let me know if makes sense. Later on I will write here my considerations and calculations for the component sizing, based on datasheet and app notes from Analog Devices. Of course, any idea, suggestions or criticisms are welcome! maxim
 Recognitions: Gold Member Science Advisor hope i didnt say something socially wrong - we "Aspies" can do that unwittingly. fixed my voltage blunder above..
 Back after a lot of calculations... maybe I am wrong but I've the impression that swapping pins 2 & 3 nothing changes other than the polarity of Vref: Vout = [V(+IN) – V(-IN)] x gain So if you tie Vref to pin 2 instead of pin 3, Vout will be a negative voltage (assuming negative supply). Going back to the original configuration, now I need help to refine calculations. Let say I want to drive 300mA but keep the same conditions, I would have to increase Vref or R1. If I change Vref to Vref = Io * R1 = 0.3*25 = 7.5V, this is outside the range of AD8276 on a 5V supply. The other option is to change R1. So for example, I could change R1 to 10 Ohms, that means Vref = 1V gives 100mA and 3V gives 300mA, and I think it meets all the input range limitations... Then a TIP120 has a Vbe(on) of 2.5V... Why not use a regular NPN BJT like the 2N1711? It has a Vbe(sat) of 1.3V (max) with IC = 150 mA & IB = 15 mA What do you think about?

Recognitions:
Gold Member
 Back after a lot of calculations... maybe I am wrong but I've the impression that swapping pins 2 & 3 nothing changes other than the polarity of Vref: Vout = [V(+IN) – V(-IN)] x gain So if you tie Vref to pin 2 instead of pin 3, Vout will be a negative voltage (assuming negative supply).

wow, is my face red. i took an old shortcut and it bit me - adding an inverting stage behind an opamp often lets you just swap input pins, and i assumed, without thinking it through, that just swapping 2&3 would do the job..
:Rats. i'm old enough to know better.
I extend my apology.
Eternal vigilance ...

Soo,, much chagrined - This time i did my algebra.
What i missed before is that to swap that internal opamp's input pins , i'd have to swap pins 1&5 in addition to swapping 2&3.
That'd leaves us as follows:
Pin 2 = +2.5 volts, Vref
Pin 3 = 0v
Pin 1 = Vhall + Io*R1
Pin 5 = Vhall
NOW internal opamp sees at his Inverting input: (Vpin5 + Vpin2)/2
or, Inverting = (Vhall + Vref) /2
and at his Noninverting input: (Vpin1 + Vpin3)/2
or, Non-inverting =(Vhall + Io*R1 +0)/2
Equating those yields
(Vhall + Vref) /2 = (Vhall + Io*R1 +0)/2 ;

(Vhall + Vref ) = ( Vhall + Io*R1)
or,
Vref = Io*R1 ;;
Io = Vref/R1 which is what we want.

Now sanity check for direction of feedback:
with a PNP driver and both pairs of those pins swapped

IF Io increases by Δi,
Non-Inverting input goes up by (Rhall + R1) * Δi
but Inverting input goes up by just Rhall * Δi
inputs now see difference R1*Δi , with Non-inverting more positive

Since Non-inverting input is now greater than Noninverting, AD8276's pin 6 moves positive
which moves PNP's base positive, nearer emitter shutting it off, restoring balance.
So a PNP could work if you need one.
I remember waking up in middle of night thinking i should check on this, but for some reason didn't get it done.

You are right. I didnt finish my thinkling and caused you extra work.

_____________________________________________________________

Now to your question -

 Let say I want to drive 300mA but keep the same conditions, I would have to increase Vref or decrease R1. If I change Vref to Vref = Io * R1 = 0.3*25 = 7.5V, this is outside the range of AD8276 on a 5V supply.
Indeed everything is supplied by +5, your ADR3426 would be hard pressed to deliver 7.5.

Your circuit as you drew it will keep I = Vref/R1
so as you said
 The other option is to change R1. So for example, I could change R1 to 10 Ohms, that means Vref = 1V gives 100mA and 3V gives 300mA, and I think it meets all the input range limitations...
Agreed.
The internal opamp's inputs need to be kept 1.5V below supply, ie 3.5 volts.
So Pin 5 must stay below 7 Volts, okay there.
And (pin 1 + pin3)/2 must stay below 7 volts, okay again because Rhall is only 2 ohms and i think you're planning on less than an amp though it.
 For the AD8276/AD8277 to measure correctly, the input voltages at the input nodes of the internal op amp must stay below 1.5 V of the positive supply rail and can exceed the negative supply rail by 0.1 V.
AD8276 datasheet page 14
And you can't go negative with just a +5 supply.

 Then a TIP120 has a Vbe(on) of 2.5V... Why not use a regular NPN BJT like the 2N1711? It has a Vbe(sat) of 1.3V (max) with IC = 150 mA & IB = 15 mA
The 15ma Ib worries me. That's a heavy load for your AD9276.
Note his datasheet says , page 4 "output characteristics", short circiut current limit is 10ma. Graphs of output voltage page 9 figs 19-21 have 1kΩ as lowest load. I dont think he's intended to deliver much current.

But with minimum hfe of 100 at 150 ma it should work...

But.... Just in case;;
The TIP125 datasheet

http://www.fairchildsemi.com/ds/TI/TIP125.pdf
fig 2 page 3
shows Vce of ~0.75 volt
and Vbe of ~1.25 volt
when Ic = 250*Ib.
That would place Mr AD8276 in the enviable position of sinking very modest current(~ a milliamp) with output voltage well above mid-supply, about 4.25 volts.
With the 2N1711 he could have to source 15ma at (Vhall + VRef +Vbe) = 0.2 + 2.5 + 1.3 = 4.0 volts.
That leaves only one volt room to +supply. That's right at his limit, see fig 21 of AD8276 datasheet.

We should get a cross-check from Yungman on this point.

That's my thoughts.
Let me know how it looks to you.

Thanks for catching my error in previous post. If this one looks cross-threaded anywhere please challenge me on it. You know i'd much rather admit my mistakes than have them cause you aggravation.

Thank you , kind sir !
 Hi Jim, No worries about possibly error, it's the same for me. Is always a pleasure to talk to nice people like you! So, I would actually use a TIP125 transistor as final stage, it convinces me. Please, help me to fix the polarization network at its best and to choose the proper power supply / Vref for the whole circuit. Your contribution is greatly appreciated.

Recognitions:
Gold Member
Thanks for your kind words.

Well i always seem to have "just one last correction" ..

"""That would place Mr AD8276 in the enviable position of sinking very modest current(~ a milliamp) with output voltage well above mid-supply, about 4.25 volts."""

"" That would place Mr AD8276 in the enviable position of sinking very modest current(~ a milliamp) with output voltage well slightly above mid-supply, about 4.25 3.75 volts.""

--------------------------
 The other option is to change R1. So for example, I could change R1 to 10 Ohms, that means Vref = 1V gives 100mA and 3V gives 300mA, and I think it meets all the input range limitations...
Are you saying you want that range of adjustment ?

Soounds easy enough. You already figured R1.
A potentiometer across output of the reference and a voltage follower amp to buffer it would be straightforward approach. AD makes a dual version of AD8603 , the AD8607 so it'd be same package count.

 Please, help me to fix the polarization network at its best and to choose the proper power supply / Vref for the whole circuit.
If you like i'll try to sketch something tonite.
How much room do you have for power supply?
What physical arrangement do you envision ? Will you make a circuit board or is this a one-of-a-kind hand wired?

What range of current adjustment would you like to have?

old jim

 Quote by jim hardy Thanks for your kind words.
They're deserved.

 Well i always seem to have "just one last correction" .. """That would place Mr AD8276 in the enviable position of sinking very modest current(~ a milliamp) with output voltage well above mid-supply, about 4.25 volts.""" SHOULD have read "" That would place Mr AD8276 in the enviable position of sinking very modest current(~ a milliamp) with output voltage well slightly above mid-supply, about 4.25 3.75 volts.""

--------------------------

 Are you saying you want that range of adjustment ?
You know, the sensor need 100mA of polarization current. Up to 300mA is for working condition, so...

 Soounds easy enough. You already figured R1. A potentiometer across output of the reference and a voltage follower amp to buffer it would be straightforward approach. AD makes a dual version of AD8603 , the AD8607 so it'd be same package count.
So far, so good!

 If you like i'll try to sketch something tonite.
I do not want to ask you to waste your time with me, although I'd appreciate it a lot!

 How much room do you have for power supply?
Let say I have the option to choose the proper supply. Started from 5V because it was obvious (other divices provide 5V lines), we can change this value freely. Only the Vref voltage I wish were provided by Mr. ADR34xx for stability.

 What physical arrangement do you envision ?
Only the sensor will be stored inside a probe for high magnetic fields. I think I would keep its wires c.a. 20-40cm long.

 Will you make a circuit board or is this a one-of-a-kind hand wired?
Yes, this is the next step. I have to make a PCB as small as possible :)

 What range of current adjustment would you like to have? old jim
I guess 100-300mA is enough.

You're my friend now !

All the best, jim!
 Recognitions: Gold Member Science Advisor i see size is a matter. That ten turn pot is big. BTW while you're experimenting, try that LM317 circuit from post 14 1.25V/.1amp = 12.5 ohms

 Quote by jim hardy Sorry for delay, just dont get to everything anymore. Beware of that "smartfortress virus" it's out again ...
So happy to be an "old" Linux user who uses windows only for playing chess...

 Okay - your scheme is so good it doesn't need much change i think.
That's ok for me.

 2. Added provision for "Criss-Cross" jumpers at inputs of Mr AD8276. That lets you use either NPN or PNP driver. Install horizontal jumpers for NPN like your 2N1711 or one of Yungman's Mosfets Install diagonal jumpers for PNP like my TIP125.
Simply so smart!

 3. Showed three dots instead of drive transistor. Make two sets of holes on you board, one set for TIP and another for your 2N1711. That way you can use either NPN or PNP or MOSFET driver, emitter up for PNP and emitter down for NPN.
Yes, I see.

http://s232.photobucket.com/albums/e...rMaxim1001.jpg

 NOW while typing i realized that you may not need infinite adjustment. If not, consider this: Omit buffer and Radj, go back to 2.5 volt Vref. Make your R1 measuring resistor be three 25 ohm resistors and a switch that lets you select one, or two or three of them in parallel. That'll give you 100, 200 or 300 ma. And in keeping with Detecive Columbo's "One Last Thing";; Yungman's sketch in post 10 had a capacitor to stabilize things. Always a good idea. That additional stage behind Mr8276 increases his open loop gain , but only if we use PNP driver. Sooo we should add a zero ohm resistor (jumper) between top of driver transistor and Vsupply , to be replaced with just a couple ohms to reduce loop gain in case PNP exhibits instability. Can add that to sketch. What's your thoughts so far?
This circuit is a wonderful solution!
I will keep you informed about progress.

 i see size is a matter. That ten turn pot is big. BTW while you're experimenting, try that LM317 circuit from post 14 1.25V/.1amp = 12.5 ohms
Right. I will try also the LM317' solution: easy and compact.

 Tags current, generator, precision, source, stabilized