Current Limiter

Behavioral model of current limiter


Semiconductor Devices


The Current Limiter block provides a behavioral model of a current limiter. Use it to represent current limiting as found in power supplies and motor drives, and also to represent components that are used to limit inrush current.

The current limiting acts for both positive and negative currents. For applications where limiting is required in only one direction, you can augment the Current Limiter block with a series diode (blocks any reverse current) or parallel diode (no limiting in the reverse direction).

The block implements current limiting by using a hyperbolic tangent function:



  • i is the current through the component.

  • v is the voltage drop across the component.

  • iLIM is the current limit.

  • vLIM is the approximate voltage drop across the component when the current limit becomes active.

  • gLIM is the rate of change of current with voltage drop when on the current limit (limit-state conductance).

When v = vLIM, then


Therefore the current is approximately equal to the limit. Choose the value for gLIM such that gLIM·v is small compared to iLIM for the maximum expected voltage drop. This term is included in the block equation to improve numerical properties during simulation.

When choosing the value of vLIM, consider that making it too small will require tight solver tolerances and small step sizes. In practice, current limiters can be implemented using a MOSFET and series source resistor, the gate-source voltage being driven by the series resistor. This implementation does not produce a sharp limit, similar to the tanh curve used in this block. You can use a datasheet plot of current against voltage to pick a suitable value for vLIM.

Thermal Port

The block has an optional thermal port, hidden by default. To expose the thermal port, right-click the block in your model, and then from the context menu select Simscape > Block choices > Show thermal port. This action displays the thermal port H on the block icon, and adds the Thermal Port tab to the block dialog box.

The thermal port model contains a thermal mass. The power dissipated by the current limiter, plus the heat flow into the thermal port, drives the thermal mass differential equation:



  • m is the thermal mass.

  • T is the thermal port temperature.

  • Ploss is the electrical loss, v·i.

  • QH is the heat flow from the external network into the thermal port.


Parameters Tab

Current limit

The maximum current magnitude. The default value is 1 A.

Voltage drop when current starts to limit

When the voltage drop is equal to this value, then the current is limited at 0.9993 times the current limit value. The default value is 0.1 V.

Limit-state conductance

When the current is limited, this parameter defines the rate of change of current with voltage drop if the current is driven harder onto the limit. The default value is 1e-3 1/Ω.

Thermal Port Tab

This tab appears only for blocks with exposed thermal ports. For more information, see Thermal Port.

Thermal mass

The heat energy required to raise the temperature by one degree. The default value is 100 J/K.

Initial temperature

The temperature at the start of simulation. The default value is 25 C.


The block has the following ports:


Electrical conserving port associated with the current limiter positive terminal


Electrical conserving port associated with the current limiter negative terminal

Introduced in R2015a

Was this topic helpful?