Function Block Description - PumpPidStag
The PumpPidStag function block consists of a PID function and a stage / destage pumping management function to execute the following tasks:
ogenerating a PID control value. This value is used for the speed reference for the VSDs.
ogenerating a pump demand stage value
The table describes the input/output variables of the function block:
Input/Output |
Data Type |
Description |
---|---|---|
iq_stAlrmCtrl |
stAlrmCtrl |
Structure used for alarm handling. Refer to the structure data type description. |
iq_stOpMode |
stOpMode |
Determines the operating modes. If the element xAuto of the stOpMode structure data type is set to TRUE, the function block executes its tasks automatically. With another status of this element, the outputs of this function block are set to their defined fallback (default) states. If the element xPidMan of this structure data type is set to TRUE, it is allowed to enter a user-defined setpoint manually. If the element xFill of this structure data type is set to TRUE, the PID function is disabled if the pipe fill function is running in sequence 1. In this case the iq_stFillDevInit parameters are used to set the output pins q_stRef_CtrlVal.stRef and q_stStagVal.siStag. Refer to the structure data type description. |
iq_stPidInit |
stPidInit |
Structure used for initialization data of the PID control function. Refer to the structure data type description. |
iq_stStagInit |
stStagInit |
Structure used for initialization data of the stage function based on pressure. Refer to the structure data type description. |
iq_stFillDevInit |
stFillDevInit |
Structure used for initialization data if sequence 1 of the pipe fill mode is active. Refer to the structure data type description. |
iq_stFlowStagInit |
stFlowStagInit |
Structure used for initialization data of the stage function based on flow. Refer to the structure data type description. |
The table describes the input variables to the function block:
Input |
Data Type |
Description |
---|---|---|
i_xRele |
BOOL |
Activate (TRUE) or stops (FALSE) the execution of the function block. |
i_esiStag |
esiStag |
Activates the stage function and which method is selected: oi_esiStag = esiStag.Off: stage function deactivated (default value) oi_esiStag = esiStag.Stage: stage method by using only the pressure to generate the stage value is activated oi_esiStag = esiStag.Flow: stage method by using additionally the flow value is activated |
i_rSp |
REAL |
Contains the user-defined pressure setpoint that can be adapted by other functions (compensation functions or the cavitation protection function). |
i_stDiscPres |
stDiscPres |
Contains the analog pressure input value provided by the AnaIput function block, and contains an optional pressure value from a second pressure sensor, if available in your system. Refer to the stDiscPres structure data type description. |
i_rManSp |
REAL |
Contains the pressure setpoint that has been entered manually by the operator. This parameter is only taken into account if the pumping application is operated in PID manual mode (stOpMode.xPidMan = TRUE). |
i_stFillSta |
stFillStat |
Structure that indicates the states of the pipe fill function. The PID control and stage functions of the PumpPidStag function block are disabled if the pipe fill function is running in sequence 1 (xSequ1 = TRUE) because, in this case, a defined number of pumps is used at a fixed speed. If the pipe fill function has set the flag in the stFillSta structure to xFillOK, or if it is running in sequence 2 (xSequ2 = TRUE), then the PID control, if released, enables the stage functions of the PumpPidStag function block. Otherwise the PID function including the stage function is disabled. |
i_stAna_Flow |
stAna |
Contains the flow value and its status. This input is only considered if the stage function based on flow is activated (input i_esiStag = Flow or i_esiStag = 2). Refer to the structure data type description. |
i_xParaChg |
BOOL |
When TRUE, the new parameter values are used (mapping into internal variables after a valid verification). |
i_xResSwcPrcs |
BOOL |
When TRUE, the counter of switching cycles (output q_auiTbl24hSwcPrcs) is reset to 0. |
i_xFlowStageEn |
BOOL |
When TRUE, at least 2 VSDs and corresponding VS pumps are available. This means that the stage function based on flow is available. When FALSE, an insufficient number of VSDs / VS pumps is available. The stage function based on pressure is applied. The stage function based on flow is not allowed. |
The table describes the output variables from the function block:
Output |
Data Type |
Description |
---|---|---|
q_xActv |
BOOL |
When TRUE, indicates that the PID function is active. |
q_stRef_CtrlVal |
stRef |
Structure that indicates the PID control value and the state of this value. Refer to the structure data type description. |
q_stPidFbck_Hmi |
stPidFbck |
Structure that is used to display the values of the different PID components on the HMI. Refer to the structure data type description. |
q_stPidSta_Hmi |
stPidSta |
Structure that is used to display the status of the PID function on the HMI. Refer to the structure data type description. |
q_stPidStagSta_Hmi |
stPidStagSta |
Structure that is used to display the status of the stage function on the HMI. Refer to the structure data type description. |
q_stPidErr |
stPidErr |
Structure that indicates the alarm and alert states detected in the PID function of the PumpPidStag function block. Refer to the structure data type description of alarms and alerts. |
q_stPidStagErr |
stPidStagErr |
Structure that indicates the alarm and alert states detected in the stage function of the PumpPidStag function block. Refer to the structure data type description of alarms and alerts. |
q_auiTbl24hSwcPrcs |
ARRAY [0..23] of UINT |
Contains counters indicating the number of switching cycles (pump on/off) per hour. The hour value (24-hour value) of the controller is used as a pointer to this 24-hour array. The 24-hour array is used as a circular buffer. NOTE: For example, after 48 hours, one hour value contains the switching value of 2 days. You can use this value to optimize the configuration of your system to reduce the number of switching cycles while maintaining the user-defined pressure. NOTE: This function is reserved to controllers that maintain a system clock. |
q_rSpAct |
REAL |
Contains the present setpoint to display on the HMI. |
q_stStagVal |
stStagVal |
Structure that indicates the number of pumps needed (demand) to maintain the user-defined pressure level. Refer to the structure data type description. |