blockControlDifferentialPressure
Differential pressure control for variable speed pumps
Information
For plants where a remote DP sensor(s) is hardwired to the pump controller
(have_senDpRemHar=true):
- When any pump is proven on, the pump speed is controlled by a reverse acting PI loop maintaining the differential pressure signal at setpoint. All pumps receive the same speed signal.
- Where multiple DP sensors exist, a PI loop runs for each sensor. The pumps are controlled to the highest signal output of all DP sensor loops.
For plants where the remote DP sensor(s) is not hardwired to the plant controller, but
a local DP sensor is hardwired to the plant controller
(have_senDpRemHar=false):
- When any pump is proven on, the pump speed is controlled by a reverse acting PI loop maintaining the local DP signal at the DP setpoint output from the remote sensor control loop (see Buildings.Templates.Plants.Controls.Pumps.Generic.ResetLocalDifferentialPressure). All pumps receive the same speed signal.
- Where multiple remote DP sensors exist, a PI loop shall run for each sensor. The DP setpoint for the local DP sensor is the highest DP setpoint output from each of the remote loops.
Details
This logic is prescribed in ASHRAE, 2021 for:
- variable speed primary pumps in primary-only chiller and boiler plants where the remote DP sensor(s) is hardwired to the plant controller,
- variable speed primary pumps in primary-only chiller and boiler plants where the remote DP sensor(s) is not hardwired to the plant controller, but a local DP sensor is hardwired to the plant controller,
- variable speed secondary pumps in primary-secondary chiller and boiler plants where a remote DP sensor(s) is hardwired to the secondary pump controller,
- variable speed secondary pumps in primary-secondary chiller and boiler plants where a remote DP sensor is not hardwired to the secondary pump controller, but a local DP sensor is hardwired to the secondary pump controller.
References
- ASHRAE, 2021. Guideline 36-2021, High-Performance Sequences of Operation for HVAC Systems. Atlanta, GA.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | have_senDpRemWir | Set to true for remote differential pressure sensor(s) hardwired to controller | |
| Integer | nPum | Number of pumps that operate at design conditions | |
| Integer | nSenDpRem | Number of remote loop differential pressure sensors used for pump speed control | |
| Real | y_min | 0.1 | Minimum pump speed |
| Real | y_max | 1 | Maximum pump speed |
| Control gains | |||
| Real | k | 1 | Gain of controller |
| Real | Ti | 60 | Time constant of integrator block |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput[nPum] | y1_actual | Pump status | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput[nSenDpRem] | dpRemSet | Remote differential pressure setpoint | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | dpLoc | Loop differential pressure local to the plant | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput[nSenDpRem] | dpRem | Remote loop differential pressure | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput[nSenDpRem] | dpLocSet | Local differential pressure setpoint | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | y | Pump speed command | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | dpLocSetMax | Maximum local differential pressure setpoint |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Logical.MultiOr | anyOn | Return true when any pump is proven on | |
| Buildings.Controls.OBC.CDL.Routing.BooleanScalarReplicator | repEna | Replicate | |
| Buildings.Controls.OBC.CDL.Reals.MultiMax | maxSet | Maximum DP setpoint | |
| Buildings.Controls.OBC.Utilities.PIDWithEnable[nSenDpRem] | ctlDpRem | Remote differential pressure control | |
| Buildings.Controls.OBC.Utilities.PIDWithEnable | ctlDpLoc | Local differential pressure control | |
| Buildings.Controls.OBC.CDL.Reals.MultiMax | maxY | Maximum control loop output |
Revisions
-
March 29, 2024, by Antoine Gautier:
First implementation.