blockEventSequencingMultiple

Staging event sequencing for multiple heat pumps

Information

This block applies the staging event sequencing logic of Buildings.Templates.Plants.Controls.HeatPumps.Subsequences.EventSequencingSingle to a group of nHp reversible heat pumps and nPhp polyvalent heat pumps.

To facilitate integration into plant controllers serving both reversible and polyvalent heat pumps, the output connectors for the isolation valve commands and the primary pump enable commands have always the same dimension nHp + nPhp. When a piece of equipment is not present for a given unit, the corresponding array element is set to false.

Parameters

TypeNameDefaultDescription
IntegernHpNumber of heat pumps
IntegernPhpNumber of polyvalent eat pumps
Booleanhave_heaWatSet to true for plants that provide HW
Booleanhave_chiWatSet to true for plants that provide CHW
Booleanhave_valHpInlIsoSet to true for plants with isolation valves at heat pump inlet
Booleanhave_valHpOutIsoSet to true for plants with isolation valves at heat pump outlet
Booleanhave_valPhpInlIsoSet to true for isolation valves at polyvalent HP inlet
Booleanhave_valPhpOutIsoSet to true for isolation valves at polyvalent HP outlet
Booleanhave_pumPriHdrSet to true for plants with headered primary pumps
Booleanhave_pumChiWatPriDedHpSet to true for HP with separate dedicated primary pumps for CHW and HW circuits
IntegernPumHeaWatPriNumber of primary HW pumps
IntegernPumChiWatPriNumber of primary CHW pumps
RealdtVal90Nominal valve timing
RealdtOff180Heat pump internal shutdown cycle timing

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nPhp]u1ShcPhpSHC enable command – Polyvalent HP
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nHp + nPhp]u1HeaHpPhpHeating enable command – HP or polyvalent HP (single mode)
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nPumHeaWatPri]u1PumHeaWatPriDed_actualDedicated primary HW pump status
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nPumChiWatPri]u1PumChiWatPriDed_actualDedicated primary CHW pump status
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1ValHeaWatInlIsoInlet HW isolation valve command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1ValHeaWatOutIsoOutlet HW isolation valve command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1ValChiWatInlIsoInlet CHW isolation valve command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1ValChiWatOutIsoOutlet CHW isolation valve command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1PumHeaWatPriPrimary HW pump request to pump staging logic
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp + nPhp]y1PumChiWatPriPrimary CHW pump request to pump staging logic
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp]y1HpHeat pump enable command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nHp]y1HeaHpHeat pump heating mode command
Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nHp + nPhp]u1CooHpPhpCooling enable command – HP or polyvalent HP (single mode)
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nPhp]y1HeaPhpPolyvalent HP heating on/off command
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput[nPhp]y1CooPhpPolyvalent HP cooling on/off command
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1PumHeaWatPriHdr_actualLead headered primary HW pump status
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1PumChiWatPriHdr_actualLead headered primary CHW pump status

Components

TypeNameDefaultDescription
EventSequencingSingle[nHp]seqEveHpHP event sequencing
EventSequencingSingle[nPhp]seqEvePhpPolyvalent HP event sequencing
Utilities.ConcatenateParameterLogicalu1PumHeaWatPriDed_internalPrepend with false if nHp+nPhp > nPum
Utilities.ConcatenateParameterLogicalu1PumChiWatPriDed_internalPrepend with false if nHp+nPhp > nPum
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatoru1PumHeaWatPriHdr_internalReplicate
Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicatoru1PumChiWatPriHdr_internalReplicate

Revisions

  • July 10, 2026, by Antoine Gautier:
    First implementation.