Engee documentation

Variable Pulse Generator

Generation of an ideal, time-varying pulse signal.

blockType: VariablePulseGenerator

Path in the library:

/Basic/Discontinuities/Variable Pulse Generator

Description

Use the Variable Pulse Generator unit to create perfect modulated pulse signals.

In general, the output pulse of the block is described by the expression

,

where is the width of the output pulse.

Ports

Input

D - duty cycle
scalar | vector | matrix

Desired duty cycle of pulse P as a scalar in the range [0,1].

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

P - period
scalar | vector | matrix

The time between the rising edges of successive pulses of the output signal. A smaller value corresponds to a higher pulse frequency.

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

Output

Port_1 - modulated output pulse signal
scalar | vector | matrix

Modulated output pulse signal corresponding to the input duty cycle.

Data types: Float64.

Parameters

Allow zero pulse width - allow zero output signal width
off (by default) | on

Enable this parameter to allow the output pulse signal to maintain a pulse width of 0.

Enabling this parameter causes the block to have a direct through connection. This can cause algebraic loops in your model.

Data types: Bool.

Sample Time - interval between calculation steps
0.1 (By default) | scalar.

Specify the interval between calculation steps as a non-negative number. To inherit a calculation step, set this parameter to -1.

Usage in program code

Block parameter

SampleTime

By default

0.1