Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Electrochromic Windows in OpenStudio with more than two states.

asked 2018-12-17 17:07:00 -0600

I'm wondering if there is a way to model electrochromic windows with more than two tint states in OpenStudio. I'm generating schedules for tint state using a separate program, so the windows would be controlled using a csv schedule. With energy plus I'd change the construction using the EMS, but not sure if/how to accomplish this with OpenStudio and more than two tint states.

edit retag flag offensive close merge delete

4 Answers

Sort by ยป oldest newest most voted

answered 2018-12-20 13:05:44 -0600

ChrisBalbach gravatar image

A recommended generalized workflow for exercising/examining the results of the OpenStudio Example EMS measures is as follows:

Recommended Workflow Step (1): Inside the "tests" subfolder of each example OpenStudio EMS measure, you will find an OpenStudio file titled mxx_wo_EEM..osm

Use the OS Application to open this .osm file, save it elsewhere, and execute a simulation against it. Some .osm files will take longer then others to simulate, running a "design day" only run is sufficient as the goal is to retrieve the "in.osm" and "in.idf" files generated and stored in the "run" subdirectory of the OpenStudio model results.

Recommended Workflow Step (2a) Use the Openstudio "Apply Measure Now" functionality to apply the OpenStudio EMS measure to the model executed in step (1) to the model. Initially (to support learning), consider configuring the OpenStudio EMS measure arguments to ask for "verbose" outputs. Beware, for some measures, this can create very large output files associated with EnergyPlus EMS output. Carefully study the OpenStudio 'generated "Info" messages that the Apply Measure Now workflow generates. Save the altered .osm file as a new name, then execute the simulation. In addition to carefully reviewing the "measure.rb" file associated with the OpenStudio EMS measure, use a 'diff' tool to compare the "in.osm" and "in.idf" files generated by step (1) and step (2a).

The set of measures in the repository were initially were tested using this prescribed workflow and I have confirmed that m13 runs successfully in this manner using OS 2.7.1, Windows 7Pro, 64bit.

Alternative Workflow Step (2b) Use the OpenStudio Application "Apply Sidecar Measure" feature to add the Openstudio EMS measure to the OpenStudio workflow of your model. This method is more fragile then theworkflow using (2a), especially when leaning, as the OpenStudio EMS measure may fail if a previously applied measure alters the 'seed' .osm model in a way the OpenStudio EMS measure did not anticipate. In this case, the EMS measure may complete but EnergyPlus may fail in a very ungraceful manner. For example, consider an OpenStudio measure that removes all window surfaces from a model, and an OpenStudio EMS measure that alters the properties of a specific window. Results will differ, depending on how these measures are ordered/stacked. The EMS measure will kindly throw a flag and write a N/A message if a model with no surfaces to apply it to is detected, but other scenarios will likely slip through the 'edge-case trapping' logic, as it was not designed to be exhaustive.

To return to the focus of the question - consider using workflow (2a) to learn how the OpenStudio EMS measure articulates a "seed" model, review (diff) the input file results after applying the measure to your model, review the output results to ensure you are getting what you expected, then consider cloning the example measure or pirating sections of ruby snippets and modifying them to suit your unique use-case.

edit flag offensive delete link more

answered 2018-12-17 17:53:13 -0600

if you are doing it in E+, then you can do it in OS. Check out for OS versions of the E+ EMS examples

edit flag offensive delete link more


@BrianLBall Thank you for the link. All the EMS script is viewable only when we open the .osm file in a text editor? Is that correct? I am trying to understand how are the EMS script applied to the OSM?

Ranjani gravatar imageRanjani ( 2018-12-18 18:53:44 -0600 )edit

So those are OpenStudio Measures and some documentation on them can be found here

BrianLBall gravatar imageBrianLBall ( 2018-12-19 10:01:44 -0600 )edit

If I create a measure that uses the EMS to control electrochromic in nine tint states using a csv schedule, can I apply it to other models, changing just the csv schedule?

Andyrew gravatar imageAndyrew ( 2018-12-19 11:51:31 -0600 )edit

That sounds possible. One way would be to have the csv file name as an argument to the measure which would then go find that specific file.

BrianLBall gravatar imageBrianLBall ( 2018-12-19 11:56:13 -0600 )edit

early on, it can be useful to just do the measure as a "one off", get it to work, and then see what needs to be parameterized to make it applicable to multi-models.

BrianLBall gravatar imageBrianLBall ( 2018-12-19 11:57:25 -0600 )edit

answered 2018-12-17 17:38:13 -0600

Are you intending to only use EnergyPlus for the simulations, or were you hoping to use Radiance in the workflow as well? If the former, I think my colleagues have some leads for you. It may be that you simply use an EnergyPlus measure to add the schedule to the window construction; if the latter, the answer is 'no'.

edit flag offensive delete link more


I'm only using EnergyPlus.

Andyrew gravatar imageAndyrew ( 2018-12-17 17:48:00 -0600 )edit

answered 2018-12-19 12:51:24 -0600

Ranjani gravatar image

@BrianLBall I was testing the EMS script with Example 13: m_13_example_13_surface_construction_actuator_for_thermochromatic_window. I used the m13_seed.osm and using 'Apply measure now' i imported the EMS script for this example. It wasnt sucessful and got the following error. ! image description

Am I missing something? Can you please help me with this? Thanks

edit flag offensive delete link more


so that is bombing out here which is trying to load the idf in the /resources folder. That is E+ version 8.9. What OS version are you using?

BrianLBall gravatar imageBrianLBall ( 2018-12-19 15:23:29 -0600 )edit

have you also tried running it in the workflow with a model? I'm wondering if it doesnt work with 'apply measure now' but only at runtime

BrianLBall gravatar imageBrianLBall ( 2018-12-19 15:27:08 -0600 )edit

@BrianLBall I am using Openstudio v2.6. Should I convert the file to another version?

Ranjani gravatar imageRanjani ( 2018-12-19 15:29:36 -0600 )edit

Can I copy the EMS script manually to the OSM file? or import it as an idf?

Ranjani gravatar imageRanjani ( 2018-12-19 15:32:38 -0600 )edit

OS 2.6 uses E+ 8.9, so that should be okay. Try running the measure by adding to the workflow in the measures tab

BrianLBall gravatar imageBrianLBall ( 2018-12-19 15:35:26 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer


Question Tools

1 follower


Asked: 2018-12-17 17:07:00 -0600

Seen: 252 times

Last updated: Dec 20 '18