-
Notifications
You must be signed in to change notification settings - Fork 209
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
Space load-based actuator for spaces are named based on thermal zone name #4786
Comments
Should use
|
This was tricky back in the day because OS didnt use ZoneLists, but E+ did, etc. The constructors were built with the following OpenStudio/src/model/EnergyManagementSystemActuator.hpp Lines 62 to 72 in 99e001d
|
I would look at the constructor first to make sure the assumptions are still valid, given the space changes in E+, etc |
@lymereJ Note that in your "Steps to Reproduce" section above, the |
yeah, i think the light object goes first, and the TZ or space goes last. |
@joseph-robertson - You're correct, may bad. The code that I have in "Steps to Reproduce" generates the following actuator (incorrect as well), not the one that's in "Current Behavior". Not sure why I put
I'll correct that line in "Step to Reproduce". Thanks! |
@lymereJ is an option for you now to just disable the space feature when forward translating? |
Shouldn't these take in a SpaceLoadInstance instead of a ModelObject given the comment? I could see it going really wrong... |
@jmarrec, I believe that we don't want to do that, this is for OpenStudio-Standards. I'll let @mdahlhausen confirm. |
yeah, that's not a workable solution. People are build models using openstudio-standards, often in third-party software. I don't want to require third-party developers to have to disable the space feature when forward translating. Especially for end-users who might not know how to disable it. |
OK. I'm asking because this is marked as blocker, we're close to release date, and we have the existing API to retain. |
not sure if this helps with the debugging, but here is a measure that reproduces the EMS Demand Management example#9 and uses the Actuator on the lights object. |
I'm going to try to see if there is a workaround in openstudio-standards. |
i just checked and this does work in OS <=3.2 but not in OS 3.5.1 require 'openstudio' light = space1.spaceType.get.lights[0] ft = OpenStudio::EnergyPlus::ForwardTranslator.new my bet it has something to do with no more ZoneLists or the new spaces |
my guess is to use the space.name https://github.com/NREL/OpenStudio/blob/develop/src/energyplus/ForwardTranslator/ForwardTranslateEnergyManagementSystemActuator.cpp#L124 and something similiar here https://github.com/NREL/OpenStudio/blob/develop/src/energyplus/ForwardTranslator/ForwardTranslateEnergyManagementSystemActuator.cpp#L105 |
Some more context: In OS 3.2.1:
actuated component is:
which is used by this space type object:
The test passes but generates this warning from the forward translator: What appears in the .idf:
All of the actuators point to the same shared lights object. That's a bug. And it errors out now in OS 3.5.1:
It seems there are two issues here:
I think I can fix openstudio-standards by creating individual space light objects in OS 3.5.1, which means this issue is no longer a blocker. @lymereJ correct me here if you don't think that's possible. |
@lymereJ @jmarrec Update: I've got a decent workaround implemented in openstudio-standards. I clone the space type lights object to each individual space. Works with both OSv3.2.1 and OSv3.5.1. Given the workaround, this issue is no longer an OpenStudio blocker for openstudio-standards. |
Fix #4786 - Space load-based actuator for spaces are named based on thermal zone name
Issue overview
The actuated component unique name of EMS:Actuator objects in EnergyPlus is determined by OS during the forward translation process. The name appears to be based on the zone name and load object (Lights in the example below) name, even for spaces. However, when spaces are used in a model, EnergyPlus expected the name of the actuator to refer to the space name, not the zone name
Current Behavior
The code snippet below creates the following actuator ....
Expected Behavior
... but it should be:
Steps to Reproduce
Possible Solution
Do not use the thermal zone name by default here.
Environment
Some additional details about your environment for this issue (if relevant):
Context
Affects NREL/openstudio-standards#1395.
The text was updated successfully, but these errors were encountered: