Modelica.Blocks.Nonlinear

Library of discontinuous or non-differentiable algebraic control blocks

Information


This package contains discontinuous and non-differentiable, algebraic input/output blocks.

Extends from Modelica.Icons.Package (Icon for standard packages).

Package Content

NameDescription
Modelica.Blocks.Nonlinear.Limiter Limiter Limit the range of a signal
Modelica.Blocks.Nonlinear.VariableLimiter VariableLimiter Limit the range of a signal with variable limits
Modelica.Blocks.Nonlinear.SlewRateLimiter SlewRateLimiter Limits the slew rate of a signal
Modelica.Blocks.Nonlinear.DeadZone DeadZone Provide a region of zero output
Modelica.Blocks.Nonlinear.FixedDelay FixedDelay Delay block with fixed DelayTime
Modelica.Blocks.Nonlinear.PadeDelay PadeDelay Pade approximation of delay block with fixed DelayTime
Modelica.Blocks.Nonlinear.VariableDelay VariableDelay Delay block with variable DelayTime

Modelica.Blocks.Nonlinear.Limiter Modelica.Blocks.Nonlinear.Limiter

Limit the range of a signal

Information


The Limiter block passes its input signal as output signal as long as the input is within the specified upper and lower limits. If this is not the case, the corresponding limits are passed as output.

Extends from Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
uMaxUpper limits of input signals
uMinLower limits of input signals
Advanced
strict= true, if strict limits with noEvent(..)
limitsAtInit= false, if limits are ignored during initialization (i.e., y=u)

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal

Modelica.Blocks.Nonlinear.VariableLimiter Modelica.Blocks.Nonlinear.VariableLimiter

Limit the range of a signal with variable limits

Information


The Limiter block passes its input signal as output signal as long as the input is within the upper and lower limits specified by the two additional inputs limit1 and limit2. If this is not the case, the corresponding limit is passed as output.

Extends from Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
strict= true, if strict limits with noEvent(..)
limitsAtInit= false, if limits are ignored during initialization (i.e., y=u)

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal
limit1Connector of Real input signal used as maximum of input u
limit2Connector of Real input signal used as minimum of input u

Modelica.Blocks.Nonlinear.SlewRateLimiter Modelica.Blocks.Nonlinear.SlewRateLimiter

Limits the slew rate of a signal

Information


The SlewRateLimiter block limits the slew rate of its input signal in the range of [Falling, Rising].

To ensure this for arbitrary inputs and in order to produce a differential output, the input is numerically differentiated with derivative time constant Td. Smaller time constant Td means nearer ideal derivative.

Note: The user has to choose the derivative time constant according to the nature of the input signal.

Extends from Modelica.Blocks.Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
RisingMaximum rising slew rate [+small..+inf) [s-1]
FallingMaximum falling slew rate (-inf..-small] [s-1]
TdDerivative time constant [s]
Advanced
strict= true, if strict limits with noEvent(..)

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal

Modelica.Blocks.Nonlinear.DeadZone Modelica.Blocks.Nonlinear.DeadZone

Provide a region of zero output

Information


The DeadZone block defines a region of zero output.

If the input is within uMin ... uMax, the output is zero. Outside of this zone, the output is a linear function of the input with a slope of 1.

Extends from Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
uMaxUpper limits of dead zones
uMinLower limits of dead zones
deadZoneAtInit= false, if dead zone is ignored during initialization (i.e., y=u)

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal

Modelica.Blocks.Nonlinear.FixedDelay Modelica.Blocks.Nonlinear.FixedDelay

Delay block with fixed DelayTime

Information


The Input signal is delayed by a given time instant, or more precisely:

   y = u(time - delayTime) for time > time.start + delayTime
     = u(time.start)       for time ≤ time.start + delayTime

Extends from Modelica.Blocks.Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
delayTimeDelay time of output with respect to input signal [s]

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal

Modelica.Blocks.Nonlinear.PadeDelay Modelica.Blocks.Nonlinear.PadeDelay

Pade approximation of delay block with fixed DelayTime

Information


The Input signal is delayed by a given time instant, or more precisely:

   y = u(time - delayTime) for time > time.start + delayTime
     = u(time.start)       for time ≤ time.start + delayTime

The delay is approximated by a Pade approximation, i.e., by a transfer function

           b[1]*s^m + b[2]*s^[m-1] + ... + b[m+1]
   y(s) = --------------------------------------------- * u(s)
           a[1]*s^n + a[2]*s^[n-1] + ... + a[n+1]

where the coefficients b[:] and a[:] are calculated such that the coefficients of the Taylor expansion of the delay exp(-T*s) around s=0 are identical upto order n+m.

The main advantage of this approach is that the delay is approximated by a linear differential equation system, which is continuous and continuously differentiable. For example, it is uncritical to linearize a system containing a Pade-approximated delay.

The standard text book version uses order "m=n", which is also the default setting of this block. The setting "m=n-1" may yield a better approximation in certain cases.

Literature:

Otto Foellinger: Regelungstechnik, 8. Auflage, chapter 11.9, page 412-414, Huethig Verlag Heidelberg, 1994

Extends from Modelica.Blocks.Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
delayTimeDelay time of output with respect to input signal [s]
nOrder of Pade approximation
mOrder of numerator

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal

Modelica.Blocks.Nonlinear.VariableDelay Modelica.Blocks.Nonlinear.VariableDelay

Delay block with variable DelayTime

Information


The Input signal is delayed by a given time instant, or more precisely:

   y = u(time - delayTime) for time > time.start + delayTime
     = u(time.start)       for time ≤ time.start + delayTime

where delayTime is an additional input signal which must follow the following relationship:

  0 ≤ delayTime ≤ delayMax

Extends from Modelica.Blocks.Interfaces.SISO (Single Input Single Output continuous control block).

Parameters

NameDescription
delayMaxmaximum delay time

Connectors

NameDescription
uConnector of Real input signal
yConnector of Real output signal
delayTime 

Automatically generated Mon Sep 23 17:20:25 2013.