Dead band

Symbol: |
Description: | This function block implements a dead band. It is mainly used in control system modeling and simulations. A typical application is the elimination of residual error signal in front of a PI-controller.
Operation: | Y = X - TB IF X > TB Y = X + TB IF -X < -TB Y <= 0.0 IF -TB < X < TB
Signals: | Name | I/O | Type(s) | Function
 | X | I | FLOAT | Input signal
 | Y | I | FLOAT | Delayed signal
 | TB | I | FLOAT | Delay time in [s]


Delay line with interpolation

Symbol:

Description:

This function block implements a variable-length delay line for float signals. It is mainly used in control system modeling and simulations. The resulting delay error is less than half the program cycle time. The delay time constant may be changed at runtime.

Internally, a ring buffer of up to 50 values is used, and values are linearly interpolated between the points.

Signals:

Name

I/O

Type(s)

Function

X

I

FLOAT

Input signal

Y

I

FLOAT

Delayed signal

Ttot

I

FLOAT

Delay time in [s]


Lose gear

Extended SFB

Lose (gear)

Symbol: |
Description: | This block implements a gear of width 2*dXL.
Operation: | Y = X - dXL IF X > Y(old) + dXL Y = X + dXL IF X < Y(old) - dXL Y = Y(old) IF Y(old) - dXL < X < Y(old) + dXL
Signals: | Name | I/O | Type(s) | Function
 | X | I | FLOAT | Input signal
 | dXL | I | FLOAT | Tolerance
 | Y | O | DF | Output signal


Random generator (Float)

Symbol |
Description | This block generates a floating point random number whose value lies in the range between Ymin and Ymax. Quantization is 1/32767.
Signals | Name | I/O | Type(s) | Function
 | Ymin | I | FLOAT | Lower range limit
 | Ymax | I | FLOAT | High range limit
 | Y | O | FLOAT | Random number


Random generator (Word)

Symbol: |
Description: | This block generates an integer random number whose value lies in the range between 0 and 32767.
Signals: | Name | I/O | Type(s) | Function
 | WA | O | WORD | Random number


Rate limiter

Symbol: |
Description: | This function block implements a rate limiter function. The input signal rate of change over time is limited to the value VB, and the limited value is the function block output.
Signals: | Name | I/O | Type(s) | Function
 | X | I | FLOAT | Input signal
 | VB | I | FLOAT | Max change per second
 | Y | O | FLOAT | Output (rate limited) signal


Three-point term

Symbol: |
Description: | This block implements a three-point control term.
Operation: | IF X < X1on THEN Q1 <= 1 IF X > X1off THEN Q1 <= 0 IF X > X2on THEN Q2 <= 1 IF X < X2off THEN Q2 <= 0
Signals: | Name | I/O | Type(s) | Function
 | X | I | FLOAT | Input signal
 | X1on | I | FLOAT | Turn-on point for Q1
 | X1off | I | FLOAT | Turn-off point for Q1
 | X2on | I | FLOAT | Turn-off point for Q2
 | X2off | I | FLOAT | Turn-on point for Q2
 | Q1 | O | BIT | Binary output
 | Q2 | O | BIT | Binary output


Three-point-step controller

Symbol:

Description:

This block implements a PID-type controller with binary control output (three-point control) of a positioning drive without position feedback. It computes the switching points accounting for the program cycle time quantization.

When input X is open-ended or Tv is set to 0.0, the block works as a discontinuous PI controller. The X signal input is used in the derivation of the internal D-term; this avoids overdrive conditions at the control outputs caused by surges in the error signal at Xw via the D-term.

Sign reversal may be effected by choosing a negative gain at Kr.

The bit 3 of the Status byte HA is used to switch the controller into manual operation. If a manual fine-positioning forward-reverse capability is required, the corresponding forward and reverse signals should be fed into bit 1 and bit 0 of the same byte, respectively.

Signals:

Name

I/O

Type(s)

Function

X

I

FLOAT

process variable value

Xw

I

FLOAT

Error signal

HA

I

BYTE

Manual/Auto control byte

KR

I

FLOAT

Proportional gain

Tn

I

FLOAT

Integral time in [s]

Tv

I

FLOAT

Derivative time in [s]

TS

I

FLOAT

Full travel time in [s]

Tmin

I

FLOAT

Minimal impulse length in [s]

TVR

I

FLOAT

Commutation pause in [s]

FNa

I

FLOAT

Stop error in [%]

dY

I

FLOAT

Current internal position error

QAuf

O

BIT

Forward direction drive signal

QZu

O

BIT

Reverse direction drive signal

Parameter-ization:

TS, Full travel time:

Time in [s] needed by the drive to travel from one extreme position to the other.

Tmin, Minimal impulse length:

The minimal duration of an impulse at Qauf or Qzu required to effect any drive movement, expressed in [s].

TVR, Commutation pause:

The pause time in [s] to allow for a direction reversal between e.g. turning Qauf off and turning Qzu on.

FNa, Stop allowance:

To compute the internal turn-off points, this percentage is taken into account. Its use prevents low-frequency oscillations of the feedback control loop.

Comment:

When using this function block, the quantization of the control signal will always result in a steady-state error. This should be "ironed out" with the aid of a dead band function block.