blockValveCondenserEvaporator

Controller for chiller and HRC condenser and evaporator valves

Information

This block implements the control logic for the chiller isolation valves, the HRC isolation and switchover valves, the CHW and HW minimum flow bypass valves, the HRC evaporator CW mixing valve, and the CW chiller bypass valve. It also computes the lead pump Enable signal for the CHW, HW, CWC and CWE pump groups.

Chiller evaporator isolation valve

When a chiller is enabled, the valve position is controlled as follows.

  • If no HRC is concurrently operating and connected to the CHW loop, the valve is commanded to a fully open position,
  • If any HRC is concurrently operating in cascading cooling mode, but no HRC is in direct heat recovery mode, the valve is commanded to a fixed position ensuring flow balancing proportionally to design flow.
  • If any HRC is concurrently operating in direct heat recovery mode, the valve is modulated with a control loop tracking an evaporator flow setpoint which is reset as described hereunder. The loop output is mapped to a valve position of 10 % (resp. 100 %) at 0 % (resp. 100 %) output signal. The loop is biased to launch from 100 %.

Otherwise, the valve is commanded to a closed position.

Chiller evaporator flow setpoint

The setpoint is computed based on the logic implemented in Buildings.DHC.Plants.Combined.Controls.BaseClasses.DirectHeatRecovery.

Chiller condenser isolation valve

When a chiller is enabled, the condenser isolation valve is modulated with a control loop tracking a condenser flow setpoint which is reset as described hereunder. The loop output is mapped to a valve position of 10 % (resp. 100 %) at 0 % (resp. 100 %) output signal. The loop is biased to launch from 100 %.

Otherwise, the valve is commanded to a closed position.

Chiller condenser flow setpoint

The condenser flow setpoint varies based on the condenser loop mode and on the tank cycle index.

  • When the condenser loop mode is Charge Assist, a control loop maintains the condenser loop return temperature at a target setpoint equal to the highest temperature setpoint of the active tank cycle. The loop output is mapped to a flow setpoint of 10 % (resp. 100 %) of design flow at 0 % (resp. 100 %) output signal. The loop is biased to launch from 20 %.
  • When the condenser loop mode is Tank Charge/Discharge, a control loop maintains the chiller condenser leaving temperature at target setpoint equal to the highest temperature setpoint of the active tank cycle. The loop output is mapped to a flow setpoint of 5 % (resp. 100 %) of design flow at 0 % (resp. 100 %) output signal. The loop is biased to launch from 50 %.
  • When the condenser loop mode is Heat Rejection, the condenser flow setpoint is set at design value.

HRC evaporator isolation valve

When a HRC is enabled, the valve position is controlled as follows.

  • If the HRC is operating in cascading cooling mode, the valve is commanded to a fixed position ensuring flow balancing proportionally to design flow.
  • If the HRC is operating either in cascading heating mode or in direct heat recovery mode, the valve is modulated with a control loop tracking an evaporator flow setpoint which is reset as described hereunder. The loop output is mapped to a valve position of 10 % (resp. 100 %) at 0 % (resp. 100 %) output signal. The loop is biased to launch from 100 %.

Otherwise, the valve is commanded to a closed position.

HRC evaporator flow setpoint

In direct heat recovery mode, the setpoint is reset based on the logic implemented in Buildings.DHC.Plants.Combined.Controls.BaseClasses.DirectHeatRecovery.

In cascading heating mode, the setpoint is reset with a control loop that maintains the evaporator leaving temperature at target setpoint equal to the lowest temperature setpoint of the active tank cycle. The loop output is mapped as follows. From 0 % to 50 %, the HRC evaporator CW mixing valve commanded position is reset from 0 % (full bypass flow) to 100 % (no bypass flow). From 50 % to 100 %, the evaporator flow setpoint is reset from minimum to design value. The loop is biased to launch from 75 %. When disabled, the loop output is set to 75 % to ensure that the HRC evaporator CW mixing valve is fully open (no bypass flow).

