Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers
Package of sequences for cooling tower control
Information
This package contains sequences for cooling tower control. The implementation is based on section 5.20.12 in ASHRAE Guideline 36-2021.
Package Content
| Name | Description |
|---|---|
| Cooling tower controller | |
| Sequences to control water level in cooling tower | |
| Package of sequences for cooling tower fan speed control | |
| Package of sequences for cooling tower staging | |
| Collection of validation models |
Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers.Controller
Cooling tower controller
Information
Block that controls the cooling tower cells enabling status yTowSta,
the supply isolation valve positions yIsoVal of each cell and the
cell fan operating speed ySpeSet.
This is implemented according to ASHRAE Guideline 36-2021, section 5.20.12.
The section specifies sequences to control the cooling tower.
It includes three subsequences:
- Sequence of controlling tower fan speed, see Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers.FanSpeed.Controller for a description. Note that in current implementation, the fan speed is controlled to maintain the condenser water return temperature at the setpoint.
- Sequence of cooling tower staging, see Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers.Staging.Controller for a description. Note that the sequence assumes that the cells are enabled in order as it is labelled, meaning that it enables the cells as cell 1, 2, 3, etc.
- Sequence of tower make-up water valve control, see Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers.WaterLevel for a description.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| HeadPressureControl | chiHeaPreCon | Buildings.Controls.OBC.ASHRA... | Chiller head pressure controlled type |
| Integer | nChi | 2 | Total number of chillers |
| Integer | nPlaSta | 5 | Total number of plant stages, including stage zero and the stages with a WSE, if applicable |
| Integer | nTowCel | 2 | Total number of cooling tower cells |
| Integer | nConWatPum | 2 | Total number of condenser water pumps |
| TowerSpeedControl | fanSpeCon | Buildings.Controls.OBC.ASHRA... | Tower fan speed control type |
| Boolean | closeCoupledPlant | false | True: the plant is close coupled, i.e. the pipe length from the chillers to cooling towers does not exceed approximately 100 feet |
| Boolean | have_WSE | true | Flag to indicate if the plant has waterside economizer |
| Nominal | |||
| Real | desCap | 1e6 | Plant design capacity [W] |
| Real | fanSpeMin | 0.1 | Minimum tower fan speed |
| Fan speed | |||
| WSE enabled | |||
| Real | chiMinCap[nChi] | {1e4,1e4} | Minimum cyclining load below which chiller will begin cycling [W] |
| SimpleController | intOpeCon | Buildings.Controls.OBC.CDL.T... | Controller in the mode when WSE and chillers are enabled |
| Real | kIntOpe | 1 | Gain of controller |
| Real | TiIntOpe | 0.5 | Time constant of integrator block [s] |
| Real | TdIntOpe | 0.1 | Time constant of derivative block [s] |
| SimpleController | chiWatCon | Buildings.Controls.OBC.CDL.T... | Controller in the mode when only WSE is enabled |
| Real | kWSE | 1 | Gain of controller |
| Real | TiWSE | 0.5 | Time constant of integrator block [s] |
| Real | TdWSE | 0.1 | Time constant of derivative block [s] |
| Return temperature control | |||
| Real | minChiLif[nChi] | {12,12} | Minimum LIFT of each chiller [K] |
| Real | TConWatSup_nominal[nChi] | {293.15,293.15} | Condenser water supply temperature (condenser entering) of each chiller [K] |
| Real | TConWatRet_nominal[nChi] | {303.15,303.15} | Condenser water return temperature (condenser leaving) of each chiller [K] |
| Real | TChiWatSupMin[nChi] | {278.15,278.15} | Lowest chilled water supply temperature oc each chiller [K] |
| SimpleController | couPlaCon | Buildings.Controls.OBC.CDL.T... | Type of coupled plant controller |
| Real | kCouPla | 1 | Gain of controller |
| Real | TiCouPla | 0.5 | Time constant of integrator block [s] |
| Real | TdCouPla | 0.1 | Time constant of derivative block [s] |
| Real | yCouPlaMax | 1 | Upper limit of output |
| Real | yCouPlaMin | 0 | Lower limit of output |
| Real | samplePeriod | 30 | Period of sampling condenser water supply and return temperature difference [s] |
| SimpleController | supWatCon | Buildings.Controls.OBC.CDL.T... | Condenser supply water temperature controller for less coupled plant |
| Real | kSupCon | 1 | Gain of controller |
| Real | TiSupCon | 0.5 | Time constant of integrator block [s] |
| Real | TdSupCon | 0.1 | Time constant of derivative block [s] |
| Real | ySupConMax | 1 | Upper limit of output |
| Real | ySupConMin | 0 | Lower limit of output |
| Advanced | |||
| Real | speChe | 0.005 | Lower threshold value to check fan or pump speed |
| Real | iniPlaTim | 600 | Time to hold return temperature at initial setpoint after plant being enabled [s] |
| Real | ramTim | 180 | Time to ramp return water temperature from initial value to setpoint [s] |
| Real | cheMinFanSpe | 300 | Threshold time for checking duration when tower fan equals to the minimum tower fan speed [s] |
| Real | cheMaxTowSpe | 300 | Threshold time for checking duration when any enabled chiller maximum cooling speed equals to the minimum tower fan speed [s] |
| Real | cheTowOff | 60 | Threshold time for checking duration when there is no enabled tower fan [s] |
| Tower staging | |||
| Nominal | |||
| Real | staVec[nPlaSta] | {0,0.5,1,1.5,2} | Plant stage vector, element value like x.5 means chiller stage x plus WSE |
| Integer | towCelOnSet[nPlaSta] | {0,1,1,2,2} | Design number of tower fan cells that should be enabled, according to current chiller stage and WSE status |
| Isolation valves | |||
| Boolean | have_inlIsoVal | true | True: tower cells have the inlet isolation valve |
| Boolean | have_outIsoVal | false | True: tower cells have the outlet isolation valve |
| Boolean | have_endSwi | false | True: tower cells isolatiove valve have the end switch feedback |
| Real | chaTowCelIsoTim | 90 | Nominal time needed for open isolation valve of the tower cells |
| Makeup water | |||
| Real | watLevMin | 0.7 | Minimum cooling tower water level recommended by manufacturer [m] |
| Real | watLevMax | 1 | Maximum cooling tower water level recommended by manufacturer [m] |
Connectors
| Type | Name | Description |
|---|---|---|
| input RealInput | uChiLoa | Current cooling load [W] |
| input BooleanInput | uChi[nChi] | Vector of chiller proven on status: true=ON |
| input BooleanInput | uWse | Waterside economizer proven on status: true=ON |
| input RealInput | TChiWatSup | Chilled water supply temperature [K] |
| input RealInput | TChiWatSupSet | Chilled water supply temperature setpoint [K] |
| input RealInput | reqPlaCap | Current required plant capacity [W] |
| input RealInput | uMaxSpeSet[nChi] | Maximum cooling tower speed setpoint from each chiller head pressure control loop [1] |
| input BooleanInput | uTowSta[nTowCel] | Vector of tower cell proven on status: true=running tower cell |
| input BooleanInput | uPla | Plant enabling status |
| input RealInput | TConWatRet | Condenser water return temperature (condenser leaving) [K] |
| input BooleanInput | uConWatPum[nConWatPum] | Current condenser water pump status |
| input RealInput | TConWatSup | Condenser water supply temperature (condenser entering) [K] |
| input BooleanInput | uEnaPla | True: plant is just enabled |
| input IntegerInput | uChiSta | Current chiller stage |
| input IntegerInput | uChiStaSet | Chiller stage setpoint |
| input BooleanInput | uTowStaCha | Cooling tower stage change command from plant staging process |
| input BooleanInput | u1InlIsoValOpe[nTowCel] | Tower cells inlet isolation valve open end switch. True: the isolation valve is fully open |
| input BooleanInput | u1OutIsoValOpe[nTowCel] | Tower cells outlet isolation valve open end switch. True: the isolation valve is fully open |
| input BooleanInput | u1InlIsoValClo[nTowCel] | Tower cells inlet isolation valve close end switch. True: the isolation valve is fully closed |
| input BooleanInput | u1OutIsoValClo[nTowCel] | Tower cells outlet isolation valve close end switch. True: the isolation valve is fully closed |
| input RealInput | watLev | Measured water level [m] |
| output RealOutput | yLifMax | Maximum LIFT among enabled chillers [K] |
| output RealOutput | yLifMin | Minimum LIFT among enabled chillers [K] |
| output RealOutput | TConWatRetSet | Condenser water return temperature setpoint [K] |
| output RealOutput | TConWatSupSet | Condenser water supply temperature setpoint [K] |
| output BooleanOutput | yLeaCel | Lead tower cell status setpoint |
| output BooleanOutput | y1IsoVal[nTowCel] | Cooling tower cells isolation valve position |
| output BooleanOutput | yTowSta[nTowCel] | Vector of tower cells status setpoint |
| output RealOutput | ySpeSet | Fan speed setpoint for enabled cell [1] |
| output BooleanOutput | yMakUp | Makeup water valve On-Off status |
Modelica definition
Buildings.Controls.OBC.ASHRAE.G36.Plants.Chillers.Towers.WaterLevel
Sequences to control water level in cooling tower
Information
Block that outputs yMakUp to control the cooling tower make-up water
valve. It is implemented according to ASHRAE Guideline 36-2021,
section 5.20.13, tower make-up water.
Make-up water valve shall cycle based on tower water fill level sensor. The
valve shall open when the water level watLev falls below the minimum
fill level watLevMin recommended by the tower manufacturer. It
shall close when the water level goes above the maximum level watLevMax.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real | watLevMin | Minimum cooling tower water level recommended by manufacturer | |
| Real | watLevMax | Maximum cooling tower water level recommended by manufacturer |
Connectors
| Type | Name | Description |
|---|---|---|
| input RealInput | watLev | Measured water level |
| output BooleanOutput | yMakUp | Makeup water valve On-Off status |