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

Energy storage dispatch

asked 2018-06-05 21:29:41 -0500

love123's avatar

updated 2020-01-25 18:22:47 -0500

How can I model within an OS measure using ElectricLoadCenterStorageSimple an energy storage dispatch profile i.e. peak shaving. I have looked at the Schedule options but none seem to be a good fit. Any suggestions?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2018-08-22 02:35:59 -0500

The ElectricLoadCenter:Storage:Simple models the characteristic of a (very) simple electric battery object in an ElectricLoadCenter:Distribution (ELCD). How that Storage object is controlled is actually defined in the ELCD itself, see the I/O ref guide for Storage Operation Scheme in particular (depending on what you pick here, you'll have to use some others field in that object in conjunction). You also need to pay attention to the electrical buss type as you need to pick one that allows for a storage object, and may require a ELCD:Storage:Converter too.

OpenStudio has a set of regression tests hosted publicly on GitHub at NREL/OpenStudio-resources that are also great resources to demonstrate use of API for objects.

I wrote two tests in there (each has a ruby (API) version and the resulting .osm file, so you'll find 4 files): pv_and_storage_demandleveling and pv_and_storage_facilityexcess.

For peak shaving, see pv_and_storage_facilityexcess.rb where I basically try to limit the demand to 250 kW via the storage object, that could be a good starting point for you.

edit flag offensive delete link more


Thanks for the answer above it allowed me to run the simulation and get no errors in run time. However after the simulation is completed I looked to find the output variable data for the energy storage but they don't show up in the .eso file. Also the energy and power consumption hasn't changed pre or post energy storage asset measure and therefore seems to have ignored the measure completely. Upon further investigation I identified the following error from the .err file, perhaps this is the reason for the items above? Any suggestions to resolve move welcome.

love123's avatar love123  ( 2018-09-06 21:50:17 -0500 )edit

*** Simulation Error Summary **** Warning * The following Report Variables were requested but not generated -- check.rdd file * ~~~ * Either the IDF did not contain these elements, the variable name is misspelled, * ~~~ * or the requested variable is an advanced output which requires Output : Diagnostics, DisplayAdvancedReportVariables; *** Key=, VarName=ELECTRIC STORAGE CHARGE ENERGY, Frequency=Hourly *** Key=, VarName=ELECTRIC STORAGE PRODUCTION DECREMENT ENERGY, Frequency=Hourly .......AND SO ON....

love123's avatar love123  ( 2018-09-06 21:51:00 -0500 )edit

Anybody got any tips to the error described in the comment above?

love123's avatar love123  ( 2018-10-01 16:38:26 -0500 )edit

Check the resulting, generated, IDF file to ensure that the objects were properly forward translated. And check the log, to see if you don't have forward translation warnings such as "This object will not be forward translated because X or Y". There are a bunch of runtime checks to ensure that your objects have sensible inputs (eg, if you set the bus load to a bad value given the objects attached to the ELCD, etc)

Julien Marrec's avatar Julien Marrec  ( 2018-10-02 02:26:01 -0500 )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



Asked: 2018-06-05 21:29:41 -0500

Seen: 339 times

Last updated: Aug 22 '18