volttron energyplus agent - us department …. volttron...co-simulation for building controls...

12
- - VOLTTRON TM ENERGYPLUS TM AGENT For Co-Simulation and Control Validation CHAD CORBIN, PH.D. Pacific Northwest National Laboratory VOLTTRON™ 2016 PNNL SA 120038 August 11, 2016 1

Upload: hacong

Post on 20-Jul-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

- -

VOLTTRONTM ENERGYPLUSTM AGENT For Co-Simulation and Control Validation

CHAD CORBIN, PH.D. Pacific Northwest National Laboratory VOLTTRON™ 2016

PNNL SA 120038 August 11, 2016 1

Page 2: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Co-Simulation for Building Controls Development and Validation

VOLTTRONTM EnergyPlusTMAgent ► Federates message exchange between

VOLTTRONTM applications and EnergyPlusTM

► Enables “hardware in the loop” testing of algorithms before deploying to buildings ■ Rapid prototype of algorithms ■ Validate ■ Build confidence ■ Test range of operating conditions

EnergyPlusTM

► Whole building energy simulation program ► Residential to large commercial ► Energy systems can be controlled through

BCVTB interface

August 11, 2016 2

Page 3: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

VOLTTRONTM EnergyPlusTM

Communication Flow

VOLLTRONMessage Bus (PS)

VOLL

EnergyPlus (Building Model)

TRON Message Bus (RPC)

Your VOLTTRON

Agent(s)

VOLTTRON EnergyPlus

Agent

BSDSocket

VOLTTRON Device Driver Agent

VOLTTRON Your

Interface Agent

VOLTTRON EnergyPlus

Agent

VOLLTRON Message Bus (RPC)

August 11, 2016 3

Page 4: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Multiple Input Interfaces for Application Flexibility

► PubSub Interface ■ Useful for quick and dirty

development and testing

■ When you need additional abstraction between “building” and application

■ NOT the same as the old Actuator pubsub method

► Actuator (RPC) Interface ■ Looks and behaves like an

actuator ■ No schedule checking

August 11, 2016 4

Page 5: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Mimics Building Automation System Output

► PubSub Interface ■ Configurable output format ■ Point by point, grouped into topics

August 11, 2016 5

Page 6: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Communication with EnergyPlusTM uses BCVTB Interface

August 11, 2016 6

► Message passing happens behind the scene – you don’t need to worry about that ■ Details of BCVTB interface are documented in the EnergyPlusTM

External Interface(s) Application Guide ■ Required BCVTB library distributed with agent ■ BCVTB has JAVA dependency

► You must configure your IDF (EnergyPlusTM model) to import and export variables

► Agent must be configured to import and export the same variables

► You still need to know how to use EnergyPlusTM! ■ Agent doesn’t model buildings, just connects to, and exchanges information with,

existing models

Page 7: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

interaction EnergyPlus Simulation

YourApplication EnergyPlusAgent EnergyPlusIVOLTTRON I I

l :_init_ ~ ·~

:( ~! '------------------. 2 : loadConfig

3 : return

i 4 :_init_

:( ----------------------------------~-~S : ~d~~g6 : return

r i; ~:__on_ tart------------~~~J,,' = _S-LJ B : subscribe

9 : onStart

11 : writeBCVTB~nfig

12 : writeSocket~nfig

13 : startSocketServer

14 : startSimulation

17 : writeBCVTBMessage

16 : initialize

18 : parseBCVTBMessage ,....:.,.e:----------.....--------r,..r-­

19 : publish

loop for each timestep 20 : yourApplicationl ogic

......--........----------'-----------~ alt

(allTopcisUpdated == True)

(until simulation ends)

22 : writeBCVTBMessa e 21 : rpc.call

23 : stepForward

(else) ~24 : wait

25 : writeBCVTBMessage 26 : parseBCVTBMessage

27 : publish

Page 8: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

BSD Socket Communication with EnergyPlusTM

► Agent creates socket server to exchange data with EnergyPlusTM

Page 9: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

interaction EnergyPlus Simulation

IVOLTTRON I I

YourApplication EnergyPlusAgent

l :_init_ ., ~·

~!'-----------------­ 2 : loadConfig :E . 3 : return

i 4 :_init_

----------------------------------.,-~s : ~d~~g:E 6 : return

rJ,,i'; ~:_=_o_n_S-tart------------~.,~ LJ B : subscribe

9 : onStart

11 : writeBCVTB~nfig

12 : writeSocket~nfig

13 : startSocketServer

14 : startSimulation

18 : parseBCVTBMessage ,....:.,.e:-------------------r,..r-­

19 : publish

loop for each timestep 20 : yourApplicationlogic

......--........----------'-----------~ (until simulation ends) alt

(allTopcisUpdated == True)

21 : rpc.call

(else) ~24 : wait

26 : parseBCVTBMessage

27 : publish

EnergyPlus

16 : initialize

17 : writeBCVTBMessage

22 : writeBCVTBMessa e

23 : stepForward

25 : writeBCVTBMessage

Page 10: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Agent Synchronizes Inputs to EnergyPlusTM

► Regardless of input method, agent waits until all required inputs are updated before sending message to EnergyPlusTM

Page 11: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Multi-Agent Transactive Market Structure

August 11, 2016 11

Page 12: VOLTTRON ENERGYPLUS AGENT - US Department …. VOLTTRON...Co-Simulation for Building Controls Development and Validation VOLTTRON TM EnergyPlus TM Agent Federates message exchange

Multi-Agent Transactive Market Demo with EnergyPlusTM

12