Outside air reset for a boiler with a primary-secondary loop
What is the recommended method to implement outside air reset for a boiler with a primary-secondary loop, and a storage tank (i.e. un-fired Water Heater (WH)) connecting the loops? This is more complicated than a primary-only loop since there are two setpoint managers (SPM).
The below scenario worked best for me. I couldn't get the idle boiler return water to track the tank temperature as close as I think it should (it is proportional but offset by ~5°F), but perhaps that is moot since my BoilerEfficiencyCurve
is flat.
- Primary loop pump is intermittent constant speed, and flow rate is auto-sized.
- Secondary loop pump is continuous constant speed at a selected flow rate of 40 gpm.
- The boiler is constant flow, `BoilerEfficiencyCurve' is constant, minimum part load ratio (PLR) is 1, the water delta is 20°F, and the design outlet water temperature is 150°F.
- Un-fired WH has a source side effectiveness of 1.
- The secondary loop serves domestic hot water and heating hot water coils.
- Primary loop SPM: An SPM:Scheduled at ~>10°F than the highest secondary loop supply water temperature during the year. I used 145°F per the screenshot below. In reality, my 20°F-delta intermittent-constant-flow boiler return water temperature should track the tank temperature when idle (it is proportional but offset by ~5°F), and yield a 20°F delta when firing (it does the latter). A dual setpoint SPM in the primary loop didn't help.
- Secondary loop setpoint control: A custom outside air (OA) reset OS:Schedule:FixedInterval, since OA reset SPMs can't be applied to WH objects. My maximum setpoint is 135°F, my minimum setpoint is 120°F, and my WH differential is 5°F.