HRC condenser isolation valve

When a HRC is enabled, the valve position is controlled as follows.

  • If the HRC condenser is indexed to the HW loop (cascading heating or direct heat recovery mode), the valve is commanded to a fully open position.
  • If the HRC condenser is indexed to the CW loop (cascading cooling mode), the valve is modulated with a control loop tracking a condenser flow setpoint which is reset based on the same logic as for the chiller condenser flow setpoint (see above). The loop output is mapped to a valve position of 10 % (resp. 100 %) at 0 % (resp. 100 %) output signal. The loop is biased to launch from 100 %.

Otherwise, the valve is commanded to a closed position.

HRC condenser and evaporator switchover valve

Each valve is commanded to a fully open or fully closed position depending on the valve index and the current operating mode of the HRC (cascading cooling, cascading heating or direct heat recovery). In addition, the condenser switchover valve indexed to the HRC which is nearest to the interconnection with the condenser loop (highest index) and which is operating in direct heat recovery mode is modulated with a control loop tracking the condenser entering temperature. The condenser entering temperature setpoint is reset based on the logic implemented in Buildings.DHC.Plants.Combined.Controls.BaseClasses.DirectHeatRecovery. This allows false loading the HRC that is controlled to meet the HW supply temperature setpoint in direct heat recovery mode, and thus meeting the CHW supply temperature setpoint simultaneously.

HRC evaporator CW mixing valve

The valve is modulated based on two control loops: the HRC evaporator leaving temperature control loop (see the section HRC evaporator flow setpoint) and another control loop that maintains the HRC evaporator entering water temperature below the highest tank temperature setpoint. This latter control loop is enabled when any HRC is operating in cascading heating mode. When the loop is enabled, the loop output is mapped to a valve position of 100 % (resp. 0 %) at 0 % (resp. 100 %) output signal. When the loop is disabled, the loop output is set to 100 % (no bypass flow). The valve control signal is the minimum (maximum bypass flow) of the resulting signals of those two control loops.

CHW and HW minimum flow bypass valve

Each chiller and HRC has its own CHW (resp. HW) minimum flow control loop. The loop is enabled whenever the unit's evaporator (resp. condenser) is indexed to the CHW (resp. HW) loop and its evaporator (resp. condenser) isolation valve is commanded open (with a threshold of 10 %). When enabled, each loop tracks a flow setpoint equal to 1.1 times the minimum CHW (resp. HW) flow rate. When disabled, each loop output is set to 0 %. The valve control signal is the maximum (maximum bypass flow) of the resulting signals of all control loops.

CW chiller bypass valve

The valve control is enabled when the plant is enabled either in cooling or heating mode, the Charge Assist mode is active and all chiller condenser isolation valves are closed (based on their commanded position).

When the valve control is enabled the valve position is modulated by the same control loop used to maintain the condenser loop return temperature at a target setpoint equal to the highest temperature setpoint of the active tank cycle (see the section "Chiller condenser flow setpoint").

Otherwise, the valve is commanded to a closed position.

CHW, HW, CWC, CWE lead pump

The lead pump of each loop is enabled whenever any chiller or HRC is indexed to the loop and the corresponding evaporator or condenser isolation valve is commanded open (with a threshold of 10 %). In addition, the CWC lead pump may also be enabled if the CW chiller bypass valve is commanded open.

Parameters

