This part of the system model adds to the model that is implemented in Buildings.Examples.Tutorial.Boiler.System3 closed loop control for the pumps and the boiler. The control valves are still open loop control.
This model was built as follows:
First, we copied the model
Buildings.Examples.Tutorial.Boiler.System3
and called it
Buildings.Examples.Tutorial.Boiler.System4
.
Next, we added the outdoor temperature sensor senTOut
,
which we will use to disable the plant when the outdoor temperature
is warmer than 17°C.
This is implemented by the instances hysTOut
and
not2
, whose output signal is connected
to the block and1
as shown in the figure below.
Similar to the control of the radiator pump, we used a boolean to real converter, followed by a first order filter, to set the mass flow rate of the boiler pump.
Next, for the boiler on/off control, we use again a hysteresis block
(instance hysTBoi
), which we configured as
Buildings.Controls.OBC.CDL.Reals.Hysteresis hysTBoi(uLow=273.15 + 70, uHigh=273.15 + 90) "Hysteresis for on/off of boiler";
The output of the hysteresis block is sent to the instance
not3
, which negates its input signal.
The output signal of the not3
instance is then sent to the
and2
block, which ensures that the boiler is only
on when the pumps are on and the temperature is below
70°C, and that the boiler is off if its temperature reaches 90°C.
Therefore, the boiler control sequence is as shown below.
This completes the closed loop control of the boiler and the pumps. When simulating the model for 2 days, or 172800 seconds, the response shown below should be seen.
The figure shows that the return water temperature
temRet.T
is below
50°C for quite some time when the system heats up.
Furthermore, the supply water temperature
temSup.T
is oscillating with the boiler temperature.
We will fix these issues by adding closed loop control for the valves in model
Buildings.Examples.Tutorial.Boiler.System5.
Name | Description |
---|---|
Medium model |
Modelica.Fluid.System
to address issue
#311.