BAC_AC_PreHtr_PID_01
Functional description
The subtemplate BAC_AC_PreHtr_PID_01 is the sequence controller for a preheater.
The set value, actual value and control output are referenced via the BACnet value objects X, W and Y.
The PID sequence controller is enabled based on the plant operation mode udiOpMod and the global temperature communication structure g_stSeqLinkT[PLT_NUM].
This data and command structure is the link between the individual sequence controllers and the corresponding control function block FB_BA_SeqLink of a plant.
The BACnet BV object En is used to display the controller enable.
The limit value monitoring of PID controller is controlled by the function block EnEvtEn as a function of the plant startup process.
In dehumidification mode bDeHum = TRUE, the PID sequence controller is disabled.
Interface
System diagram
Block diagram
VAR_INPUT
rX : REAL;
rW : REAL;
bSync : BOOL;
rFdbVlv : REAL;
bDeHum : BOOL;
udiPltStp : UDINT;
udiOpMod : UDINT;
rX: Measured value supply air temperature
rW: Set value of the supply air temperature
bSync: Input for synchronisation of the controller
rFdbVlv: Position feedback actuator
bDeHum: Dehumidification active, supply air temperature controller disabled.
udiPltStp: Steps during startup of the air-conditioning plant. See also BAC_AC_StartT_01
udiOpMod: Plant operation mode. See also BAC_AC_OpMod_01
VAR_OUTPUT
rY : REAL;
rY: Control value output control valve
VAR CONSTANT
PLT_NUM : BYTE := 1;
PLT_NUM: all alarms and events of all plant components within a controller are included in a global alarm and event list. The assignment of events and alarms to a plant is defined by the assignment of a PLT_NUM plant number.
The recording and processing of an alarm from an aggregate or a device takes place within the templates by means of the alarm function block FB_BA_Alarm.
The evaluation of the alarms of a plant, e.g. for the generation of a collective message or for plant shutdown in case of relevant faults, takes place within the template BAC_PltAlm_01 by means of the function block FB_BA_AlarmPlt.
The evaluation of different plant events within the templates of a plant, takes place within the template BAC_PltComnMsg_01 by means of the function block FB_BA_ComnMsg.
Important! The assignment and evaluation of the alarms and events of a plant can only be done correctly if all templates of a plant have the same plant number!
Within a ventilation system with sequence controller the plant number indicates which field from the global data structure g_stSeqLinkT[PLT_NUM] is used as link between the individual sequence controllers and the corresponding control function blockFB_BA_SeqLink.
The plant number can be assigned in the Project Builder in the parameter menu for the templates or via a column in the Excel import.
Program description
Instance | Type | Task | |||
---|---|---|---|---|---|
X | The AV object is referenced to the actual value input of the BACnet loop object | ||||
W | The AV object is referenced to the setpoint input of the BACnet loop object | ||||
OpModPrio | The multiplexer defines the enable conditions of the sequence controller depending on the plant operation mode. | ||||
udiOpMod | Enable | Comment | |||
Manual on | TRUE | The plant is switched on manually via the plant selector switch | |||
On | TRUE | The plant runs in automatic mode via the timer program | |||
Support operation, cooling protection | TRUE | The plant operates in cooling protection mode | |||
En | The BV object is used to display and activate the controller enable in the MCL or in a local operating display. | ||||
AND | The AND function block locks the enable of the sequence controller in dehumidification mode. Switching from preheater to reheater is done in the template BAC_AC_SeqT_01 by the sequence linker. | ||||
EnEvtEn | The BACnet loop object PID monitors the control function by comparing the setpoint W with the actual value X. If the deviation W-X is greater than the property ErrorLimit, then the loop object sends a message to the MCL. | ||||
| F_BA_EvtTrans | writes to the BACnetEventTransitionBits to_offnormal, to_fault and to_normal of the loop object. The input bEnEvtEn must be TRUE | |||
PID | Sequence controller supply air temperature preheater. | ||||
rtrigSync | R_TRIG | A rising edge at input bSync triggers synchronization of the loop object to the value of lrSync. | |||
Y | The AV object is referenced to the control value output of the BACnet loop object |
Version history
Version number | Comments |
---|---|
1.0.1 | First release |