TypeNameDefaultDescription
RealyBalEvaChiif dpEvaChiHea_nominal + dpValEvaChiHea_nominal - dpEvaChi_nominal <= 0 then 1 else (dpValEvaChi_nominal/(dpEvaChiHea_nominal + dpValEvaChiHea_nominal - dpEvaChi_nominal))^0.5Chiller evaporator isolation valve opening for flow balancing with HRC
RealyBalEvaChiHeaif dpEvaChi_nominal + dpValEvaChi_nominal - dpEvaChiHea_nominal <= 0 then 1 else (dpValEvaChiHea_nominal/(dpEvaChi_nominal + dpValEvaChi_nominal - dpEvaChiHea_nominal))^0.5HRC evaporator isolation valve opening for flow balancing with chiller
CHW loop and cooling-only chillers
IntegernChiNumber of units operating at design conditions
RealmChiWatChi_flow_nominalChiller CHW design mass flow rate (value will be used for each unit)
RealmChiWatChi_flow_minChiller CHW minimum mass flow rate (value will be used for each unit)
RealmConWatChi_flow_nominalChiller CW design mass flow rate (value will be used for each unit)
RealdpEvaChi_nominalChiller evaporator design pressure drop (value will be used for each unit)
RealdpValEvaChi_nominalChiller evaporator isolation valve design pressure drop (value will be used for each unit)
HW loop and heat recovery chillers
IntegernChiHeaNumber of units operating at design conditions
RealmChiWatChiHea_flow_nominalHRC CHW design mass flow rate (value will be used for each unit)
RealmChiWatChiHea_flow_minHRC CHW minimum mass flow rate (value will be used for each unit)
RealmConWatChiHea_flow_nominalHRC CW design mass flow rate (value will be used for each unit)
RealmHeaWatChiHea_flow_minChiller HW minimum mass flow rate (value will be used for each unit)
RealdpEvaChiHea_nominalDesign chiller evaporator pressure drop (value will be used for each unit)
RealdpValEvaChiHea_nominalHRC evaporator isolation valve design pressure drop (value will be used for each unit)
CW loop, TES tank and heat pumps
Real[2,2]TTanSetTank temperature setpoints: 2 cycles with 2 setpoints
Control parameters
Realk0.01Gain of controller
RealTi60Time constant of integrator block
RealyMin0.1Lower limit of valve opening when control loop enabled
Realy_reset1Value to which the controller output is reset if the boolean trigger has a rising edge
Realy_neutral0Value to which the controller output is reset when the controller is disabled

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputidxCycTanIndex of active tank cycle
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputmodeCondenser loop operating mode
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nChi]u1ChiCooling-only chiller On/Off command
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nChiHea]u1ChiHeaHRC On/Off command
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nChiHea]u1CooChiHeaHRC cooling mode switchover command: true for cooling, false for heating
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nChiHea]u1HeaCooChiHeaHRC direct heat recovery switchover command: true for direct HR, false for cascading
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChiHea]TEvaLvgChiHeaHRC evaporator barrel leaving temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInputmEvaChiSet_flowChiller evaporator flow setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInputmEvaChiHeaSet_flowHRC evaporator flow setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChi]mEvaChi_flowChiller evaporator mass flow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChi]mConChi_flowChiller condenser mass flow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChiHea]mEvaChiHea_flowHRC evaporator mass flow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInputTConWatEvaEntHRC evaporator entering CW temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChiHea]mConChiHea_flowHRC condenser mass flow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInputTConEntChiHeaSetHRC condenser entering temperature setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChiHea]TConEntChiHeaHRC condenser entering temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChiHea]TConLvgChiHeaHRC condenser barrel leaving temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInput[nChi]TConLvgChiChiller condenser barrel leaving temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInputTConWatConRetCWC return temperature
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1PumChiWatEnable signal for lead CHW pump
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1PumHeaWatEnable signal for lead HW pump
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1PumConWatConEnable signal for lead CW pump serving evaporator loop
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1PumConWatEvaEnable signal for lead CW pump serving evaporator loop
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChi]yValEvaChiCooling-only chiller evaporator isolation valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChi]yValConChiCooling-only chiller condenser isolation valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChiHea]yValEvaChiHeaHRC evaporator isolation valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChiHea]yValConChiHeaHRC condenser isolation valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChiHea]yValEvaSwiChiHeaHRC evaporator switchover valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutput[nChiHea]yValConSwiChiHeaHRC condenser switchover valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyValConWatEvaMixHRC evaporator CW mixing valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyValChiWatMinBypCHW minimum flow bypass valve control signal
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyValHeaWatMinBypHW minimum flow bypass valve control signal
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyValConWatBypCW chiller bypass valve control signal
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1CooOrHeaPlant Enable signal: either cooling or heating is enabled

