Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Coil speed ratio consolidation #10361

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
2ae86bf
Add NFP draft document.
nealkruis Apr 6, 2023
1becf54
Flesh out NFP implementation.
tanaya-mankad May 29, 2023
79160f3
Fix typo.
tanaya-mankad May 30, 2023
63406e5
Modify idf inputs for 205 coils.
tanaya-mankad Jul 12, 2023
16e5855
Add most recent libtk205 files.
tanaya-mankad Jul 12, 2023
9d39010
Merge branch 'fix-btwxt-error-handling' into ashrae-205-coils
tanaya-mankad Jul 12, 2023
192a40a
Merge from NREL develop; btwxt-error-handling.
tanaya-mankad Jul 14, 2023
8a06349
Merge branch 'ashrae-205-coils' of https://github.com/bigladder/energ…
tanaya-mankad Jul 14, 2023
dc35ed4
Begin adding performance base class
tanaya-mankad Jul 14, 2023
f3e9e57
Merge branch 'develop' of https://github.com/NREL/EnergyPlus into ash…
tanaya-mankad Jul 14, 2023
17724fc
Move code to performance base class as necessary.
tanaya-mankad Jul 20, 2023
07a8dd8
Commit json submodule files; E+ custom target name for nlohmann-json …
tanaya-mankad Jul 21, 2023
4493436
Replace previously ignored CMakeLists.
tanaya-mankad Jul 21, 2023
2724741
Commit json build file for Windows.
tanaya-mankad Jul 21, 2023
7745c10
Begin using base class functions in tests.
tanaya-mankad Jul 24, 2023
5e9aa32
Make tests explicitly use CurveFitPerformance for CoilDX tests.
tanaya-mankad Aug 14, 2023
ca1692d
Add basic calculations to 205 coil class.
tanaya-mankad Aug 14, 2023
f0a7c63
Add basic simulate function (as CurveFit, but alternate modes removed).
tanaya-mankad Aug 16, 2023
ff81c53
Use fmt format for error strings.
tanaya-mankad Aug 21, 2023
0611def
Corrected usage of format().
tanaya-mankad Aug 21, 2023
508937e
Merge from NREL develop.
tanaya-mankad Nov 27, 2023
d89a8bb
Fix CI-requested problems.
tanaya-mankad Nov 27, 2023
972c919
Fix typo bug.
tanaya-mankad Dec 8, 2023
b644c90
Fix override typos.
tanaya-mankad Dec 11, 2023
4736c13
Add crankcase heater code from develop.
tanaya-mankad Dec 12, 2023
1873d0e
Create explicit performance object for tests.
tanaya-mankad Dec 12, 2023
eef8f80
Fix clang-tidy errors.
tanaya-mankad Dec 12, 2023
8ecd059
Comment unused parameter.
tanaya-mankad Dec 13, 2023
e51470c
Remove PLR in favor os single speed ratio as input to coil simulate.
tanaya-mankad Dec 30, 2023
a01ee91
Function parameter cleanup.
tanaya-mankad Jan 3, 2024
b5ab9d6
Use new simulate function signature in tests.
tanaya-mankad Jan 5, 2024
c6ad47f
Merge from NREL develop.
tanaya-mankad Jan 8, 2024
00c9acc
Apply clang-format.
tanaya-mankad Jan 8, 2024
a536423
Update copyright year.
tanaya-mankad Jan 8, 2024
9b77ccd
Fix typo.
tanaya-mankad Jan 8, 2024
621fdd8
Fix const-correctness for by-value parameters.
tanaya-mankad Jan 8, 2024
38cf41d
Fix clang-format.
tanaya-mankad Jan 8, 2024
10fdfea
Merge develop.
tanaya-mankad Apr 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions design/FY2023/NFP-ASHRAE205-Coils.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# ASHRAE 205 Coils

**Tanaya Mankad, Neal Kruis; Big Ladder Software**

## Overview

ASHRAE Standard 205 defines common data models and serialization formats for facility equipment performance data needed for engineering applications such as energy simulation. The formats allow automated exchange among data sources (manufacturers), simulation models, and other engineering applications. The formats and procedures specified in the standard are developed by SPC (Standard Project Committee) 205 under ASHRAE and ANSI consensus processes. SSPC-205 membership includes equipment manufacturers, application software developers, and engineering practitioners.

The initial edition of the standard was published near the beginning of 2023; an overview can be found at http://data.ashrae.org/standard205/.

205 chillers (RS0001) were added to EnergyPlus in 22.2. In this NFP, we propose to add support for RS0004 (Air-to-Air Direct Expansion Refrigerant System). The current scope of this RS is limited to cooling DX coils, but future adenda will accommodate heating DX coils as well.

## Implementation

ASHRAE 205 coil performance will be indicated through a new object, `Coil:DX:ASHRAE205:Performance`, which will be referenceable from `Coil:Cooling:DX` object (and the future `Coil:Heating:DX` object). The current `Coil:[Cooling]:DX:CurveFit:Performance` object and the new performance object will both derive from a new base class that encapsulates common functionality and isolates the performance calculation. (Making this structural change will ease the transition to a future Coil:Heating:DX:Curvefit:Performance object, should a non-205 performance imlementation ever be desired.)

Standard 205 representations are stored in either human-readable JSON or serialized CBOR (Concise Binary Object Representation) format. libtk205 (Toolkit 205) library will populate the internal EnergyPlus class data.

