Engee documentation

Rate Limiter

The limiting rate of change of the signal.

blockType: RateLimiter

Path in the library:

/Basic/Discontinuities/Rate Limiter

Description

Block Rate Limiter limits the first derivative of the signal passing through it. The output does not change faster than the specified limit. The derivative is calculated using the usage of this equation:

Where

  • and — input data of the current block and time;

  • and — Output data and time in the previous step.

The output signal is determined by comparing with parameters Rising slew rate and Falling slew rate:

  • If more parameter Rising slew rate ( ), the output signal is calculated as

  • If less than a parameter Falling slew rate ( ), the output signal is calculated as

  • If located between borders and , a change in the output is equal to a change in the input:

Ports

Input

# IN_1 — Input signal
scalar | vector | the matrix

Details

The input signal whose speed needs to be limited.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, Uint128, Fixed, Fixed-point

Complex numbers support

Yes

Output

# OUT_1 — Output signal
scalar | vector | the matrix

Details

The output signal from the rate limiting algorithm.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, Uint128, Fixed, Fixed-point

Complex numbers support

Yes

Parameters

Main

# Rising slew rate — the limit of the derivative to increase the input data
Scalar / array of real numbers

Details

Sets the limit of the input signal rise rate.

Default value

1

Program usage name

RisingSlewLimit

Tunable

Yes

Evaluatable

Yes

# Falling slew rate — the derivative limit to reduce the input data
Scalar / array of real numbers

Details

Specify the lower limit of the input signal drop rate. This parameter is configurable for fixed-point inputs.

Default value

-1

Program usage name

FallingSlewLimit

Tunable

Yes

Evaluatable

Yes

# Sample time mode — calculation step mode
continuous | inherited

Details

Specify the mode of the calculation step.

  • continuous — continuous.

  • inherited — inherited from the previous block in the model.

Values

continuous | inherited

Default value

inherited

Program usage name

SampleTimeMode

Tunable

No

Evaluatable

No

# Initial condition — the initial condition
Scalar / array of real numbers

Details

Set the initial modeling condition.

Dependencies

To use this parameter, set for the parameter Sample time mode meaning inherited.

Default value

0

Program usage name

InitialCondition

Tunable

Yes

Evaluatable

Yes

Additional options

C code generation: Yes