What control strategies exist for peak shaving and how can they be implemented in EnergyPlus?
I have been using a system to smooth power demand in the winter design week by sizing a boiler (variable kW) with an auxiliary storage tank (fixed volume) to just meet a defined number of unmet hours (by manually changing the boiler size until the unmet hours goal is just met). This achieves my goal of limiting peak demand and smoothing demand across the design week. The effect is that the boiler runs almost continuously to keep the tank just charged up enough to meet the load.
The purpose of this is that the profiles are being used in an electricity and gas network modelling exercise and the results of interest to the network costs optimisation tool are peak electricity and gas use (modelling ASHP, gas boilers, electric storage heaters, etc in combination with various storage tanks). I actually expect total energy use to go up, due to standing losses from the tank, but that's not the prime concern for this model.
Are there any ways of achieving this continuous running in periods other than the winter design week by modulating the output of the boiler? The problem is that when running for the full year the boiler runs at fairly high power until the tank is fully charged. This obviously takes much less time when the daily/weekly heating demand is lower. I'm thinking of things like how to implement weather compensation in EnergyPlus, though any other approaches would be welcome.
Edited is in response to @Julien Marrec's comments
The tank I'm working with at the moment is a WaterHeater:Mixed
with no internal heating element. The deadband is set to 5°C. The boiler (and potentially a secondary boiler) feeds the tank via a heat exchanger and doesn't supply anything else. The Source Side Flow Control Mode
is whatever the default is - it's a little unclear in the docs (I'm using 8.1) but I think it's IndirectHeatPrimarySetpoint
.