BAC_AC_MixAT_PID_01
Functional description
The sub template BAC_AC_MixAT_PID_01 is a supply air temperature sequence controller for energy recovery.
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.
The main tasks of the template are:
- Control of the supply air temperature
- Plant startup through slow opening of the outside and exhaust air damper.
Interface
System diagram
Block diagram
Direction of action
The direction of action of the PID sequence controller is selected based on a comparison of the outlet air temperature with the extract air temperature.
The logic of the direction of action relates to the outside air damper DmpOuA.
If the extract air temperature is higher than the outside air temperature, the direction of action of the PID controller is direct (cooling mode)
If the extract air temperature is lower than the outside air temperature, the direction of action of the PID controller is reverse (heating mode)
Control information
A minimum outside air percentage must be set at the property MinimumOutput of the BACnet loop object!
VAR_INPUT
rX : REAL;
rW : REAL;
bSync : BOOL;
rFdb : REAL;
rExtAT : REAL;
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
rFdb: Position feedback outside air damper
rExtAT: Measured value outlet air temperature
udiPltStp: Steps during startup of the air-conditioning plant. See also BAC_AC_StartT_01
udiOpMode: Plant operation mode. See also BAC_AC_OpMod_01
VAR_OUTPUT
rY : REAL;
rY: Control value output
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 | ||||
RampTi | Input of the ramp time for a ramp function, during which the outside and exhaust air damper opens and the recirculating air damper closes very slowly during the start phase of the ventilation system. | ||||
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 | |||
En | The BV object is used to display the sequence controller enable in the MCL. | ||||
Actn | FB_BA_Swi2P | The function block FB_BA_Swi2P determines the control direction of the sequence controller. | |||
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. | ||||
rtrigSync | R_TRIG | A rising edge at input bSync triggers synchronization of the loop object to the value of lrSync. | |||
| 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 mixed air damper control | ||||
Y | The AV object is referenced to the control value output of the BACnet loop object | ||||
rtrigRamp | R_TRIG | During the start phase of the ventilation system this network of functions activates the ramp function. | |||
RampFnct | The ramp function is used to open the outside and exhaust air dampers very slowly during plant startup. The ramp function is started only at critical outside temperatures below 6°C . | ||||
| SEL, MIN | The result of this network is the control value for the mixed air dampers. |
Version history
Version number | Comments |
---|---|
1.0.1 | First release |