The following function block modes are explained in sequence:
With positional feedback (
en_rcpy = 1)
If the positional feedback RCPY (en_rcpy = 1 ) is used, the input IN must be attached to the absolute value output OUT of a controller (control range 0 to 100%). For each new value for output OUT generated by the controller the SERVO function block generates a discrete output RAISE or LOWER whose length is proportional to the variance IN - RCPY. To guarantee that the function block operates correctly, the input MA_I must be attached to the controller’s MA_O output.
The RCPY input value can correspond to an opening percentage (with rcpy_rev = 0) or a closing percentage (rcpy_rev set to 1).
Without positional feedback (
en_rcpy = 0)
If no positional feedback is assigned (
en_rcpy = 0) the
INPD input should be attached to a controller’s output alteration
OUTD (control range -100 to 100%). For each new
OUTD value generated by the controller, the function block
SERVO generates a discrete output
RAISE or
LOWER whose length is proportional to the output length of the controller
INPD. In this case it is essential that the input
MA_I is attached to the same controller’s
MA_O output because the algorithm varies slightly for each operating mode (see section "
SERVO function block algorithms").
Actuator opening time (
t_motor)
The parameter t_motor enables the function block to be set to the various servomotors.
The RAISE or LOWER pulse duration to be switched must be proportional to the actuator opening time with full control range.
Minimum impulse length (
t_mini)
Use the t_mini parameter to avoid generation of pulses which are too short and can damage the actuator. If the RAISE or LOWER pulse length is calculated to be below t_mini the function block does not generate a pulse. Every pulse which has already commenced lasts at least t_mini.
In automatic mode the resolution of the control performed using the SERVO function block is expressed by the ratio (servoloop sampling period / SERVO function block execution period).
This means the controller must be sampled before the SERVO function block (using a SAMPLETM function block). The SERVO function block must, however, be executed every cycle. In the opposite case (if the control block is executed at the same time as the SERVO block) an inexact two point control, which the actuator makes great use of, is performed.
The SEN input of the SERVO function block indicates whether or not the PID control block was executed while the cycle was running.
The SEN input allows determination of whether or not the controller generated a new output so that the same output is not considered several times.
SEN =
|
Meaning
|
1
|
Including a new value
|
0
|
no inclusion of a new value
|
If the controller samples using the function block
SAMPLETM, as is the usual case, it suffices to attach the
SERVO block’s
SEN input to the
SAMPLETM output (see section "
Examples of function block SERVO").
Recording the end position
If an end position is gathered (R_STOP = 1 or L_STOP = 1), the corresponding output (RAISE or LOWER) is forced to 0.