modelAirToWater

Controller for AWHP plant

Extends from Buildings.Templates.Plants.HeatPumps.Components.Interfaces.PartialController (Interface for heat pump plant controller).

Information

This class implements the sequence of operation for plants with air-to-water heat pumps. It is based on the controller Buildings.Templates.Plants.Controls.HeatPumps.AirToWater.

Control points

The control sequence requires the following external input points in addition to those already included in the AWHP plant template.

  • Outdoor air temperature TOut: AI signal with a dimensionality of zero
  • HW differential pressure from remote sensor(s) dpHeaWatRem: AI signal with a dimensionality of one, the number of remote sensors is specified by the parameter nSenDpHeaWatRem.
  • CHW differential pressure from remote sensor(s) dpChiWatRem – only for heating and cooling plants: AI signal with a dimensionality of one, the number of remote sensors is specified by the parameter nSenDpChiWatRem.
  • Inside the sub-bus busAirHan[:] or busEquZon[:], with a dimensionality of one
    • HW plant requests yielded by the air handler or zone equipment controller bus(AirHan|EquZon)[:].reqPlaHeaWat: AI signal (Integer), with a dimensionality of one
    • HW reset requests yielded by the air handler or zone equipment controller bus(AirHan|EquZon)[:].reqResHeaWat: AI signal (Integer), with a dimensionality of one
    • CHW plant requests yielded by the air handler or zone equipment controller bus(AirHan|EquZon)[:].reqPlaChiWat – only for heating and cooling plants: AI signal (Integer), with a dimensionality of one
    • CHW reset requests yielded by the air handler or zone equipment controller bus(AirHan|EquZon)[:].reqResChiWat – only for heating and cooling plants: AI signal (Integer), with a dimensionality of one

Parameters

TypeNameDefaultDescription
Buildings.Templates.Plants.HeatPumps.Components.Data.Controllerdat (from PartialController)Parameter record for controller
IntegernHp (from PartialController)cfg.nHpNumber of heat pumps (excluding polyvalent HPs)
IntegernPhp (from PartialController)cfg.nPhpNumber of polyvalent heat pumps
Booleanhave_senVHeaWatPri (from PartialController)Set to true for plants with primary HW flow sensor
Booleanhave_senVHeaWatLoo (from PartialController)Set to true for plants with HW loop flow sensor
Booleanhave_senVHeaWatSec (from PartialController)Set to true for plants with secondary HW flow sensor
Booleanhave_senVChiWatPri (from PartialController)Set to true for plants with primary CHW flow sensor
Booleanhave_senVChiWatLoo (from PartialController)Set to true for plants with CHW loop flow sensor
Booleanhave_senVChiWatSec (from PartialController)Set to true for plants with secondary CHW flow sensor
Booleanhave_senTHeaWatPriRet (from PartialController)Set to true for plants with primary HW return temperature sensor
Booleanhave_senTHeaWatLooRet (from PartialController)Set to true for plants with HW loop return temperature sensor
Booleanhave_senTChiWatPriRet (from PartialController)Set to true for plants with primary CHW return temperature sensor
Booleanhave_senTChiWatLooRet (from PartialController)Set to true for plants with CHW loop return temperature sensor
Booleanhave_senTHeaWatSecSup (from PartialController)Set to true for plants with secondary HW supply temperature sensor
Booleanhave_senTChiWatSecSup (from PartialController)Set to true for plants with secondary CHW supply temperature sensor
Booleanhave_senTHeaWatSecRet (from PartialController)Set to true for plants with secondary HW return temperature sensor
Booleanhave_senTChiWatSecRet (from PartialController)Set to true for plants with secondary CHW return temperature sensor
Configuration
Buildings.Templates.Plants.HeatPumps.Configuration.HeatPumpPlantcfg (from PartialController)Plant configuration parameters
Buildings.Templates.Plants.HeatPumps.Types.Controllertyp (from PartialController)Type of controller
IntegernAirHan (from PartialController)Number of air handling units served by the plant
IntegernEquZon (from PartialController)Number of terminal units (zone equipment) served by the plant
Sensors
Booleanhave_senTPriRet_select (from PartialController)falseSet to true for plants with primary CHW/HW return temperature sensor
Booleanhave_senTLooRet_select (from PartialController)falseSet to true for plants with CHW/HW loop return temperature sensor (load side of minimum flow bypass)
Booleanhave_senDpHeaWatRemWir (from PartialController)falseSet to true for remote HW differential pressure sensor(s) hardwired to plant or pump controller
IntegernSenDpHeaWatRem (from PartialController)1Number of remote HW differential pressure sensors used for HW pump speed control
Booleanhave_senDpChiWatRemWir (from PartialController)have_senDpHeaWatRemWirSet to true for remote CHW differential pressure sensor(s) hardwired to plant or pump controller
IntegernSenDpChiWatRem (from PartialController)1Number of remote CHW differential pressure sensors used for CHW pump speed control
Plant enable
Booleanhave_inpSch (from PartialController)falseSet to true to provide schedule via software input point
Real[:,2]schHea (from PartialController)dat.schHeaHeating mode enable schedule
Real[:,2]schCoo (from PartialController)dat.schCooCooling mode enable schedule

