3

I am implementing a solar collector and would like to turn the pump on/off based on the differential temperature between the collector outlet and the water storage tank - is this possible in Open Studio

In EnergyPlus, I could use an Availability Manager to control the collector circulating pump based on a temperature difference. However, I cannot find Availability Manager capability in Open Studio. Am I overlooking something? If this feature is not yet available, is there a workaround to accomplish the same functionality? I suppose that I could export the IDF file and then edit in IDF Editor to add the feature I want but then I think I would be precluded from doing additional modeling in OS. Any suggestions or citations to references would be appreciated.

michael's avatar
41
michael
asked 2017-12-04 21:39:06 -0500
__AmirRoth__'s avatar
4.4k
__AmirRoth__
updated 2017-12-05 15:15:07 -0500
edit flag offensive 0 remove flag close merge delete

Comments

add a comment see more comments

2 Answers

0

You could use E+ measure. Please see that answer.

Avi's avatar
4.3k
Avi
answered 2017-12-05 18:14:07 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments
0

AvailabilityManager:DifferentialThermostat is already implemented in OpenStudio and has been for quite a while, but it isn't available in the OS App though, so you need to use the API via a measure (or load the ruby bindings in a terminal, whatever). Here's some dummy code to give you an example of how the avm works:

m = OpenStudio::Model::Model.new
p = OpenStudio::Model::PlantLoop.new(m)
p2 = OpenStudio::Model::PlantLoop.new(m)

s = OpenStudio::Model::SolarCollectorFlatPlateWater.new(m)
p.addSupplyBranchForComponent(s)

wh = OpenStudio::Model::WaterHeaterMixed.new(m)
p.addDemandBranchForComponent(wh)
p2.addSupplyBranchForComponent(wh)


avm = OpenStudio::Model::AvailabilityManagerDifferentialThermostat.new(m)
avm.setHotNode(p.supplyOutletNode)
avm.setColdNode(wh.supplyInletModelObject.get.to_Node.get)

avm.setTemperatureDifferenceOnLimit(10)
avm.setTemperatureDifferenceOffLimit(2)

FYI, you might be interested in this Pull Request I have made #2844, where I added every missing availability managers to openstudio, as well as the ability to add several (currently one only is allowed) AVMs for a given plant loop. This will allow to properly control Solar collector loops (and many more).

It got merged in develop so should be available in the upcoming new release of OpenStudio.

Julien Marrec's avatar
29.7k
Julien Marrec
answered 2017-12-06 01:26:53 -0500, updated 2017-12-06 03:22:28 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments