NatLabRockies / NatLabRockies/OpenStudio
Daylighting Controls translator should default to space name not zone name
@jmarrec is already working on this.
Since Mar 28, 2023.
- Dominant language
- C++
- Stars
- 646
- Forks
- 237
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 10
Description
Issue overview
This issue was uncovered in openstudio-standards testing, specifically this test.
The model fails in EnergyPlus, because space daylighting objects are binned together into a zone daylighting control. But the daylighting controls in the thermal zone don't share the same enclosure, which throws an error in EnergyPlus.
Current Behavior
The test errors applying daylighting controls to a multi-story multifamily building. This user model has 4 levels of corridor spaces, all stacked on top of each other, that share a thermal zone.
The baseline daylighting control method adds daylight sensors to the space, which looks like this in the .osm:
OS:Daylighting:Control,
{02c2d90d-4494-4271-b85f-0cd2a9d80e00}, !- Handle
L1-N_corr Daylt Sensor 1, !- Name
{51e9fe26-905f-4282-b172-07bd4e347c4e}, !- Space Name
-65.1304982249999, !- Position X-Coordinate {m}
-2.667, !- Position Y-Coordinate {m}
0.762, !- Position Z-Coordinate {m}
, !- Psi Rotation Around X-Axis {deg}
, !- Theta Rotation Around Y-Axis {deg}
, !- Phi Rotation Around Z-Axis {deg}
375, !- Illuminance Setpoint {lux}
Stepped, !- Lighting Control Type
0.3, !- Minimum Input Power Fraction for Continuous Dimming Control
0.2, !- Minimum Light Output Fraction for Continuous Dimming Control
3, !- Number of Stepped Control Steps
1, !- Probability Lighting will be Reset When Needed in Manual Stepped Control
, !- Number of Daylighting Views
22; !- Maximum Allowable Discomfort Glare Index
OS:Daylighting:Control,
{0627b45e-c5cf-4e5f-9382-2a95c4aad47e}, !- Handle
L1-N_corr Daylt Sensor 2, !- Name
{51e9fe26-905f-4282-b172-07bd4e347c4e}, !- Space Name
-63.7946585443181, !- Position X-Coordinate {m}
-2.667, !- Position Y-Coordinate {m}
0.762, !- Position Z-Coordinate {m}
, !- Psi Rotation Around X-Axis {deg}
, !- Theta Rotation Around Y-Axis {deg}
, !- Phi Rotation Around Z-Axis {deg}
375, !- Illuminance Setpoint {lux}
Stepped, !- Lighting Control Type
0.3, !- Minimum Input Power Fraction for Continuous Dimming Control
0.2, !- Minimum Light Output Fraction for Continuous Dimming Control
3, !- Number of Stepped Control Steps
1, !- Probability Lighting will be Reset When Needed in Manual Stepped Control
, !- Number of Daylighting Views
22; !- Maximum Allowable Discomfort Glare Index
This gets translated to this object in EnergyPlus:
Daylighting:Controls,
Thermal Zone: L1-N_corr DaylightingControls, !- Name
Thermal Zone: L1-N_corr, !- Zone or Space Name
, !- Daylighting Method
, !- Availability Schedule Name
Stepped, !- Lighting Control Type
0.3, !- Minimum Input Power Fraction for Continuous or ContinuousOff Dimming Control
0.2, !- Minimum Light Output Fraction for Continuous or ContinuousOff Dimming Control
3, !- Number of Stepped Control Steps
1, !- Probability Lighting will be Reset When Needed in Manual Stepped Control
L1-N_corr Daylt Sensor 1, !- Glare Calculation Daylighting Reference Point Name
-0, !- Glare Calculation Azimuth Angle of View Direction Clockwise from Zone y-Axis {deg}
22, !- Maximum Allowable Discomfort Glare Index
, !- DElight Gridding Resolution {m2}
L1-N_corr Daylt Sensor 1, !- Daylighting Reference Point Name 1
0.135, !- Fraction of Lights Controlled by Reference Point 1
375, !- Illuminance Setpoint at Reference Point 1 {lux}
L1-N_corr Daylt Sensor 2, !- Daylighting Reference Point Name 2
0.106, !- Fraction of Lights Controlled by Reference Point 2
375; !- Illuminance Setpoint at Reference Point 2 {lux}
When this run, it hits this error in EnergyPlus:
Daylighting:Controls: invalid Zone or Space Name="THERMAL ZONE: L1-N_CORR" All spaces in the zone must be in the same enclosure for daylighting.
This issue appears similar to #4786
Expected Behavior
Daylight control object should retain its space assignment in EnergyPlus, not its parent thermal zone. Daylight depends on space geometry, and lots of spaces could be part of the same thermal zone.
Steps to Reproduce
- Run the above openstudio-standards test in OSv3.5.1 or above.
Possible Solution
I suggest having the default translate each OS:Daylighting:Control object to its own space-level Daylighting:Controls in EnergyPlus.
Details
Environment
Some additional details about your environment for this issue (if relevant):
- Platform (Operating system, version): Windows
- Version of OpenStudio (if using an intermediate build, include SHA): OSv3.5.1
Context
This is causing testing errors in App G baseline methods in openstudio-standards.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.