pingspice.examples.current-limit.CurrentLimiter(Include)
class documentation
Part of pingspice.examples.current-limit
(View In Hierarchy)
I represent a simple current limiter using a JFET and a tiny shunt resistance Rs.
Per Siliconix App Note AN103 (1997-03-10), the value of Rs to limit current to Imax is approximately -VTO/Imax*(1-sqrt(Imax/Idss)). Idss is I(Vgs=0), which is 2-4 times BETA when there is any significant current limiting happening. "For best regulation, [Imax] must be considerably less than Idss."
So, if Idss=2*Imax and BETA=Idss/2, set BETA=Imax. But I set it a bit higher than that, 2*Imax.
I introduce the following alterable values into the circuit in which I am included:
- slope: A channel-length modulation parameter for the JFET that reduces how drastic the current limiting eventually gets. Basically, a slope limiter for the voltage vs. current curve after limiting starts.
- shunt: The shunt resistance.
Instance Variable | Imax | Maximum current, the point where I really start dissipating power to limit amperage. |
Method | setup | Conventional current flow is from my pos (more positive) terminal into me and then out my neg (more negative) terminal. |
Inherited from NodeStuff (via Include):
Instance Variable | shunts | A dict of current sensing V elements with the pairs of nodes they connect. |
Class Variable | debug | A Bag that gets set
True for all instances to log info about each setup
call. |
Class Method | autoName | Undocumented |
Method | setupResults | Undocumented |
Method | fill | Undocumented |
Method | nodeCheck | Call with the circuit building tool f and a sequence of
nodes provided to this Include or
Subcircuit . |
Method | rawNetlist | Get lines of a raw netlist from a search hierarchy of possible sources. |
Method | shunt | Call to insert a current-measuring shunt and add an entry to my Elements
baton's dict of shunts. |
Method | raw | See Elements.raw . |
Method | iNode | See Elements.iNode . |
Method | ground | See Elements.ground . |
Method | sca | See Elements.sca . |
Method | sca6 | See Elements.sca6 . |
Class Method | _libDir | Undocumented |
Method | _strippedLines | Undocumented |
Method | _call_setup | Calls my setup
method (almost always your override of that method, actually) and processes
any return value. |
Inherited from NodeStuff (via Include):
Instance Variable | shunts | A dict of current sensing V elements with the pairs of nodes they connect. |
Class Variable | debug | A Bag that gets set
True for all instances to log info about each setup
call. |
Class Method | autoName | Undocumented |
Method | setupResults | Undocumented |
Method | fill | Undocumented |
Method | nodeCheck | Call with the circuit building tool f and a sequence of
nodes provided to this Include or
Subcircuit . |
Method | rawNetlist | Get lines of a raw netlist from a search hierarchy of possible sources. |
Method | shunt | Call to insert a current-measuring shunt and add an entry to my Elements
baton's dict of shunts. |
Method | raw | See Elements.raw . |
Method | iNode | See Elements.iNode . |
Method | ground | See Elements.ground . |
Method | sca | See Elements.sca . |
Method | sca6 | See Elements.sca6 . |
Class Method | _libDir | Undocumented |
Method | _strippedLines | Undocumented |
Method | _call_setup | Calls my setup
method (almost always your override of that method, actually) and processes
any return value. |
Conventional current flow is from my pos (more positive) terminal into me and then out my neg (more negative) terminal.