Engee documentation

Propagation Delay

Simulates the time delay in a discrete system.

propagation delay

Description

The Propagation Delay block delays the current signal value by the amount specified by the delay signal. The Propagation Delay block is well suited for implementing a time delay in a discrete system.

At each simulation step, the block samples the input signal and the input delay signal . The output value of the block becomes the signal value after a delay time compared to the current simulation time .

when

At the start of the simulation, the block output value is the value of the Initial output parameter . The first sample of the delay signal determines when the block output changes from the Initial output value to the delayed input signal values.

when

When the simulation reaches the time , the block output is determined by the signal and delay samples.

, when ,

where:

  • - sample input signal taken at .

  • - the delay signal sample taken at .

  • - the modelling time during which the following signal and delay samples were taken.

  • - delay sample taken at .

Ports

Input

u - input signal
scalar

The input signal that the unit delays according to the parameter settings.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool.

dt - delay signal
scalar

The delay signal determines the amount of delay applied at each time step of the simulation. You can use the Propagation Delay block to implement a constant or variable delay.

The values of the delay signal must meet these constraints:

  • The delay signal must contain scalar, real, finite, positive values greater than 128*eps, which is the smallest time resolution supported by the software.

  • The output time for samples of the delayed input signal must increase monotonically.

    For example, suppose the value of the delay signal is 0.6 simulation time 0 and the next simulation step is executed at time 0.5. The delay signal at time 0.5 must be greater than 0.1 so that the output delay time for sampling the input signal is greater than the output time for sampling the input signal (0.6).

  • When Run at fixed time intervals is selected, the delay signal values must be greater than the value specified for Sample time.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64.

Output

y - delayed output signal
scalar

The output signal has the same data type as the input signal.

By default, the output signal has a fixed sampling time in small increments.

When Run at fixed time intervals is selected, the delay signal values must be greater than the value specified for Sample time.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, Int128, UInt8, UInt16, UInt32, UInt64, UInt128, Fixed, Bool.

Support for complex numbers: yes

Parameters

Initial output - initial value of the output signal
0.0 (by default) | scalar

Initial value of the output signal.

Usage in program code

Block parameter

InitialOutput

Values

scalar

By default

0.0

Run at fixed time intervals - run at fixed time intervals
Off (By default) | On

This parameter defines the way of block execution and the interval between steps of output signal calculation.

The block is executed every time the delay for the input sample expires. The output signal has a fixed-in-minor calculation step.

on - the block is executed with the calculation step specified in the Sample time parameter. The output signal also has a calculation step specified in the Sample time parameter.

When the parameter Run at fixed time intervals is selected:

  • The delay signal values must be greater than the value you specified for the Sample time parameter.

  • Delay signal values that are not integer multiples of the specified calculation step are rounded down to the nearest integer multiple of the calculation step. For example, if the calculation step is 0.1 and the delay signal value is 0.68, Engee rounds the delay to 0.6.

Usage in program code

Block parameter

RunAtFixedTimeIntervals

Values

disabled | enabled

By default

off

Sample time - interval between calculation steps
0.1 (by default) | scalar

Specify the interval between calculation steps as a non-negative number. The delay signal values must be greater than the specified sampling time.

Delay signal values that are not integer multiples of the specified calculation step are rounded down to the nearest integer multiple of the calculation step. For example, if the calculation step is 0.1 and the delay signal value is 0.68, Engee rounds the delay to 0.6.

Dependencies

To use this parameter, select the Run at fixed time intervals checkbox.

Usage in program code

Block parameter

SampleTime

By default

0.1