### Block: RateLimiter

Inports
In |
Init | Value which is loaded at rising flanke of enable signal
Enable | Enable == 0: Deactivation of block; Out is set to In. Enable != 0: Activation of block; Out is rate limited. Enable 0->1: Preloading of output; Out is set to value of Init input

Outports
Out |

Mask Parameters
Tr | Rising time in seconds. Slew rate will be 1/Tr
Tf | Falling time in seconds. Slew rate will be 1/Tf
ts_fact | Multiplication factor of base sampling time (in integer format)

##### Description:

Limitation of rising and falling rate.

Function of Enable:

0: rate limiting disabled, signal is passed through

1: rate limiting enabled, signal is rate limited

0->1: preload of output with value from init input

Rising and falling time refer to a step from 0 to 1. Entries for Tr: Rising time and Tf: Falling time smaller than the actual sample time will be limited to the sample time internally.

The 16- and 32-Bit fixed point implementations are based on an internal 32-Bit wide slew-rate variable while the 8-Bit fixed point implementation uses a 16-Bit wide slew-rate variable.

##### Implementations:

FiP16 | 16 Bit Fixed Point Implementation
FiP32 | 32 Bit Fixed Point Implementation
Float32 | 32 Bit Floating Point Implementation
Float64 | 64 Bit Floating Point Implementation

#### Implementation: FiP16

16 Bit Fixed Point Implementation

Inports Data Type
In | int16
Init | int16
Enable | bool

Outports Data Type
Out | int16

#### Implementation: FiP32

32 Bit Fixed Point Implementation

Inports Data Type
In | int32
Init | int32
Enable | bool

Outports Data Type
Out | int32

#### Implementation: Float32

32 Bit Floating Point Implementation

Inports Data Type
In | float32
Init | float32
Enable | bool

Outports Data Type
Out | float32

#### Implementation: Float64

64 Bit Floating Point Implementation

Inports Data Type
In | float64
Init | float64
Enable | bool

Outports Data Type
Out | float64