Components

TypeNameDefaultDescription
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChi]valEvaChiChiller evaporator isolation valve control when HRC in direct HR
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChi]valConChiChiller condenser isolation valve control
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChiHea]valEvaChiHeaHRC evaporator isolation valve control
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChiHea]valConChiHeaHRC condenser isolation valve control
Buildings.Controls.OBC.CDL.Conversions.BooleanToReal[nChiHea]yValConSwiHRC condenser switchover valve commanded position
Buildings.Controls.OBC.CDL.Logical.Not[nChiHea]heaReturn true if heating
Buildings.Controls.OBC.CDL.Conversions.BooleanToInteger[nChiHea]booToIntConvert
Buildings.Controls.OBC.CDL.Integers.MultiSumnumHeaAndOnNumber of HRC connected to HW loop and On
Buildings.Controls.OBC.CDL.Integers.Less[nChiHea]intLesReturn true if switchover valve to be open for heating operation
Buildings.Controls.OBC.CDL.Routing.IntegerScalarReplicatorrepReplicate
Buildings.Controls.OBC.CDL.Logical.Or[nChiHea]heaOrCooConReturn true if switchover valve to be open for heating or cooling operation
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]heaAndOnReturn true if heating AND On
Buildings.Controls.OBC.CDL.Integers.Sources.Constant[nChiHea]idxHRC index
Buildings.Controls.OBC.CDL.Logical.Or[nChiHea]cooOrDirReturn true if cooling OR direct HR
Buildings.Controls.OBC.CDL.Conversions.BooleanToReal[nChiHea]yValEvaSwiHRC evaporator switchover valve commanded position
Buildings.Controls.OBC.CDL.Logical.Not[nChiHea]heaAndCasReturn true if cascading heating
Buildings.Controls.OBC.CDL.Conversions.BooleanToInteger[nChiHea]booToInt1Convert
Buildings.Controls.OBC.CDL.Integers.MultiSumnumHeaAndCasAndOnNumber of HRC in cascading heating AND On
Buildings.Controls.OBC.CDL.Routing.IntegerScalarReplicatorrep1Replicate
Buildings.Controls.OBC.CDL.Integers.Less[nChiHea]intLes1Return true if switchover valve to be open for heating operation
Buildings.Controls.OBC.CDL.Logical.Or[nChiHea]heaOrCooEvaReturn true if switchover valve to be open for heating or cooling operation
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]cooOrDirAndOnReturn true if (cooling OR direct HR) AND On
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]heaAndCasAndOnReturn true if cascading heating AND On
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nChiHea]isOpeCheck if valve open
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nChiHea]isOpe1Check if valve open
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nChi]isOpe2Check if valve open
Buildings.Controls.OBC.CDL.Reals.GreaterThreshold[nChi]isOpe3Check if valve open
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]cooOrDirAndOnAndOpeReturn true if HRC (cooling OR direct HR) AND On AND isolation valve open
Buildings.Controls.OBC.CDL.Logical.And[nChi]onAndOpeReturn true if On AND isolation valve open
Buildings.Controls.OBC.CDL.Logical.And[nChi]onAndOpe1Return true if On AND isolation valve open
Buildings.Controls.OBC.CDL.Logical.MultiOrenaPumChiWatEnable signal for lead CHW pump
Buildings.Controls.OBC.CDL.Logical.MultiOrenaPumConWatConEnable signal for lead CW pump serving condenser loop
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]cooAndOpeReturn true if cooling (necessarily cascading) AND isolation valve open
Buildings.Controls.OBC.CDL.Logical.MultiOrenaPumHeaWatEnable signal for lead HW pump
Buildings.Controls.OBC.CDL.Logical.MultiOrenaPumConWatEvaEnable signal for lead CW pump serving evaporator loop
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]heaAndOnAndOpeReturn true if heating AND On AND isolation valve open
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]heaAndCasAndOnAndOpeReturn true if cascading heating AND On AND isolation valve open
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep2Replicate
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep3Replicate
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]dirHeaCooAndOnReturn true if direct HR AND On
Buildings.Controls.OBC.CDL.Logical.MultiOranyDirHeaCooAndOnReturn true if any HRC in direct HR AND On
Buildings.Controls.OBC.Utilities.PIDWithEnablevalConSwiCondenser switchover valve control
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep4Replicate
Buildings.Controls.OBC.CDL.Integers.Equal[nChiHea]equIdxReturn true if index equals highest index of HRC in direct HR
Buildings.Controls.OBC.CDL.Integers.Sources.Constant[nChiHea]idxChiHeaHRC index
Buildings.Controls.OBC.CDL.Reals.Switch[nChiHea]selCtlSelect control signal
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea]zerConstant
Buildings.Controls.OBC.CDL.Reals.Max[nChiHea]max1Take into account entering CW temperature control in direct HR mode
Buildings.Controls.OBC.CDL.Routing.RealExtractorextTExtract value at given index
Buildings.Controls.OBC.CDL.Routing.IntegerScalarReplicatorrep5Replicate
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChiHea]ctlTConWatEvaLvgHRC evaporator leaving temperature control
Buildings.Controls.OBC.CDL.Routing.RealExtractorTConWatEvaLvgSetExtract value at given index
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[2]TConWatEvaLvgSetCstHRC evaporator leaving CW temperature setpoint
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep6Replicate
Buildings.Controls.OBC.CDL.Reals.Line[nChiHea]valConWatEvaMixMixing valve opening reset: 1 means no bypass flow
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea,2]xValx-value for mixing valve opening reset
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea,2]yValy-value for mixing valve opening reset: 1 means no bypass flow
Buildings.Controls.OBC.CDL.Reals.Line[nChiHea]floEvaHRC evaporator flow reset when On AND cascading heating
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea,2]xFlox-value for evaporator flow reset
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea,2]yFloy-value for evaporator flow reset
Buildings.Controls.OBC.CDL.Reals.Switch[nChiHea]selFloSetSelect HRC evaporator flow setpoint based on operating mode
Buildings.Controls.OBC.Utilities.PIDWithEnablectlTConWatEvaEntHRC evaporator entering temperature control: 1 means no bypass flow
Buildings.Controls.OBC.CDL.Logical.MultiOranyHeaAndCasAndOnReturn true if ANY HRC cascading heating AND On
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantTConWatEvaEntSetHRC evaporator entering CW temperature setpoint
Buildings.Controls.OBC.CDL.Reals.MultiMinmulMinCombine outputs from evaporator entering and leaving temperature control
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[2]TConWatConRetSetCstCW condenser loop return temperature setpoint
Buildings.Controls.OBC.CDL.Routing.RealExtractorTConWatConRetSetExtract value at given index
Buildings.Controls.OBC.Utilities.PIDWithEnablectlTConWatConRetCondenser loop CW return temperature control
Buildings.Controls.OBC.CDL.Integers.EqualisChaAssCheck if charge assist mode is active
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantchaAssCharge assist mode index
Buildings.Controls.OBC.CDL.Reals.Line[nChi + nChiHea]floConCondenser flow reset (normalized output)
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi + nChiHea,2]xFloConx-value for flow reset
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi + nChiHea,2]yFloCony-value for condenser flow reset
Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter[nChi]scaFloConChiScale flow reset signal
Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter[nChiHea]scaFloConChiHeaScale flow reset signal
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChi + nChiHea]ctlTConLvgChiCondenser leaving temperature control
Buildings.Controls.OBC.CDL.Integers.Sources.ConstanttanChaTank charge/discharge mode index
Buildings.Controls.OBC.CDL.Integers.EqualisTanChaCheck if tank charge/discharge mode is active
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatorrep9Replicate
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep10Replicate
Buildings.Controls.OBC.CDL.Routing.RealScalarReplicatorrep11Replicate
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi + nChiHea]oneConstant
Buildings.Controls.OBC.CDL.Reals.Switch[nChi + nChiHea]swiFloSetSwitch condenser flow setpoint based on condenser loop operating mode
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatorrep12Replicate
Buildings.Controls.OBC.CDL.Reals.Switch[nChi + nChiHea]swiFloSet1Switch condenser flow setpoint based on condenser loop operating mode
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChi + nChiHea]valChiWatMinBypCHW minimum flow bypass valve control
Buildings.Controls.OBC.Utilities.PIDWithEnable[nChiHea]valHeaWatMinBypHW minimum flow bypass valve control
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi + nChiHea]floChiWatMinMinimum flow setpoint
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea]floHeaWatMinMinimum flow setpoint
Buildings.Controls.OBC.CDL.Reals.MultiMaxmax2Maximum control signal
Buildings.Controls.OBC.CDL.Reals.MultiMaxmax3Maximum control signal
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatorrep7Replicate
Buildings.Controls.OBC.CDL.Reals.Switch[nChi]swiCondition to enable evaporator flow control loop
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi]zer1Constant
Buildings.Controls.OBC.CDL.Logical.NotnoHeaAndCooAndOnReturn true if NO HRC in direct HR AND On
Buildings.Controls.OBC.CDL.Logical.MultiOranyCooAndOnReturn true if ANY HRC in cascading cooling AND On
Buildings.Controls.OBC.CDL.Logical.Andand2Condition to switch to fixed valve opening (balancing)
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatorrep8Replicate
Buildings.Controls.OBC.CDL.Reals.Switch[nChi]swi1Condition to enable evaporator flow control loop
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi]yBalChiConstant
Buildings.Controls.OBC.CDL.Logical.Not[nChi]fulOpeCondition to switch to fixed full opening
Buildings.Controls.OBC.CDL.Reals.Switch[nChi]swi2Condition to enable evaporator flow control loop
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChi]one1Constant
Buildings.Controls.OBC.CDL.Logical.And[nChiHea]cooAndOnReturn true if HRC in cascading cooling AND On
Buildings.Controls.OBC.CDL.Reals.Switch[nChiHea]selValPosSelect HRC evaporator isolation valve command signal
Buildings.Controls.OBC.CDL.Reals.Sources.Constant[nChiHea]yBalChiHeaConstant
Buildings.Controls.OBC.CDL.Logical.MultiOranyCooOrDirAndOnReturn true if any HRC in (cooling OR direct HR) AND On
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatorrep13Replicate
Buildings.Controls.OBC.CDL.Conversions.BooleanToReal[nChiHea]booToReaConvert
Buildings.Controls.OBC.CDL.Reals.Max[nChiHea]max4Convert
Buildings.Controls.OBC.CDL.Logical.Not[nChi]isCloConChiCheck if valve closed
Buildings.Controls.OBC.CDL.Logical.MultiAndallCloAndChaAndEnaCheck if all valves closed AND Charge Assist mode is active
Buildings.Controls.OBC.CDL.Reals.SwitchenaCtlValConWatBypEnable CW bypass valve control
Buildings.Controls.OBC.CDL.Reals.Sources.Constantzer2Constant
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdisOpe4Check if valve open
Buildings.Controls.OBC.CDL.Integers.Switch[nChiHea]intSwiSwitch
Buildings.Controls.OBC.CDL.Integers.Sources.Constant[nChiHea]conIntConstant 1
Buildings.Controls.OBC.CDL.Conversions.IntegerToReal[nChiHea]intToReaConvert integer to real
Buildings.Controls.OBC.CDL.Conversions.RealToIntegerreaToIntConvert real to integer
Buildings.Controls.OBC.CDL.Reals.MultiMaxmulMaxMaximum value of a vector input

Revisions

  • February 24, 2023, by Antoine Gautier:
    First implementation.