Description
Original instructions
Description of the Function
The model corrector allows you to deal with serious delays, if any, compared with the main time constant of the process; this case cannot be satisfactorily resolved by standard PID process control. The model corrector is also important for regulating a non-linear process.
The model is first order + delay. However, this corrector may deal with any stable and aperiodic process, in any order whatsoever.
The parameters to be supplied are:
The ratio between time constant in open loop/time constant in closed loop.
NOTE: This function block performs an internal initialization in the first program cycle after a warm start or cold start (e.g. application download or power cycle) of the PLC program.
Due to this, you have to make sure that the function block is invoked in the first program cycle. In case of inkoving the function block in a later program cycle, the internal initialization will not be performed and the ouputs may deliver wrong values.
WARNING
UNEXPECTED OUTPUT BEHAVIOUR
Make sure that the function block is always invoked in the first program cycle.
For a correct behaviour you must synchronize the model corrector with the SAMPLE_TM function and adjust the INTERVAL variable to the same value as T_ECH of IMC
Failure to follow these instructions can result in death, serious injury, or equipment damage.
Block diagram
The block diagram of the algorithm of the model corrector is:
Installation of the Corrector
The installation of a model corrector is similar to that of a PID corrector. The adjustment of the parameters KP, TI and TD of the PID having been replaced by the adjustment of the gain, the time constant, the pure delay of the process model and the ratio between the time constants in open loop and closed loop.
The model corrector uses the same inputs/outputs as a PID (PV, RSP, FF, OUTP). It also uses the RCPY optional input (external input of the model), which makes it possible to make the model’s input the real process input (for example the baud rate measured at the output of a valve).
NOTE: The DMO output of the model is not directly comparable to the PV measurement. The model does not take into account at this level the Ks static gain and the possible existence of an equalizisation (BIAS).
Functionalities
The functionalities other than the control calculation are identical to those of the PID:
Representation in FBD
Representation:
Representation in LD
Representation:
Representation in IL
Representation:
CAL IMC_Instance(PV:=ProcessValue,SP:=SetPoint,
    FF:=FeedForward, RCPY:=CopyOfRealAction,
    MAN_AUTO:=OperatingModeFlag,PARA:=Parameters,
    BUFFER:=SamplesBuffer, TR_I:=InitializationInput,
    TR_S:=InitializationOrder, OUT:=AbsoluteOutput,
    OUTD=>IncrementalOutput,DMO=>DelayedModelOutput,
    MA_O=>CurrentBlockOperatingMode, INFO=>InfoIMC,
    STATUS=>StatusWord)
Representation in ST
Representation:
IMC_Instance (PV:=ProcessValue, SP:=SetPoint,
    FF:=FeedForward, RCPY:=CopyOfRealAction,
    MAN_AUTO:=OperatingModeFlag,PARA:=Parameters,
    BUFFER:=SamplesBuffer, TR_I:=InitializationInput,
    TR_S:=InitializationOrder, OUT:=AbsoluteOutput,
    OUTD=>IncrementalOutput,DMO=>DelayedModelOutput,
    MA_O=>CurrentBlockOperatingMode, INFO=>InfoIMC,
    STATUS=>StatusWord);
Description of the input/output parameters IMC
CAUTION
UNEXPECTED BEHAVIOR OF APPLICATION
Do not set the datatype of the PARA input parameter to constant, in the general attributes tab of the Data Properties window.
Failure to follow these instructions can result in injury or equipment damage.
Description of the input parameters:
Parameter
Type
Meaning
PV
Measurement (Process Value)
SP
REAL
Set point
FF
REAL
Feed Forward input (FeedForward)
RCPY
REAL
External input of the model
MAN_AUTO
Operating mode of the corrector:
"1": automatic mode
"0": manual mode
PARA
Internal parameters
BUFFER
ARRAY [n..m] OF REAL
Floating point table containing the input value to be delayed.
TR_I
REAL
Initialization input (tracking)
TR_S
BOOL
Initialization command
Description of the input/output parameters:
Parameter
Type
Meaning
OUT
Analog output of the corrector
Description of the output parameters:
Parameter
Type
Meaning
OUTD
REAL
Differential output: difference between the current cycle output and that of the previous cycle
DMO
REAL
Module output, including delay.
MA_O
Current function block operating mode:
"1": automatic mode
"0": other mode (i.e. manual or tracking)
Info_IMC
REAL
Information
STATUS
Status word
Description of the internal parameters IMC
Description of the internal parameters:
Parameter
Type
Meaning
KS (1)
Static gain of the process in open loop
Default value: 1.0, limits: 0.0/3E38.
OL_TIME(1)
REAL
Time constant of the process in open loop
Default value: 1.0, limits: 0.0/3E38.
CL_PERF
REAL
Relationship of the natural time constants (open loop)/required (closed loop)
Default value: 1.0, limits: 0.0/3E38.
T_DELAY
REAL
Current pure delay time.
Default value: 0.0, limits: 0.0/3E38.
Note: If this value is not a whole sampling period multiple, then it is automatically replaced by the whole sampling period multiple which is immediately below.
DBAND
REAL
Dead band around the deviation.
Default value: 0, limits: 0.0/3E38.
T_ECH
REAL
Sampling period.
Default value: 0,3, limits: 0.0/3E38.
REV_DIR
Direction of action:
"1": direct action
"0": reverse action
En_rcpy
BOOL
"1"= RCPY used (initial value = 0)
Id
Reserved for the automatic control of the controller.
PV_INF
REAL
Low scale of PV PV (default value: 0.0)
PV_SUP
REAL
High scale of PV PV (default value: 100.0)
OUT_INF
REAL
Low scale of output OUT (default value: 0.0)
OUT_SUP
REAL
High scale of output OUT (default value: 100.0)
OUT_MIN
REAL
Low limit of output OUT (default value: 0.0)
OUT_MAX
REAL
High limit of output OUT (default value: 100.0)
OUTRATE
REAL
Velocity limit OUT (default value: 0.0)
FF_INF
REAL
Low scale of Feedforward input (default value: 0.0)
FF_SUP
REAL
High scale of Feedforward input (default value: 100.0)
OTFF_INF
REAL
Low limit of Feedforward input (default value: 0.0)
OTFF_SUP
REAL
High limit of Feedforward input (default value: 100.0)
DEV
REAL
PV-PS deviation
OUT_FF
REAL
Output value of the FF action
(1) KS and OL_TIME can not take the value 0 (inconsistent value). They will be forced to the value 1.0.