### Calculations

One of the advantages of ASHRAE Standard 205 is that available equipment operating conditions must be provided as raw performance maps in a representation. These performance maps are straightforward to arrange in a tabular format, which the libtk205 library passes to the same multi-dimensional interpolation engine ([btwxt](https://github.com/bigladder/btwxt)) which is already used in EnergyPlus to calculate performance at different operating conditions. Rather than being extracted from a regression curve, which can produce physically unrealistic results near their boundaries and can fail to capture internal inflections, equipment performance is interpolated within the closest available data to the operating point. The performance calculation will be embedded in the `simulate()` function of the DX coil class.

## Testing

In order to test the new `Coil:DX:ASHRAE205:Performance` object, we will create a new model based on an existing one with `Coil:Cooling:DX:Curvefit:Performance`. A new ASHRAE 205 representation file will be created using performance characteristics from the known model, using its performance curves to back-calculate the tabular parameter and lookup information required by the new representation. We will ensure results between the two files are similar, within reason.

## IDD Changes and Transition

We will add a new object `Coil:DX:ASHRAE205:Performance`.

```
Coil:DX:ASHRAE205:Performance,
\memo DX coil performance specification referencing an ASHRAE Standard 205 compliant representation
\memo for air-to-air direct expansion refrigerant system (Representation Specification RS0004). As
\memo RS0004 files are intended to support both heating and cooling performance, this object may
\memo referenced by the Coil:Cooling:DX and the corresponding Coil:Heating:DX object (planned for
\memo future addition).
\min-fields 2
A1, \field Name
\required-field
\type alpha
\reference DXCoolingPerformanceNames
!\reference DXHeatingPerformanceNames
A2, \field Representation File Name
\note The name of the ASHRAE 205 RS0004 (air-to-air direct expansion refrigerant system) representation file
\type alpha
\retaincase
\required-field
A3, \field Performance Interpolation Method
\type choice
\key Linear
\key Cubic
\default Linear
N1, \field Rated Total Cooling Capacity
\note Not yet implemented / reserved for future use. Full load cooling capacity at AHRI 210/240 "A" test conditions.
\note Used to scale representation data.
\type real
\units W
\minimum> 0.0
\autosizable
\default autosize
N2; \field Rated Steady-State Heating Capacity
\note Not yet implemented / reserved for future use. Full load heating capacity at AHRI 210/240 "H1" test conditions.
\note Used to scale representation data.
\type real
\units W
\minimum> 0.0
\autosizable
\default autosize
```

## Documentation

Much of the content above will be modified to describe the feature in "Input Output Reference", and details of the aggregation calculations in "Engineering Reference".
38 changes: 38 additions & 0 deletions idd/Energy+.idd.in
Original file line number Diff line number Diff line change
Expand Up @@ -52005,6 +52005,44 @@ Coil:Cooling:DX:CurveFit:Speed,
\type object-list
\object-list UnivariateFunctions

Coil:DX:ASHRAE205:Performance,
\memo DX coil performance specification referencing an ASHRAE Standard 205 compliant representation
\memo for air-to-air direct expansion refrigerant system (Representation Specification RS0004). As
\memo RS0004 files are intended to support both heating and cooling performance, this object may
\memo referenced by the Coil:Cooling:DX and the corresponding Coil:Heating:DX object (planned for
\memo future addition).
\min-fields 2
A1, \field Name
\required-field
\type alpha
\reference DXCoolingPerformanceNames
A2, \field Representation File Name
\note The name of the ASHRAE 205 RS0004 (air-to-air direct expansion refrigerant system) representation file
\type alpha
\retaincase
\required-field
A3, \field Performance Interpolation Method
\type choice
\key Linear
\key Cubic
\default Linear
N1, \field Rated Total Cooling Capacity
\note Not yet implemented / reserved for future use. Full load cooling capacity at AHRI 210/240 "A" test conditions.
\note Used to scale representation data.
\type real
\units W
\minimum> 0.0
\autosizable
\default autosize
N2; \field Rated Steady-State Heating Capacity
\note Not yet implemented / reserved for future use. Full load heating capacity at AHRI 210/240 "H1" test conditions.
\note Used to scale representation data.
\type real
\units W
\minimum> 0.0
\autosizable
\default autosize

Coil:Cooling:DX:SingleSpeed,
\memo Direct expansion (DX) cooling coil and condensing unit (includes electric compressor
\memo and condenser fan), single-speed. Optional inputs for moisture evaporation from wet
Expand Down
3 changes: 3 additions & 0 deletions src/EnergyPlus/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

if(WIN32)
configure_file(energyplus.rc.in "${CMAKE_CURRENT_BINARY_DIR}/energyplus.rc")
configure_file(energyplusapi.rc.in "${CMAKE_CURRENT_BINARY_DIR}/energyplusapi.rc")
Expand Down Expand Up @@ -131,6 +132,8 @@ set(SRC
Coils/CoilCoolingDXCurveFitOperatingMode.hh
Coils/CoilCoolingDXCurveFitPerformance.cc
Coils/CoilCoolingDXCurveFitPerformance.hh
Coils/CoilCoolingDXAshrae205Performance.cc
Coils/CoilCoolingDXAshrae205Performance.hh
Coils/CoilCoolingDXCurveFitSpeed.cc
Coils/CoilCoolingDXCurveFitSpeed.hh
CondenserLoopTowers.cc
Expand Down
Loading
Loading