Setting current source as active load in LTSpice

current-sourceltspice

I don't understand what Parasitic Properties: This is an active load means in LTSpice provided as an option in the current source configuration window. I plotted out the schematics, one with the active load checked and the other without, and compared their traces. Without being checked as an "active load", the current source behaves just like how a current source should be – supplying a constant 2A current (upper schematic). If I then checked the "active load", current stays at 2A only when \$ V_1 > 0.5V \$, and if \$ V_1 = -2V \$, the current source miraculously supplies -16A!

  1. It makes no sense to me that the current source can sink 16A while I've already fixed it a DC value of \$ I_1 = \$ 2A – where is this extra 12A comes from?
  2. I don't understand how a load can be modeled as a current source. Isn't a load a component or a sub-circuit that sinks current and dissipates energy? Current source supplies energy to the circuit – how could it supply and dissipate energy at the same time (i.e. suppling 2A current to the circuit but dissipates \$ 16A*2V=32W \$ ?!

Perhaps a related question here: LTSpice active load current generator soft saturation

Current Source Active Load

Best Answer

The answer is in the LTspice built-in Help document, but I thought it was worthwhile to explain WHY this is the answer and the context for it. First, here is the relevant blurb in the LTspice Help under I. Current Source:

This circuit element sources a constant current between nodes n+ and n-. If the source is flagged as a load, the source is forced to be dissipative, that is, the current goes to zero if the voltage between nodes n+ and n- goes to zero. The purpose of this option is to model a current load on a power supply that doesn't draw current if the output voltage is zero. When flagged as a load, the current source starts to deviate from a constant current when the voltage across it drops to 0.5V. The impedance eventually drops to a resistance equal to .25Ω/amp times the value of the current source.

What this is saying is that when the voltage across the current source drops below 0.5V, then its I-V curve soft-switches from a line with zero-slope (constant current) into a line with positive-slope (resistor). To illustrate this, we can use a behavioral current source to model something similar using the if(x,y,z) statement defined below. The main differences here is it will be a hard-switch between the two curves, and the switch-point is 0.25V instead of 0.5 to keep the curve continuous. I offset the plots below by 100mA so the lines wouldn't be directly on top of each other in order to see them clearly.

I=if(V(sweep)*2,2,V(sweep)/(0.25/2))

enter image description here


So, what is the purpose of even having such a feature? Active loads are useful in the simulation of switch-mode power supplies and other circuits where you have capacitors charging and discharging (among other things). Since LTspice is heavily geared toward SMPS simulation, it makes much sense to include a simplified model of an active load. The key property of an active load is its "compliance voltage". This is the point where the voltage across it drops below its ability to keep the current a flat line (i.e. constant). It appears LTspice's simplified model has this value always fixed at 0.5V without the ability to change it. Another thing to keep in mind is that these types of load enforce the condition that there is zero current when there is zero voltage, or said another way, the curve crosses the (0V, 0A) point. You can see this in the above plots.

Below is an example of an active load built with real parts being compared to LTspice's simplified "flagged load" model. It's a simple current mirror circuit with a reference current being generated by a voltage source and resistor. Notice how this specific active load's I-V curve tracks really well with the simplified model, until the voltage across it gets much too negative.

enter image description here

Related Topic