Op Amp Model
Easy-to-Use Voltage Limiter
OPAMP_VLIMIT_SERVO.CIR Download the SPICE file
There's a limit of how close an op amp's output can swing toward its supply rails. Usually this is modeled using a voltage source and a diode. But modeling is not a simple task. Based on the maximum current from the gain stage and the diode V-I equation, you can calculate the diode voltage Vd and then calculate the voltage Vlimit necessary to achieve the output voltage limit, Vomax. (See Voltage Limiting) This also assumes your gain stage output current is limited to a max value - which may not be true for all op amp models. But, there's a simpler way.
By adding an amplifier, you can create an accurate voltage limiter that's independent of the diode voltage or gain stage output current. If your output voltage attempts to exceed the limit, the amplifier servos the output to your maximum voltage. Let's see how.
VOLTAGE LIMITING ACTION
Many op amp models achieve their voltage gain by a current source G1 flowing into a resistor R1 creating a voltage V(10). Without any clamping, V(10) could swing to thousands of volts - unrealistic in an op amp with +/-15V rails! As an example, suppose an op amp can only swing to within 1.5 V of the rails leaving Vomax = +/-13.5 V. So how do we begin to model this behavior? Essentially, we need a limiter that work as follows.
For Vomax- < V(10) < Vomax+
Normal condition - limiters out of circuit.
What sets Vomax? Its simply the supply rail together with VVLP and VVLN.
HOW IT WORKS
When V(10) is within Vomax±, both servo amplifiers EVLP and EVLN, are isolated from the circuit through reverse biased diodes DVLP and DVLN. That's because node 91 swings more positive and node 93 swings more negative than node 10. Under this condition, the limiter is out of the picture.
But, suppose V(10) climbs slightly more positive than Vomax+. Node 91 now swings more negative than node 10 forward biasing DVLP!
EVLP now controls (or servos) V(10) to be equal to Vomax+. You can also think of EVLP as a unity gain buffer which during over-voltage condition condition takes control of node 10. This is possible because R1 is typically a high impedance (>1k ohms) and the low impedance of the DVLP and EVLP can easily pull down the V(10) to Vomax+. The negative limiter works similarly, just using opposite polarities.
Note there's no diode equations to mess with! Simply set VVLP and VVLN to how close to the rails Vo output can swing.
Here are the SPICE statements for the servo amplifiers EVLP and EVLN.
The input of EVLP compares V(10) with Vomax at V(90). The servo amplifier action drives V(91) to a level required to keep V(10) - through DLVP - at Vomax. How do we set the gain of servo amps EVLP and EVLN? For this example, the gains are set to 1000. Too high of a gain and you might have convergence problems. Too low of a gain and the limiter loses accuracy. But typically, you don't need alot of accuracy for this function. You can even set it to 100 or less.
To test drive our op amp model, we'll use the non-inverting amplifier. Note, you need to connect power supplies for this model to work.
CIRCUIT INSIGHT VS generates a 5 V square wave. Run a Transient Analysis and plot the input V(1) and output V(3). With R1 = R2 = 10 kΩ, the non-inverting gain is 2 V/V. For a 5 V input, you should see a 10V output.
With 15 V supplies and VVLP and VVLN = 2 V, the output should be clamped to 13.5 V. Increase the gain by setting R2 to 20 kΩ or 30 kΩ. Rerun the simulation. Does the output make its destination? What is the exact voltage it gets clamped to? Place a cursor on V(3) to get an accurate measure.
HANDS-ON DESIGN How does the servo gains effect the accuracy of Vomax? Reduce the gain of EVLP and EVLN from 1000 down to 100 or 10. Run a new simulation. How accurate is the limiting action now? Alternatively, raise the gain to 10000 or above. Did the accuracy improve?
Generally speaking, these limits don't need to be so accurate. Its not a very controlled behavior in the actual device. And furthermore, you shouldn't be designing circuits that are dependent on the accuracy of Vomax.
HANDS-ON DESIGN Try varying the voltage clamps by adjusting VVLP and VVLN. Run a simulation with your new values. How about asymmetric voltage limiting? Just set VVLP and VVLN to different levels.
For a description of all op amp models, see
Op Amp Models.
Download the file or copy this netlist into a text file with the *.cir extension.
OPAMP_VLIMIT_SERVO.CIR * * SIGNAL SOURCE VS 1 0 AC 1 PWL(0US 0V 0.01US 5V 2US 5V 2.01US -5V 4US -5V) * POWER SUPPLIES VCC 20 0 DC +15V VEE 21 0 DC -15V * NON INVERTING AMPLIFIER R1 0 2 10K R2 2 3 10K XOP1 1 2 20 21 3 OP_VLIM_S RL 3 0 1000K * OP AMP MODEL - VLIMIT SERVO *************************** * Device Pins In+ In- V+ V- Vout .SUBCKT OP_VLIM_S 1 2 101 102 82 * INPUT R RIN 1 2 1e+012 * INPUT STAGE: GAIN, POLE G1 100 10 1 2 1 R1 10 100 1e+006 C1 10 100 3.3e-008 * OUTPUT VOLTAGE LIMITS VVLP 101 90 DC 1.5V DVLP 10 91 DNOM EVLP 91 100 90 10 1000 VVLN 92 102 DC 1.5V DVLN 93 10 DNOM EVLN 93 100 92 10 1000 * OUTPUT STAGE EOUT 80 100 10 100 1 ROUT 80 82 100 * INTERNAL REFERENCE RREF1 101 103 100K RREF2 103 102 100K EREF 100 0 103 0 1 R100 100 0 1MEG .MODEL DNOM D .ENDS * * ANALYSIS ************************************* * .TRAN 0.05US 4US 0 0.05US *.AC DEC 20 0.1 1000MEG .PROBE .END
© 2007 eCircuit Center