Engee documentation

Propagation Delay

Simulates the time delay in a discrete system.

propagation delay

Description

Block Propagation Delay delays the current signal value by the value set by the delay signal. The block Propagation Delay is well suited for realisation of 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 beginning of the simulation, the block output value is the value of parameters Initial output . The first sample of the delayed signal determines when the block output changes from the value of the Initial output to the value of the delayed input signal.

when

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

, when ,

where

  • - sample of the input signal taken at ;

  • - the delay signal sample taken at ;

  • - simulation time, during which the following signal and delay samples were taken;

  • - delay sample taken at time .

Ports

Input

# u — input signal
scalar

Details

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

Data types

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

Complex numbers support

Yes

# dt — delay signal
scalar

Details

The delay signal determines the amount of delay applied at each time step of the simulation. You can use the block Propagation Delay 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 the Run at fixed time intervals parameter is selected, the delay signal values must be greater than the value specified for the Sample time parameter.

Data types

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

Complex numbers support

Yes

Output

# y — delayed output signal
scalar

Details

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 the Run at fixed time intervals parameter is selected, the delay signal values must be greater than the value specified for the Sample time parameter.

Data types

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

Complex numbers support

Yes

Parameters

Main

# Initial output — initial value of the output signal
Real or complex number

Details

The initial value of the output signal.

Default value

0.0

Program usage name

InitialOutput

Tunable

No

Evaluatable

Yes

# Run at fixed time intervals — start with fixed time intervals
Logical

Details

This parameters defines the way the block is executed and the interval between steps of the output calculation.

disabled - 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 parameters Sample Time. The output signal also has a calculation step specified in the parameters . Sample Time.

When selecting the parameters Run at fixed time intervals:

  • Delay signal values must be greater than the value you specified for the parameters Sample 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.

Default value

false (switched off)

Program usage name

RunAtFixedTimeIntervals

Tunable

No

Evaluatable

No

# Sample Time — interval between calculation steps
SampleTime (real number / vector of two real numbers)

Details

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 parameters, select the checkbox Run at fixed time intervals.

Default value

0.1

Program usage name

SampleTime

Tunable

No

Evaluatable

Yes