I'm trying to design a 0 to 300 mA controlled current source, the problem is that the supply voltage is a normal adapter with a 12v output. I'v already tried several op-Amp based circuits but the voltage drop over the load exceeds the power supply in all of them. suggestions for a circuit? Load is a constant 40ohm device. Thank you all

  • \$\begingroup\$ What are the characteristics of the controller? \$\endgroup\$ Commented May 22, 2017 at 4:28

4 Answers 4


You say you want a 0-300 mA current source, but that the load is a constant 40 Ω. There is therefore no distinction between a 0-300 mA current source and a 0-12 V voltage source.

The biggest problem you have is that your circuit can't drop any voltage at full output since you only have 12 V to start with. That's not possible, so what you asked can't actually be done. However, you can get reasonably close. Of course a better answer would be to start with a power supply a little above 12 V so that the pass element is allowed to drop some voltage at full load.

To minimize the voltage drop across the pass element, use a MOSFET. It's not hard to find devices that can go down to a few mΩ with full gate drive. 20 mΩ, for example, is 0.05% of your 40 Ω load. That would be within measurement error for most purposes.

You didn't give any constraints on how this current source is supposed to be controlled, so we can pick something simple. A pot setting the gate voltage of the MOSFET provides control over the current.

Here is a circuit that meets all your specs, except that it doesn't quite put out 12 V or 300 mA with exactly 12 V in:

This particular MOSFET can handle up to 20 V and goes down to less than 10 mΩ with 10 V on the gate. Only you can say whether that is close enough. Again, your specs are actually impossible to meet.

The control is achieved by rotating the pot (R1).


This would be my starting point: -

enter image description here

Choose R1 to be low in value hence it won't drop too much voltage in sourcing current to the load. If you chose 1 ohm then to get 300 mA through the load, Vin would be 0.3 volts and the drop across R1 would also be 0.3 volts. The drop across the transistor would be about 0.2 volts at best so, to deliver 300 mA into a 40 ohm load requires a supply of 12.5 volts.

So you might as well bite the bullet and generate 15 volts from the 12 volts using a dc-to-dc converter and there are plenty around. If you pick an isolating one it gives more options because you could use a converter that produced 2.2 volts at the output and float that output up to produce a rail of 12 volts + 3.3 volts = 15.3 volts. Plenty of options.

If your load can drop significantly below 40 ohms then you might need a heatsink on the PNP transistor.

If you want to look at other options regards generating a constant current these google images should help.

  • \$\begingroup\$ +1 for the isolated DC-DC converter suggestion because it would allow the use of a cheap single supply op-amp like the LM324, by just flipping everything over. \$\endgroup\$ Commented May 21, 2017 at 13:55

Any circuit you can build will have some voltage drop. 300mA * 40 ohms is 12V which is your nominal power supply voltage. If your power supply is a bit low and/or your load resistance a bit high you will never get to 300mA even with a direct short.

So, you have two main choices here- the easiest is to compromise the spec and limit the current to maximum (say) 275mA which gives you a nominal 1V to work with. Maybe that ends up being 0.5V after you take into account tolerances. That is tractable- the maximum drop across your pass device (transistor, probably) plus the voltage drop across the measuring resistor must not exceed that 0.5V. If the transistor needs 0.25V you can use a 1 ohm resistor and meet the spec. The lower the resistor value the less voltage for your feedback, so more errors will creep in. The trade-off will depend on what your required stability and accuracy spec is.

The second choice is to boost uo your 12V using some kind of switching supply to something high (eg 15V), in which case you can choose a nice big feedback voltage such as 3V (use a 10 ohm resistor) or 2.25V or 2.5V to match a reference voltage. Such a circuit will produce more EMI, consume more power and will be more complex than a simple current regulator, but it will meet your stated requirements.

Edit: Since others have supplied (perhaps dubious) schematics, I'll throw one or two in here for good measure:

Boost converter: enter image description here

If you follow the 34063 data sheet calculations you can easily determine the values of the components not shown.

Current source ( note source, not sink):

The op-amp I show is an unusual high-voltage rail-to-rail input type. There are other ways of doing it but this is simple. An ordinary LM324 will not work, and certain FET op-amps will only work if you are lucky.


simulate this circuit – Schematic created using CircuitLab

If your load is actually a constant resistance and you don't need to adapt to any changes then you could build a 0-12V supply, but it would not be significantly simpler than what is shown.

  • \$\begingroup\$ thank you, I did try to design a boost converter but my it failed, could you guide me to a simple design procedure? \$\endgroup\$ Commented May 21, 2017 at 11:14
  • \$\begingroup\$ Easiest design procedure is to go to a manufacturer or distributor with a parametric search engine and look at various "chips" that are available that meet the requirements- maximum input voltage well over 12V will eliminate many of them, so you will have fewer to look at in detail. The detailed design procedure will be outlined in the datasheet (inductor specs and frequency, for example). One of the oldest, cheapest and often least efficient chips is the 34063, you can check out Figure 9 and adapt the output voltage. \$\endgroup\$ Commented May 21, 2017 at 13:19

well you can try this circuit. It uses a negative feedback to stabilize the output at near to 12V. Since it's done by a good loopgain, you can expect pretty good source resistance as well. Well with 12 Volt, you can't expect a 300mA load, but it's pretty close.TIP29 is a power transistor, acting as "pass" transistor; 741 is a pretty well-known general purpose opamp

  • 1
    \$\begingroup\$ That circuit will NEVER work. For a start, what controls the current? Next, have you bothered even to consider the significant limititations imposed by a 741 op-amp? \$\endgroup\$
    – Andy aka
    Commented May 21, 2017 at 12:06
  • \$\begingroup\$ @Andyaka, voltage at the emitter of that emitter follower will always be at 12 (well to the best of what opamp can do). Now opamp can only go as much in the output. so you are kind of right, we want a voltage more than what opamp can supply. but current is controlled by a 12V/40ohm. \$\endgroup\$
    – Miad75
    Commented May 21, 2017 at 12:13
  • \$\begingroup\$ @Andyaka, The design was simulated to be alright! And OpAmp is bound to be saturated, even in your design. because of 12V supply voltage, it is quite impossible to meet the design with simple circuits. \$\endgroup\$
    – Miad75
    Commented May 21, 2017 at 12:22
  • 1
    \$\begingroup\$ My answer refers to increasing the supply voltage to 15 volts. Even if you did this your opamp circuit WILL NOT control the load current as asked for. \$\endgroup\$
    – Andy aka
    Commented May 21, 2017 at 12:51
  • \$\begingroup\$ I believe with a 15V supply this design will work even better...That is the core of the standard regulator ICs out there...Throughout the negative feedback, load will be supplied with a steady 12V voltage (and 300mA as requested) \$\endgroup\$
    – Miad75
    Commented May 21, 2017 at 13:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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