Skip to content

Commit

Permalink
Merge branch 'develop' into chillerElecEIRrefactor
Browse files Browse the repository at this point in the history
  • Loading branch information
mitchute committed Jan 16, 2020
2 parents 30e2c11 + a085e31 commit 7863112
Show file tree
Hide file tree
Showing 36 changed files with 10,832 additions and 11,211 deletions.
163 changes: 163 additions & 0 deletions design/FY2019/AirSource_EIR_WaterHeatPump.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
# Adding Air Source Capability to the EIR Water-to-Water Heat Pump

**Matt Mitchell, Edwin Lee - NREL**

- Original NFP: August 30, 2019
- Revision Date: N/A

## Justification for New Feature

The EIR-formulated water-to-water heat pump model was added with EnergyPlus 9.1.0. This model allows users to evaluate energy calculations on water source plants where a heat pump provides heating and cooling. The EIR formulation is desired by users as the formulation is accepted as an accurate representation of heat pump operation under common conditions.

The water-to-water model is a welcome addition to the EnergyPlus codebase, however an even further desired feature is to collect multiple water-based components and provide them with heating and cooling from an air-source heat pump. As such, this task will modify the current EIR-formulated heat pump and enable the physics of an air-source heat pump.

## Email and Conference Call Conclusions

N/A

## Overview

Since there is an already-existing EIR-WWHP model, this work should integrated with it rather than creating a new object. The current object is:

- HeatPump:WaterToWater:EIR:(Cooling/Heating)

This model is a water-source heat pump, however, the objective of this adapt the model to be able to operate as an air-source heat pump. The EIR formulation will remain the same as the current model, as shown in the equation.

```CapacityMultiplier(temperature) = a + b*(T_load) + c*(T_load^2) + d*(T_source) + e*(T_source^2) + f*(T_load*T_source)```

This current project will rename this existing object to allow for water source and air source operation. It will also adapt the input structure of the exisiting object so that no new objects are created.

## Approach

- Rename the existing EIR-WWHP from:

```HeatPump:WaterToWater:EIR:(Cooling/Heating)```

to:

```HeatPump:PlantLoop:EIR:(Cooling/Heating)```

"PlantLoop" could also be replaced by suggestions from the reviewers. Perhaps, "WaterSide" or "WaterSideLoad"?

- Implement code changes

- Develop new unit tests

- Develop new input file

## Testing/Validation

- Many of the unit tests for this already exist, however, any changes will be tested with additional unit tests.
- At least 1 new test file will be developed, therefore, integration tests will used to show proper operation.

## I/O Changes

The following examples are the suggested format for the modified EIR-HP object. A ```Condenser Type``` input field has been added. Valid options for this field currenly include ```WaterSource``` and ```AirSource```. All other inputs remain the same.

EIR-WSHP - Cooling/Heating

```
HeatPump:PlantLoop:EIR:Cooling,
Cooling Coil, !- Name
CC Load Inlet Node, !- Load Side Inlet Node Name
CC Load Outlet Node, !- Load Side Outlet Node Name
WaterSource, !- Condenser Type
CC Source Inlet Node, !- Source Side Inlet Node Name
CC Source Outlet Node, !- Source Side Outlet Node Name
Heating Coil, !- Companion Heating Heat Pump Name
0.005, !- Load Side Design Volume Flow Rate {m3/s}
0.003, !- Source Side Design Volume Flow Rate {m3/s}
400000, !- Reference Capacity
3.5, !- Reference COP
, !- Sizing Factor
CapCurveFuncTempClg, !- Cooling Capacity Modifier Function of Temperature Curve Name
EIRCurveFuncTempClg, !- Electric Input to Cooling Output Ratio Modifier Function of Temperature Curve Name
EIRCurveFuncPLRClg; !- Electric Input to Cooling Output Ratio Modifier Function of Part Load Ratio Curve Name
```

