EnergyPlus Example
This example simply verifies that EnergyPlus will run a building model, and communicate over HELICS with an agent and message tracer. To run and plot it:
./runh.sh
python3 plots.py
In addition, traced messages will be written to recorder and log files.
Subdirectories:
eplusHelicsExample; custom-built HELICS example for testing
forSchoolBase; custom-built school dual controller EMS files for FNCS and HELICS
Windows; helper scripts to run on Windows (no longer supported outside of Docker or VM)
File Directory:
archivedEms.idf; original version of the custom-built school dual controller EMS (deprecated)
batch_ems_case.sh; top-level script that simulates all reference buildings with EMS; calls run_seasonal_cases.sh
batch_plots.sh; top-level script that plots all reference buildings with EMS; calls seasonal_plots.sh
bridge_eplus_agent.json; configuration file for runfh_bridge.sh example (deprecated)
clean.sh; script that removes output and temporary files
compile_png.py; compiles all plots from batch_plots.sh into a Word document
eplus.yaml; FNCS configuration for EnergyPlus
eplus_agent.yaml; FNCS configuration for EnergyPlus agent
eplus_agentH.yaml; HELICS configuration for EnergyPlus agent
eplusH.json; HELICS configuration for EnergyPlus
helicsRecorder.json; JSON configuration of the HELICS recorder
helicsRecorder.txt; text configuration file for the HELICS recorder (deprecated)
kill23404.sh; helper script that stops processes listening on port 23404 for HELICS (Linux/Mac)
kill5570.sh; helper script that stops processes listening on port 5570 for FNCS (Linux/Mac)
make_all_ems.sh; after run_baselines.sh, this script produces the EMS programs in separate IDF files
make_ems.sh; makes a single EMS program from the contents of ‘output’, which typically comes from SchoolBase.idf
plots.py; makes 1 page of plots for a case; eg ‘python plots.py’
prices.txt; sample price changes, published over FNCS to the building’s transactive agent
README.md; this file
run.sh; Linux/Mac script for the case using FNCS (deprecated)
run2.sh; FNCS version of the secondary school building the auto-generated EMS
run_baselines.sh; simulate the reference buildings for one year, in preparation to make EMS programs
run_ems_case.sh; runs a single HELICS-based reference building with given dates and price response
run_seasonal_cases.sh; calls run_ems_case.sh for one reference building, summer and winter, with and without price response
runfh_bridge.sh; runs FNCS EnergyPlus, bridged through a dual agent to HELICS federates (deprecated)
runh.sh; Linux/Mac script for the case using HELICS
SchoolBase.idf; custom-built school building without the EMS
seasonal_plots.sh;
tabulate_responses.py;
tracer.yaml; FNCS configuration for the message tracing utility
Copyright (c) 2017-2023 Battelle Memorial Institute