FB_CTRL_SPLITRANGE
This function block divides an input signal into positive and negative components. The parameters bDisablePosOut and bDisableNegOut can be used to deactivate the positive or negative output ? Heating operation only in winter, cooling operation only in summer. The bInvertNegOutput parameter allows the native output to be inverted.
Description of the output behaviour:
VAR_INPUT
VAR_INPUT
fIn : FLOAT;
END_VAR
fIn : Input value for the function block.
VAR_OUTPUT
VAR_OUTPUT
fOutPos : FLOAT;
fOutNeg : FLOAT;
bOutPosIsActive : BOOL;
bOutNegIsActive : BOOL;
eErrorId : E_CTRL_ERRORCODES;
bError : BOOL;
END_VAR
fOutPos : Positive part of fIn.
fOutNeg : Negative part of fIn.
bOutPosIsActive : TRUE indicates that fIn > 0.0,
bOutNegIsActive : TRUE indicates that fIn < 0.0,
eErrorId : Supplies the error number when the bError output is set.
bError : Becomes TRUE, as soon as an error occurs.
VAR_IN_OUT
VAR_IN_OUT
stParams : ST_CTRL_SPLITRANGE_PARAMS;
END_VAR
stParams : Parameter structure of the function block. This consists of the following elements:
TYPE
ST_CTRL_SPLITRANGE_PARAMS:
STRUCT
tCtrlCycleTime : TIME := T#0ms; (*
controller cycle time [TIME] *)
tTaskCycleTime : TIME := T#0ms; (* task
cycle time [TIME] *)
bInvertNegOutput : BOOL;
bDisablePosOut : BOOL;
bDisableNegOut : BOOL;
END_STRUCT
END_TYPE
tCtrlCycleTime : Cycle time with which the control loop is processed. This must be greater than or equal to the TaskCycleTime. The function block uses this input value to calculate internally whether the state and the output values have to be updated in the current cycle.
tTaskCycleTime : Cycle time with which the function block is called. If the function block is called in every cycle this corresponds to the task cycle time of the calling task.
bInvertNegOutput : fOutNeg is inverted when this parameter is TRUE.
bDisablePosOut : The output fOutPos is disabled and always 0.0.
bDisableNegOut : The output fOutNeg is disabled and always 0.0.