```
HeatPump:PlantLoop:EIR:Heating,
Heating Coil, !- Name
HC Load Inlet Node, !- Load Side Inlet Node Name
HC Load Outlet Node, !- Load Side Outlet Node Name
WaterSource, !- Evaporator Type
HC Source Inlet Node, !- Source Side Inlet Node Name
HC Source Outlet N0de, !- Source Side Outlet Node Name
Cooling Coil, !- Companion Coil Name
0.005, !- Load Side Design Volume Flow Rate {m3/s}
0.002, !- Source Side Design Volume Flow Rate {m3/s}
80000, !- Reference Capacity
3.5, !- Reference COP
, !- Sizing Factor
CapCurveFuncTempHtg, !- Heating Capacity Function of Temperature Curve Name
EIRCurveFuncTempHtg, !- Electric Input to Heating Output Ratio Function of Temperature Curve Name
EIRCurveFuncPLRHtg; !- Electric Input to Heating Output Ratio Function of Part Load Ratio Curve Name
```



EIR-ASHP - Cooling/Heating

```
HeatPump:PlantLoop:EIR:Cooling,
Cooling Coil, !- Name
CC Load Inlet Node, !- Load Side Inlet Node Name
CC Load Outlet Node, !- Load Side Outlet Node Name
AirSource, !- Condenser Type
Outdoor Air HP Inlet Node, !- Source Side Inlet Node Name
Outdoor Air HP Outlet Node, !- Source Side Outlet Node Name
Heating Coil, !- Companion Heating Heat Pump Name
0.005, !- Load Side Design Volume Flow Rate {m3/s}
0.003, !- Source Side Design Volume Flow Rate {m3/s}
400000, !- Reference Capacity
3.5, !- Reference COP
, !- Sizing Factor
CapCurveFuncTempClg, !- Cooling Capacity Modifier Function of Temperature Curve Name
EIRCurveFuncTempClg, !- Electric Input to Cooling Output Ratio Modifier Function of Temperature Curve Name
EIRCurveFuncPLRClg; !- Electric Input to Cooling Output Ratio Modifier Function of Part Load Ratio Curve Name
```

```
HeatPump:PlantLoop:EIR:Heating,
Heating Coil, !- Name
HC Load Inlet Node, !- Load Side Inlet Node Name
HC Load Outlet Node, !- Load Side Outlet Node Name
AirSource, !- Evaporator Type
Outdoor Air HP Inlet Node, !- Source Side Inlet Node Name
Outdoor Air HP Outlet Node, !- Source Side Outlet Node Name
Cooling Coil, !- Companion Coil Name
0.005, !- Load Side Design Volume Flow Rate {m3/s}
0.002, !- Source Side Design Volume Flow Rate {m3/s}
80000, !- Reference Capacity
3.5, !- Reference COP
, !- Sizing Factor
CapCurveFuncTempHtg, !- Heating Capacity Function of Temperature Curve Name
EIRCurveFuncTempHtg, !- Electric Input to Heating Output Ratio Function of Temperature Curve Name
EIRCurveFuncPLRHtg; !- Electric Input to Heating Output Ratio Function of Part Load Ratio Curve Name
```



## I/O Documentation

Documentation will be updated to add a description of the new condenser type field. Additional examples will be given that show application of the ASHP options. Output field will be unchanged.

## Code Changes

It is expected that the code changes will be primarily in the EIR Water to Water Heat Pump Module. These code changes will largely affect the input/setup routines. Computations are expected to be nearly identical, except for the differences in how water/glycol vs. air properties are determined.
There will be other stray code changes in plant management routines to instantiate and manage simulation of the newly modified component.

## Example Files

A new example file will be generated to demonstrate usage of the new EIR-ASHP.

## Transition

A transition rule will be written to insert the ```Condenser Type``` field into existing objects.

## Engineering Reference

No changes expected, aside from any minor changes requried to explain the water- vs. air-source operation.



