blockEnable
Information
The available CHW load QChiWatReq_flow is calculated based on secondary
CHW temperature immediately upstream of the heat recovery chiller,
active CHW supply temperature setpoint and secondary CHW loop flow.
The available HW load QHeaWatReq_flow is calculated based on secondary
HW temperature immediately upstream of the heat recovery chiller,
active HW supply temperature setpoint and secondary HW loop flow.
The available CHW and HW loads used in logic are rolling averages
over a period of dtMea
of instantaneous values sampled at minimum once every 30 s.
The heat recovery chiller is enabled when all of the following are true:
- CHW plant has been enabled for
dtRun. QChiWatReq_flow > capCooHrc_minfordtLoa.- HW plant has been enabled for
dtRun. QHeaWatReq_flow > capHeaHrc_minfordtLoa.- HRC has been disabled for at least
dtRun.
The heat recovery chiller is disabled when any of the following are true:
- CHW plant is disabled.
- HW plant is disabled.
-
The heat recovery chiller cycles off (chiller is enabled but status changes from Run to Off)
under low load conditions and either
QChiWatReq_flow < capCooHrc_minorQHeaWatReq_flow < capHeaHrc_min. -
If the HRC is in heating mode and CHW supply temperature leaving the
heat recovery chiller as measured either through the chiller’s network interface
or immediately downstream of the chiller is
< TChiWatSupSet_min + 1fordtTem1or< TChiWatSupSet_minfordtTem2. -
If the HRC is in cooling mode and HW supply temperature leaving the
heat recovery chiller as measured either through the chiller’s network interface
or immediately downstream of the chiller is
> THeaWatSupSet_max - 1.5fordtTem1or> THeaWatSupSet_maxfordtTem2.
Pump control
Sidestream HRC HW and CHW pumps are enabled when the heat recovery chiller is enabled.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real | dtRun | 15*60 | Minimum runtime of enable and disable states |
| Real | dtLoa | 10*60 | Runtime with sufficient load before enabling |
| Real | dtTem1 | 3*60 | Runtime with first temperature threshold exceeded before disabling |
| Real | dtTem2 | 1*60 | Runtime with second temperature threshold exceeded before disabling |
| Information provided by designer | |||
| Real | TChiWatSup_min | Minimum allowable CHW supply temperature | |
| Real | THeaWatSup_max | Maximum allowable HW supply temperature | |
| Real | capCoo_min | Minimum cooling capacity below which cycling occurs | |
| Real | capHea_min | Minimum heating capacity below which cycling occurs | |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | u1Coo | Cooling plant enable | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | u1Hea | Heating plant enable | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | u1Hrc_actual | HRC status | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | QChiWatReq_flow | CHW load | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | QHeaWatReq_flow | HW load | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TChiWatHrcLvg | HRC leaving CHW temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | THeaWatHrcLvg | HRC leaving HW temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | u1CooHrc | HRC control mode command: true for cooling, false for heating | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput | y1 | Enable command | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput | y1SetMod | Enable mode setting |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Logical.Pre | preEna | Left limit (in discrete-time) of enable signal | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timCooEna | Return true if cooling plant has been enabled for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Not | dis | Return true if disabled | |
| Buildings.Controls.OBC.CDL.Logical.Timer | runDis | Return true if system has been disabled for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timHeaEna | Return true if heating plant has been enabled for specified duration | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold | higLoaCoo | Compare CHW load to cycling limit (hysteresis is to avoid chattering with some simulators) | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold | higLoaHea | Compare HW load to cycling limit (hysteresis is to avoid chattering with some simulators) | |
| Buildings.Controls.OBC.CDL.Reals.LessThreshold | lowTChiWatLvg1 | Return true if first temperature limit exceeded | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold | higTHeaWatLvg1 | Return true if first temperature limit exceeded | |
| Buildings.Controls.OBC.CDL.Reals.GreaterThreshold | higTHeaWatLvg2 | Return true if second temperature limit exceeded | |
| Buildings.Controls.OBC.CDL.Reals.LessThreshold | lowTChiWatLvg2 | Return true if second temperature limit exceeded | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timTHeaWatLvg1 | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timTHeaWatLvg2 | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timTChiWatLvg1 | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timTChiWatLvg2 | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timLoaCoo | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.Timer | timLoaHea | Return true if threshold exceeded for specified duration | |
| Buildings.Controls.OBC.CDL.Logical.MultiAnd | allEna | All enable conditions met | |
| Buildings.Controls.OBC.CDL.Logical.MultiOr | anyDis | Any disable condition met | |
| Buildings.Controls.OBC.CDL.Logical.Not | disCoo | Return true if cooling plant disabled | |
| Buildings.Controls.OBC.CDL.Logical.Not | disHea | Return true if heating plant disabled | |
| Buildings.Controls.OBC.CDL.Reals.LessThreshold | lowLoaCoo | Compare CHW load to cycling limit (hysteresis is to avoid chattering with some simulators) | |
| Buildings.Controls.OBC.CDL.Reals.LessThreshold | lowLoaHea | Compare HW load to cycling limit (hysteresis is to avoid chattering with some simulators) | |
| Buildings.Controls.OBC.CDL.Logical.Or | anyLowLoa | Any low load condition met | |
| Buildings.Controls.OBC.CDL.Logical.FallingEdge | off | Return true when HRC cycles off | |
| Buildings.Controls.OBC.CDL.Logical.And | anyLowLoaAndOff | Any low load condition met and HRC cycles off | |
| Buildings.Controls.OBC.CDL.Logical.And | enaAndCoo | HRC enabled in cooling mode | |
| Buildings.Controls.OBC.CDL.Logical.And | enaAndHea | HRC enabled in heating mode | |
| Buildings.Controls.OBC.CDL.Logical.Not | hea | True if heating control mode | |
| Buildings.Controls.OBC.CDL.Logical.Or | anyTChiWatLvg | Any leaving CHW temperature condition met | |
| Buildings.Controls.OBC.CDL.Logical.Or | anyTHeaWatLvg | Any leaving HW temperature condition met | |
| Buildings.Controls.OBC.CDL.Logical.And | anyTChiWatLvgAndHea | Any leaving CHW temperature condition met and HRC enabled in heating mode | |
| Buildings.Controls.OBC.CDL.Logical.And | anyTHeaWatLvgAndCoo | Any leaving HW temperature condition met and HRC enabled in cooling mode | |
| Buildings.Controls.OBC.CDL.Logical.Latch | enaDis | Maintain true signal until disable condition met | |
| Buildings.Controls.OBC.CDL.Logical.TrueDelay | truDel | Delay so that mode setting is enabled prior to enabling the HRC | |
| Buildings.Controls.OBC.CDL.Logical.Edge | edg | Enable mode setting just before enabling the HRC |
Revisions
-
May 31, 2024, by Antoine Gautier:
First implementation.