Connectors

TypeNameDefaultDescription
Buildings.Templates.Plants.HeatPumps.Interfaces.Busbus (from PartialController)Plant control bus
Buildings.Templates.AirHandlersFans.Interfaces.Bus[nAirHan]busAirHan (from PartialController)Air handling unit control bus
Buildings.Templates.ZoneEquipment.Interfaces.Bus[nEquZon]busEquZon (from PartialController)Terminal unit control bus

Components

TypeNameDefaultDescription
Controls.PrimaryPumpSignalRoutingrouPumChiWatPri (from PartialController)Primary CHW pump signal routing
Controls.PrimaryPumpSignalRoutingrouPumHeaWatPri (from PartialController)Primary HW pump signal routing
Buildings.Templates.Plants.Controls.HeatPumps.AirToWaterctlPlant controller
Buildings.Controls.OBC.CDL.Integers.MultiSumreqPlaHeaWatAirHanSum of HW plant requests from AHU
Buildings.Controls.OBC.CDL.Integers.MultiSumreqPlaHeaWatEquZonSum of HW plant requests from zone equipment
Buildings.Controls.OBC.CDL.Integers.MultiSumreqResHeaWatAirHanSum of HW reset requests from AHU
Buildings.Controls.OBC.CDL.Integers.MultiSumreqResHeaWatEquZonSum of HW reset requests from zone equipment
Buildings.Controls.OBC.CDL.Integers.MultiSumreqResChiWatAirHanSum of CHW reset requests from AHU
Buildings.Controls.OBC.CDL.Integers.MultiSumreqPlaChiWatEquZonSum of CHW plant requests from zone equipment
Buildings.Controls.OBC.CDL.Integers.MultiSumreqResChiWatEquZonSum of CHW reset requests from zone equipment
Buildings.Controls.OBC.CDL.Integers.MultiSumreqPlaChiWatAirHanSum of CHW plant requests from AHU
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqPlaHeaWatAirHanPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqPlaChiWatAirHanPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqResHeaWatAirHanPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqResChiWatAirHanPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqPlaHeaWatEquZonPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqPlaChiWatEquZonPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqResHeaWatEquZonPlaceholder value if signal is not available
Buildings.Templates.Plants.Controls.Utilities.PlaceholderIntegerphReqResChiWatEquZonPlaceholder value if signal is not available
Buildings.Controls.OBC.CDL.Integers.AddreqPlaHeaWatSum of HW plant requests of all loads served
Buildings.Controls.OBC.CDL.Integers.AddreqPlaChiWatSum of CHW plant requests of all loads served
Buildings.Controls.OBC.CDL.Integers.AddreqResHeaWatSum of HW reset requests of all loads served
Buildings.Controls.OBC.CDL.Integers.AddreqResChiWatSum of CHW reset requests of all loads served
Buildings.Templates.Plants.Controls.Pumps.Generic.ResetLocalDifferentialPressure[nSenDpHeaWatRem]resDpHeaWatLocLocal HW DP reset
Buildings.Templates.Plants.Controls.Pumps.Generic.ResetLocalDifferentialPressure[nSenDpChiWatRem]resDpChiWatLocLocal CHW DP reset
Buildings.Templates.Plants.Controls.Utilities.PlaceholderRealTHeaWatLooOrSecRetSelect sensor based on plant configuration
Buildings.Templates.Plants.Controls.Utilities.PlaceholderRealTChiWatLooOrSecRetSelect sensor based on plant configuration
Buildings.Templates.Plants.Controls.Utilities.PlaceholderRealVHeaWatLooOrSecSelect sensor based on plant configuration
Buildings.Templates.Plants.Controls.Utilities.PlaceholderRealVChiWatLooOrSecSelect sensor based on plant configuration

Revisions

  • July 10, 2026, by Antoine Gautier:
    Refactored for plants with polyvalent heat pumps.
    This is for #4512.