Original file line number Diff line number Diff line change
Expand Up @@ -2554,9 +2554,9 @@ \subsubsection{References}\label{references-1}

Murugappan, Arun. 2002.~ Implementing Ground Source Heat Pump and Ground Loop Heat Exchanger Models in the EnergyPlus Simulation Environment, M.S. Thesis, Department of Mechanical and Aerospace Engineering, Oklahoma State University (downloadable from \href{http://www.hvac.okstate.edu}{http://www.hvac.okstate.edu/})

\subsection{EIR Formulated Water To Water Heat Pump Model}\label{eir-water-to-water-heat-pump-model}
\subsection{EIR Formulated Plant Loop Heat Pump Model}\label{eir-plant-loop-heat-pump-model}

This section describes the EIR formulated model for water-to-water heat pumps. (Object names: HeatPump:WaterToWater:EIR:Cooling \& HeatPump:WaterToWater:EIR:Heating). In general, these heat pump objects are treated the same as the other heat pump models by the plant loop. Even though a heat pump is generally a single load coil and a single source coil with a reversing valve, in EnergyPlus, the paradigm is to split the operation into two separate coils, a heating and a cooling. It is certainly possible to connect the load side of both of these to a single plant loop if the controls are established properly. The source side of the coils are often placed on a single loop with some form of condensing supply, either a ground loop heat exchanger or a cooling tower (or a combination of the two).
This section describes the EIR formulated model for plant loop heat pumps, which can be configured as either a water-source or air-source object. (Object names: HeatPump:PlantLoop:EIR:Cooling \& HeatPump:PlantLoop:EIR:Heating). In general, these heat pump objects are treated the same as the other heat pump models by the plant loop. Even though a heat pump is generally a single load coil and a single source coil with a reversing valve, in EnergyPlus, the paradigm is to split the operation into two separate coils, a heating and a cooling. It is certainly possible to connect the load side of both of these to a single plant loop if the controls are established properly. For water-source operation the source side of the coils are often placed on a single loop with some form of condensing supply, either a ground loop heat exchanger or a cooling tower (or a combination of the two). For air-source operation, the outdoor air node is used on the source-side inlet node.

Note that this component is currently a constant flow device (it will always request its full design flow from the plant), with a future addition planned to make it respond to outlet setpoint in order to vary the flow request.

Expand Down
Loading

5 comments on commit 7863112

@nrel-bot-2b
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chillerElecEIRrefactor (mitchute) - x86_64-Linux-Ubuntu-18.04-gcc-7.4: OK (2631 of 2652 tests passed, 17 test warnings)

Messages:\n

  • 38 tests had: BND diffs.
  • 36 tests had: MDD diffs.
  • 38 tests had: MTD diffs.
  • 36 tests had: RDD diffs.
  • 15 tests had: MTR small diffs.
  • 21 tests had: Table big diffs.
  • 2 tests had: EDD diffs.
  • 4 tests had: ESO small diffs.

Failures:\n

regression Test Summary

  • Passed: 671
  • Failed: 21

Build Badge Test Badge

@nrel-bot-2b
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chillerElecEIRrefactor (mitchute) - x86_64-Linux-Ubuntu-18.04-cppcheck: OK (0 of 0 tests passed, 0 test warnings)

Build Badge

@nrel-bot-2b
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chillerElecEIRrefactor (mitchute) - x86_64-Linux-Ubuntu-18.04-custom_check: OK (11 of 11 tests passed, 0 test warnings)

Build Badge

@nrel-bot-2b
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chillerElecEIRrefactor (mitchute) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-UnitTestsCoverage-Debug: OK (1266 of 1266 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chillerElecEIRrefactor (mitchute) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-IntegrationCoverage-Debug: OK (676 of 677 tests passed, 0 test warnings)

Failures:\n

integration Test Summary

  • Passed: 676
  • Timeout: 1

Build Badge Test Badge Coverage Badge

Please sign in to comment.