Documentation

B4 Saw Wave Generator

Block name

B4_SAW_GENERATOR

ST call

PROGRAM B4_TEST
VAR
O1,O2: REAL;
FB: LIB.CORE.V1_0.B4_SAW_GENERATOR:= (MINIMUM:= 0, MAXIMUM:= 10);
END_VAR

FB(OUT => O1, TRES => O2);
END_PROGRAM

Library

LIB\CORE

Version

V1.0

Description

The block is a saw signal generator with minimum and maximum value setting, minimum and maximum value time duration setting, and ramp time setting. Another output provides remaining time until the end of the period.

Inputs

Input Type Description Default value
ENABLE BOOL Enable of functionality of the block True
TMIN TIME Time interval for OUT=MINIMUM. 0s
TRAMP TIME Time interval for the OUT to rise from MINIMUM to MAXIMUM. 1s
TMAX TIME Time interval for OUT=MAXIMUM. 0s
MINIMUM REAL Minimum value of the output signal. 0
MAXIMUM REAL Maximum value of the output signal. 1
PAUSING BOOL Behaviour when paused True

Outputs

Output Type Description
OUT REAL Output saw signal.
TRES REAL Remaining time until the end of the period.

Function

The output signal OUT provides a saw signal with intervals Tmin, Tramp, and Tmax and limit values of MINIMUM and MAXIMUM. The block contains another output signal, Tres, which is remaining time until the end of the current period T, see image below. The block also contains a boolean input ENABLE which switches the generator off (when ENABLE: = false). The block behaviour after switching off depends on the PAUSING parameter (see image below):

  • PAUSING=FALSE and ENABLE=FALSE: OUT is set to MINIMUM + MAXIMUM / 2. As soon as ENABLE goes to TRUE, the period time starts from the beginning.
  • PAUSING=TRUE and ENABLE=FALSE: OUT is frozen. As soon as ENABLE goes to TRUE, the sequence continues from the previous value.

Application example

Function B4 generates a saw signal on the O1 output, with period of 1 second, minimum value of 0, and maximum value of 1.