Available via license: CC BY
Content may be subject to copyright.
Received: 10 October 2019 Revised: 27 November 2020 Accepted: 20 March 2021
DOI: 10.1002/oca.2728
RESEARCH ARTICLE
Experimental operation of a solar-driven climate system
with thermal energy storages using mixed-integer
nonlinear model predictive control
Adrian Bürger1,2,3 Daniel Bull1Parantapa Sawant4
Markus Bohlayer2,5 Andreas Klotz1Daniel Beschütz1
Angelika Altmann-Dieses1,2 Marco Braun1,2 Moritz Diehl3,6
1Faculty of Management Science and
Engineering, Karlsruhe University of
Applied Sciences, Karlsruhe, Germany
2Institute of Refrigeration,
Air-Conditioning, and Environmental
Engineering (IKKU), Karlsruhe University
of Applied Sciences, Karlsruhe, Germany
3Systems Control and Optimization
Laboratory, Department of Microsystems
Engineering (IMTEK), University of
Freiburg, Freiburg im Breisgau, Germany
4Institute of Energy Systems Technology
(INES), Offenburg University of Applied
Sciences, Offenburg, Germany
5Professorship of Economics (Industrial
Organization and Energy Markets),
Friedrich-Alexander-Universität
Erlangen-Nürnberg, Nürnberg, Germany
6Department of Mathematics, University
of Freiburg, Freiburg im Breisgau,
Germany
Correspondence
Adrian Bürger, Institute of Refrigeration,
Air-Conditioning, and Environmental
Engineering (IKKU), Karlsruhe University
of Applied Sciences, Moltkestraße 30,
76133 Karlsruhe, Germany.
Email: adrian.buerger@hs-karlsruhe.de
Funding information
Bundesministerium für Umwelt,
Naturschutz und nukleare Sicherheit,
Grant/Award Number: 03KF0094A;
Bundesministerium für Wirtschaft und
Abstract
This work presents the results of experimental operation of a solar-driven cli-
mate system using mixed-integer nonlinear model predictive control (MPC).
The system is installed in a university building and consists of two solar thermal
collector fields, an adsorption cooling machine with different operation modes,
a stratified hot water storage with multiple inlets and outlets as well as a cold
water storage. The system and the applied modeling approach is described and
a parallelized algorithm for mixed-integer nonlinear MPC and a corresponding
implementation for the system are presented. Finally, we show and discuss the
results of experimental operation of the system and highlight the advantages of
the mixed-integer nonlinear MPC application.
KEYWORDS
experimental study, mixed-integer nonlinear programming, model predictive control, renewable
energy systems, solar thermal climate systems
This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the
original work is properly cited.
© 2021 The Authors. Optimal Control Applications and Methods published by John Wiley & Sons Ltd.
Optim Control Appl Meth. 2021;1–27. wileyonlinelibrary.com/journal/oca 1
2BÜRGER .
Energie, Grant/Award Numbers:
0324125B, 0324166B; Deutsche
Forschungsgemeinschaft, Grant/Award
Number: Research Unit FOR 2401;
INTERREG V Upper Rhine, Grant/Award
Number: Project ACA-MODES;
Ministerium für Wissenschaft, Forschung
und Kunst Baden-Württemberg,
Grant/Award Number: Az:
22-7533.-30-20/9/3; Reiner
Lemoine-Stiftung, Grant/Award Number:
1581440000956
1INTRODUCTION
The development of powerful control strategies for renewable energy systems is an important task, as these can increase
the efficiency of such systems, support their integration into the current supply systems, and with this, support the transi-
tion toward a sustainable energy supply. In particular, model predictive control (MPC) has been shown to be suitable for
control of such systems and demonstrated on various applications, for example, for microgrids,1,2 heat pump systems,3
energy systems in low energy buildings,4,5 and solar power plants.6,7
Within MPC-based control strategies, a model of the controlled system is used to determine a sequence of control
signals which are optimal for system operation regarding a defined control objective for a given time horizon, while
explicitly considering system dynamics, state and control boundaries, and the current system state.8With this, MPC
enables the identification of predictive and situation-dependent and individual control decisions9as well as the direct
incorporation of forecasts for demands10 and driving energy availability.11 These properties are favorable for operation of
renewable energy systems, which on the one hand often depend on external and immutable factors such as solar power
and wind,12 and on the other hand can include different storage technologies.13 This often renders MPC advantageous
for control of such systems in comparison to conventional, rule-based control strategies, cf. References 14 and 15.
Application of MPC requires the solution of optimization problems within real-time suitable time scales. As energy
systems often include components that show switching behavior, MPC in this context typically requires the fast solution
of mixed-integer optimization problems. These are typically formulated as either mixed-integer linear programs (MILPs)
or mixed-integer quadratic programs (MIQPs) to facilitate sufficiently fast solutions of these problems. Examples of simu-
lation studies can be found for multicriteria optimal operation of a microgrid16 and mixed-integer MPC of variable-speed
heat pumps.17 Examples of experimental studies are the exergy-based control of a heat exchanger within an energy sup-
ply system,18 experimental operation of a microgrid,19 and control of heating, ventilation, and air conditioning (HVAC)
systems20 and heating systems21 of buildings.
The use of linear(ized) modeling for MPC of energy systems yields several advantages, such as the availability of effi-
cient solution methods and software, as well as the existence of certain guarantees regarding the optimality of the obtained
solution, cf. Reference 22. However, the underlying processes are often characterized by nonlinear correlations. For
example, nonlinearities arise from the incorporation of nonlinear coefficient of performance (COP) considerations, uti-
lization of mass flows as control variables in models based on the first law of thermodynamics, or nonlinear distributions
of mass flows between components as a function of a pump and mixing valve operation. Due to that, the use of nonlinear
modeling facilitates improved system descriptions, which in turn could further improve the control decisions for a system.
However, utilization of nonlinear models of switched systems in this context typically gives rise to mixed-integer nonlin-
ear programs (MINLPs), which are hard so solve. Applications of mixed-integer nonlinear programming techniques can
be found within optimal scheduling applications for energy systems, for example, for building energy systems23,24 and
combined heat and power plants.25 For application within MPC, arising MINLPs need to be solved sufficiently fast for
real-time control of a considered system. For this task, application of general MINLP solvers is typically not favorable.26
Instead, approaches are presented in the literature that aim at obtaining a suboptimal, however, fast and typically approx-
imate solution of the original MINLP, cf. References 27-29. In a previous work,30 we presented a simulation study for
mixed-integer nonlinear MPC for a solar-thermal climate system using a decomposition approach presented by.26,31
However, the literature lacks real-life experiments in which the applicability of nonlinear MPC of switched renewable
energy systems is demonstrated in real-time.
BÜRGER . 3
In this work, we present the real-life experimental operation of such a system installed at Karlsruhe University of
Applied Sciences using mixed-integer nonlinear MPC. The system consists of solar thermal collector fields, an adsorption
cooling machine (ACM) with different operation modes, a stratified hot water storage with multiple inlets and outlets
as well as a cold water storage. Utilized for air conditioning of a part of the university building, the system operates
under real conditions. As the system shows highly nonlinear behavior, complex component interaction, delays, and strong
dependencies on external factors such as solar irradiation and ambient temperature, the plant is suitable for experimental
studies on mixed-integer nonlinear MPC of renewable energy systems.
The contributions of this work are as follows. First, we extend the model presented in our previous work30 and provide
insight on the control-oriented modeling of the solar thermal collector fields, which are connected in parallel and show
a nonlinear mass flow distribution as a function of pump and mixing valve operation, as well as on the modeling of the
stratified hot water storage with multiple inlets and outlets. Then, we introduce a parallelized and modified version of the
algorithm for mixed-integer nonlinear MPC used in our previous simulation study30 that enables faster updates of control
decisions and apply strategies for further decrease of algorithm runtime. Finally, we present and discuss experimental
results of real-time MPC operation for the physical system on a day with challenging operation conditions and highlight
the advantages of mixed-integer nonlinear MPC application for the system.
The remainder of this work is organized as follows. In Section 2, the solar thermal climate system subject to this
study is introduced, followed by a description of a control-oriented nonlinear model for the system in Section 3. The
mixed-integer nonlinear optimal control problem (OCP) for the system and a corresponding moving horizon estimation
(MHE) problem for state estimation are presented in Section 4, including a description of the applied solution methods,
MPC algorithm, and a selection of important implementation details. Finally, in Section 5, the results of experimental
operation of the system are shown and discussed. Section 6 concludes this article.
2DESCRIPTION OF THE SOLAR THERMAL CLIMATE SYSTEM
The system considered for this study is a solar-thermally-driven climate system installed at the Faculty of Management
Science and Engineering at Karlsruhe University of Applied Sciences. The system is operated for covering cooling loads of
the building’s atrium during summer time and for heating support during winter time. Within this study, we will focus on
summer operation, which is the more comprehensive case as it involves operation of more system components compared
to winter operation and in particular switching of the ACM. A more detailed description of the system and its components
is given in the upcoming sections.
2.1 Adsorption cooling machine
The central component of the system is a silica-gel/water ACM which is located in the cellar of the building, see Figure 1.
The ACM is connected to a recooling tower (RT) on the roof of the building which is operated in a frost-proof circuit,
see Figure 2, via a heat exchanger in the cellar further entitled as recooling tower heat exchanger (RTHX). The ACM can
operate in three different modes, which can only be switched on or off completely and whereof at most one mode can
be active at a time. Operation of the machine internal pumps and valves as well as the RT pump and fan speeds for each
mode are subject to a dedicated internal controller of the ACM.*
Running in adsorption cooling (AC) mode (bac =1), the ACM utilizes the heat from a stratified high-temperature storage
(HTS) with volume Vhts =2m
3to cool down a stratified low-temperature storage (LTS) with volume Vlts =1m
3,heatis
emitted through the RT. In this mode, cooling power and COP of an ACM depend on the inlet temperatures of the three cir-
cuits of the machine, while higher high temperature (HT)- and low temperature (LT)- and lower recooling-temperatures
are favorable.33
In times of low ambient temperature, the machine can run in a free cooling (FC) mode(bfc =1), which allows to cool
down the LTS via the RT. Using the third mode, which is entitled emergency cooling (EC) mode (bec =1), the ACM can be
utilized to cool down the HTS at the ambient via the RT to prevent overheating of the HTS, and with this, overheating of
the solar collectors.
*While we focus on the optimal switching of an ACM within this work, it should be noted that MPC can also yield large potential for optimization of
the internal processes of an ACM.32
4BÜRGER .
FIGURE 1 System components in the cellar of the building: (1) control cabinet, (2) low temperature storage, (3) adsorption cooling
machine, (4) high temperature storage, (5) pump Pssc,(6)pumpP
psc,(7)pumpP
lc, (8) solar heat exchanger, (9) recooling tower heat
exchanger, (10) inlet Ihts,t, (11) outlet Ohts,m, (12) outlet Ohts,b , (13) mixing valve Mssc, (14) outlet Ohts,t , (15) inlet Ihts,m, (16) inlet Ihts,b , (17)
mixing valve Macm [Colour figure can be viewed at wileyonlinelibrary.com]
FIGURE 2 System components on the roof of the building: (1) vacuum tube solar collectors, (2) sensor Tvtsc, (3) flat plate solar collectors,
(4) sensor Tfpsc, (5) recooling tower, (6) pyranometer and ambient temperature sensor [Colour figure can be viewed at wileyonlinelibrary.com]
The temperature at the inlets and outlets of the ACM and the current flows in each circuit are measured, as well as
the temperatures at the inlets and outlets of the RTHX and the outlet temperature of the RT.
2.2 High-temperature circuits
The heat stored in the HTS is collected by two roof-top solar thermal collector arrays as shown in Figure 2. One array
consists of horizontally placed vacuum tube solar collectors (VTSC) with total area Avtsc =31.2m
2and the other consists
of flat plate solar collectors (FPSC) with total area Afpsc =53.3m
2mounted at a 45◦angle facing south.
Both arrays are connected to a circuit entitled primary solar circuit (PSC) with approximate volume Vpsc =0.4m
3.The
PSC is filled with an anti-freeze brine and is separated from the indoor water circuits by a solar heat exchanger (SHX)
located in the cellar, see Figure 1. The amount of liquid flowing through the PSC and the individual collector arrays can
be controlled by modulating the speed vppsc of the pump Ppsc and the position pmpsc of the mixing valve Mpsc which is
located in the return line of the PSC. The water-filled circuit on the other side of the SHX is entitled the secondary solar
circuit (SSC) and is directly connected to the HTS. The amount of liquid flowing through the SSC can be controlled by
modulating the speed vpssc of the pump Pssc.
Water returning from the SHX to the HTS in the SSC is always supplied into the top inlet Ihts,t of the HTS as shown in
Figure 1. However, the water flowing toward the SHX can be extracted from the middle outlet Ohts,m, the bottom outlet
Ohts,b, or a combination of both, depending on the position pmssc of the mixing valve Mssc. For hot water supply of the ACM
the top outlet Ohts,t of the HTS is used. The water returning from the ACM to the HTS can be inserted into the middle
inlet Ihts,m, the bottom inlet Ihts,b, or a combination of both, depending on the position pmacm of the mixing valve Macm.
The temperature sensors Tvtsc and Tfpsc for the collector arrays are installed directly at the array outlets in the return
line of the PSC. Therefore, the array temperatures can not be measured directly, but only via the temperature of the
medium returning from the arrays, that is, only when Ppsc is operating. Additionally, the ambient temperature and the
current solar irradiation on the roof are measured using a temperature sensor Tamb and a pyranometer Ig, respectively.
Further, the temperatures at each inlet and outlet of the SHX are measured using the sensors Tshx,psc,i ,T
shx,psc,o,T
shx,ssc,i
BÜRGER . 5
FIGURE 3 System
components in the atrium of the
building: (1) location of
installation North-West, (2)
location of installation
North-East, (3) fan coil units, (4)
sensor for measurement of
concrete temperature, and (5)
detail view of installation
South-West [Colour figure can be
viewed at
wileyonlinelibrary.com]
and Tshx,ssc,o. Also, the inlet and outlet temperature of the HTS can be monitored, as well as the flows in each circuit.
Each mixing valve is equipped with a potentiometer which allows to determine the valve’s current position. Also, nhts =4
temperature sensors Thts,k,k=1, …,nhts are inserted into thermometer pockets installed at different heights of the HTS.
2.3 Low-temperature circuits and room installations
The atrium of the building, which is depicted in Figure 3, has a length of latrium =17.2 m and width of watrium =11 m. With
aheightofhatrium =12.7 m, the room extends over three floors. The glass roof of the atrium can be covered using outdoor
blinds, which are typically closed during summer and cover most of the glass surface.
Behind the plumbing wall covered by wooden panels, four fan coil units (FCUs) are installed as shown in Figure 3.
These are supplied by chilled water from the bottom of the LTS, which is then returned from the FCUs into the top of
the LTS. This circuit is entitled the load circuit (LC) and the medium flowing through this circuit can be controlled by
modulating the speed vplc of the pump Plc.†
On four of the depicted black steel beams, installations for temperature measurement are attached, see Figure 3.
According to their locations, these are labeled North-West (NW), North-East (NE), South-West (SW), and South-East (SE).
Each installation consists of 10 temperature sensors, of which seven are used to measure air temperature at different
heights and the remaining three are attached to the several floors using thermal grease for measurement of concrete
temperature. Further, the water temperature at inlet and outlet of the FCUs is measured via the temperature sensors
Tfcu,iand Tfcu,o as well as the total flow in the LC, and nlts =2 temperature sensors Tlts,k,k=1, …,nlts are inserted into
thermometer pockets at the top and the bottom of the LTS.
2.4 Operation conditions and system boundaries
Water circuit temperatures should not exceed Tw,max =95◦CorgobelowTw,min =5◦C. Temperatures in the PSC should
not exceed 110◦C to prevent the solar liquid from boiling and changing to a gaseous state, since this would result in a
shutdown of the system until all medium has returned to a liquid state, which can typically not be ensured before the
upcoming day. To include a certain tolerance region, we therefore define that the temperature of the solar liquid should
not exceed Tsl,max =98◦C. As a further safety measure, Ppsc must be in full operation as soon as one solar collector array
temperature exceeds Tsc,so =65◦C.
Operation of the ACM in FC mode is allowed only at ambient temperatures Tamb 4◦C. For operation in AC mode, the
temperature of the water entering the HT side of the machine must not exceed Tac,ht,max =95◦C and should not go below
Tac,ht,min =55◦C, the temperature of the water entering the LT side of the ACM must not go below Tac,lt,min =10◦C, and
the ACM should only be active at ambient temperatures above Tac,amb,min =15◦C and below Tac,amb,max =38◦C. Further,
minimum operation times of 60 minutes for the AC mode and 15 min for the FC mode are defined.
†In winter operation, the FCUs are supported by medium from the HTS, which is determined by a switching valve in the LC.
6BÜRGER .
FIGURE 4 Schematic depiction of the solar thermal climate system model [Colour figure can be viewed at wileyonlinelibrary.com]
2.5 Programmable logic controller
The control signals are sent to the several components using a programmable logic controller (PLC). This controller can
operate the system either using a conventional, proportional-integral-derivative (PID) and set-point-based control scheme
that is implemented directly on the PLC itself, or it can operate the system using external control signals that the controller
receives via a network interface.
Independently from the currently used control strategy, the PLC monitors the system temperatures and detects vio-
lations of previously specified safety limits. In such a case, the PLC automatically takes over control of the system, and
aims to rapidly restore valid operation conditions. For example, in case the temperatures in the PSC exceed 108◦C, the
EC mode of the ACM is automatically activated.
3CONTROL-ORIENTED MODELING OF THE SOLAR THERMAL
CLIMATE SYSTEM
The system is modeled using nonlinear grey-box models based on mass and energy balances, resulting in a system of
explicit ordinary differential equations (ODEs). The model fulfills all necessary conditions regarding differentiability for
later application within derivative-based optimization methods.34 Material and media are assumed to be incompressible
and with constant material properties. A schematic depiction of the system model is given in Figure 4. Model parameters
are either taken from manufacturer data sheets, if possible, or are the results of system identification and parameter
estimation procedures based on measurement data. In the following, component- and circuit-models are described in
more detail and information on the corresponding system identification processes is given.
3.1 Mass flows, pumps, and mixing valves
For simplicity, we do not model pumps and mixing valves explicitly, but assume that the mass flows in the circuits of the
system can be controlled directly and on a continuous scale starting from zero. For this to be applicable, a priori measure-
ments from the physical system that determine the volume flows resulting from different pump speeds and mixing valve
positions have been obtained.
For pump modeling, we also neglect their minimal part load behavior. Therefore, it must be ensured that if the con-
troller requests a mass flow rate below the minimal rate that a pump can produce, the amount of mass transport resulting
BÜRGER . 7
FIGURE 5 Exemplary depiction of mass flow pulsing: in the depiction, ̇
mrequest is the mass flow requested by the controller for the
time interval [t0,t1], which is smaller than the minimum mass flow ̇
mmin that the concerned pump can produce. Therefore, the pump is
operated several times at its minimum flow rate during the interval, such that t1
t0̇
mpump(t)dt=t1
t0̇
mrequest (t)dt
from the request over a certain period of time is realized for the physical system by pulsing at minimal flow rate, cf.
Figure 5.‡
For the pump Pssc, measurements indicate an almost linear correlation between the pump speed vpssc and the mass
flow ̇
mscc in the SSC. The same holds for the speed vplc of the pump Plc and the mass flow ̇
mlc in the LC. Therefore, with
̇
mssc,max =0.625 kg
s,̇
mlc,max =0.5kg
s,andvpssc,vplc ∈[0, 1], the corresponding mass flows are determined as
̇
mssc(t)= ̇
mssc,maxvpssc (t),(1)
̇
mlc(t)= ̇
mlc,maxvplc (t).(2)
For modeling the effect of the mixing valve Mssc, we assume that the flow separation between outlets Ohts,m and Ohts,b
depends linearly on the position pmssc ∈[0, 1], so that the mass flows through Ohts,m and Ohts,b are given by
̇
mo,hts,m(t)=pmssc(t)̇
mssc(t),(3)
̇
mo,hts,b(t)=(1.0−pmssc(t)) ̇
mssc(t).(4)
However, to avoid the increase of model nonlinearity introduced by the multiplication of two control variables, we
introduce the mass flow ̇
mo,hts,b through Ohts,b as an individual optimization variable instead of pmssc, and formulate
accordingly
̇
mo,hts,m(t)= ̇
mssc(t)− ̇
mo,hts,b(t).(5)
Variable ̇
mo,hts,b enters the model as a state of the system as
ḋ
mo,hts,b(t)
dt=Δ̇
mo,hts,b(t)(6)
and the change of the mass flow rate Δ̇
mo,hts,b as a control variable. Since ̇
mo,hts,b is introduced as a substitute for the
mixing valve position pmssc, this formulation facilitates to penalize position changes for Mssc via inclusion of Δ̇
mo,hts,b in
the mixed-integer optimal control problem (MIOCP) objective, and with this, to avoid frequent opening and closing of
the valve. Analogously, for inlets Ihts,m and Ihts,b and their mass flows ̇
mi,hts,m and ̇
mi,hts,b with
‡This approach becomes applicable due to the assumption that the pumps are typically operated at higher speeds and their comparatively short
startup time of approximately 1–2 s, and is therefore not suitable for modeling of the switching behavior of the ACM.
8BÜRGER .
̇
mi,hts,m(t)=pmacm(t)bac(t)̇
mac,ht,(7)
̇
mi,hts,b(t)=(1.0−pmacm(t))bac(t)̇
mac,ht,(8)
and pmacm ∈[0, 1], we introduce ̇
mi,hts,b as an individual optimization variable, and formulate accordingly
̇
mi,hts,m(t)=bac(t)̇
mac,ht −̇
mi,hts,b(t),(9)
while the HT side mass flow induced by the ACM is constant at ̇
mac,ht =0.69 kg
swhen the machine is operating in AC
mode. Variable ̇
mi,hts,b also enters the model as a state of the system as
ḋ
mi,hts,b(t)
dt=Δ̇
mi,hts,b(t)(10)
and the change of the mass flow rate Δ̇
mi,hts,b as a control variable. The corresponding mixing valve positions for the PLC
to set are determined from the ratios of the requested mass flows.
The flow sensor installed in the PSC solely measures the total flow in the circuit but not in the individual collec-
tor arrays. Therefore, the flow in each array depending on Ppsc and Mpsc was determined for different speeds vppsc and
valve positions pmpsc from the individual array outlet temperatures, the total flow, and the temperature resulting from
mixing of both flows at the outlet of Mpsc. Since the individual flows can only be identified from their mixing tem-
perature when the temperature difference between flows is sufficiently high, one collector array was covered using
tarpaulins during the measurement process. Afterward, the process was repeated with the other array covered. Since
density and viscosity of the solar liquid are influenced by its current temperature but not explicitly considered, the
identification was carried out with liquid temperatures above 40 ◦C so that the identified flows match the real occur-
ring flows better at higher temperature, which is the desired operation state and where inaccuracies are assumed to be
more critical.
The resulting flows are depicted in Figure 6 and show a highly nonlinear correlation. To depict these correlations in
a suitable way and respecting the necessity for differentiability of the model, suitable B-spline interpolation functions35
𝜄vtsc(⋅)and 𝜄fpsc (⋅)are used to depict the individual mass flows ̇
mvtsc and ̇
mfpsc as
̇
mvtsc(t)=𝜄vtsc(vppsc (t),pmpsc(t)),(11)
̇
mfpsc(t)=𝜄fpsc(vppsc (t),pmpsc(t)).(12)
FIGURE 6 Comparison of measured mass flows in the collector arrays depending on pump speed vppsc and mixing valve position pmpsc
to the results of B-spline interpolation [Colour figure can be viewed at wileyonlinelibrary.com]
BÜRGER . 9
The valve position pmpsc is considered as a state of the system with
dpmpsc(t)
dt=Δpmpsc(t)(13)
and the change of the position Δpmpsc as a control variable.
3.2 Influence of external factors
The system is influenced by external factors, which we distinguish between ambient conditions and indoor conditions.
Since no facilities for measurement or forecasting of indoor conditions such as building usage and occupancy are available,
indoor conditions are in the following considered as noise acting on the system which is estimated during operation.
As ambient conditions, we regard the ambient temperature Tamb and several quantities of solar irradiation. More
precisely, we consider the total radiation on the VTSC Ivtsc and on the FPSC Ifpsc as well as the direct irradiation Ir,dir
and diffuse irradiation Ir,diff acting on the building, which are adapted according to the geometrical properties of their
corresponding model components. For these quantities, forecast data can be obtained.
Since the quality of the utilized forecasts highly influences the overall MPC performance, forecast data should be
adapted based on current measurements of the corresponding quantities. For this, additional states which in the fol-
lowing are entitled as auxiliary states are introduced to the model, whose values are estimated during system operation.
Exemplified on the ambient temperature, the term Tamb used within modeling of the system is
Tamb(t)=Tamb ,fc(t)−Δ
Tamb (t),(14)
where Tamb,fc is the forecast of the ambient temperature and ΔTamb is the auxiliary state to compensate the difference
between the forecast and its currently measured value. The development of ΔTamb is described by
dΔTamb (t)
dt=−
ΔTamb (t)
𝜏ΔTamb
+wΔTamb (t),(15)
with 𝜏ΔTamb an adequate time constant, which results in a decaying influence of the current measurement on future time
points. The term wΔTamb is an additive white process noise term which is used within MHE and considered zero within
MPC.
3.3 High-temperature storage
The HTS is discretized into nhts =4 volumes with a water mass mhts =𝜌wVhts∕nhts each, where 𝜌wis the density of water,
to depict the temperature distribution in the stratified HTS, cf. Reference 36. The number of layers has been determined
by a trial-and-error approach, where nhts =4 showed sufficient quality while still incorporating only a reasonable amount
of states.
The direction and magnitude of mass flows in between those layers depend on their position along the storage height
and the current machinery operation. While in simulation models and software alternating mass flows are typically
depicted using min/max-orif/else-clauses, these introduce discontinuities to a model and must be avoided to pre-
serve differentiability. Therefore, we formulate the energy balances for the HTS in a differentiable form by following an
approach presented by Reference 37.
Under the assumption that inlet Ihts,t and outlet Ohts,t only interact with the top layer of the HTS, we formulate the
energy balance that determines the temperature Thts,1of the top layer of the HTS as
dThts,1(t)
dt=1
mhts
(̇
mssc(t)Tshx,ssc,nshx (t)−bac (t)̇
mac,htThts,1(t)− ̇
mhts,t,s(t)Thts,1(t)+Thts,2(t)
2
−̇
mhts,t,s(t)Thts,1(t)−Thts,2(t)
2−𝜆hts,1
cw
(Thts,1(t)−Tamb(t))),(16)
10 BÜRGER .
̇
mhts,t,s(t)=̇
mssc(t)−bac (t)̇
mac,ht,(17)
̇
mhts,t,s(t)=
̇
mhts,t,s(t)2+𝜖hts,(18)
with cwthe specific heat capacity of water, 𝜆hts the thermal conductance for the heat loss of the HTS to its ambient§
identified from storage temperature measurements, and ̇
mhts,t,s the sum of the mass flows entering and leaving the top
layer. Variable ̇
mhts,t,sis a smooth approximation for the absolute value of ̇
mhts,t,s, which is better the smaller 𝜖hts is chosen.
However, smaller values for 𝜖hts result in increased nonlinearity of the model, which renders 𝜖hts a tuning parameter to
be chosen based on the actual quantities of the involved mass flows and the desired accuracy of the approximation. In the
following, we use 𝜖hts =10−2.ThestateTshx,ssc,nshx is the temperature state at the outlet of the SSC-side of the SHX model,
which is described in more detail later in this section.
The bottom layer of the HTS contains the inlet Ihts,b and outlet Ohts,b and the energy balance that determines its
temperature Thts,nhts is given by
dThts,nhts (t)
dt=1
mhts
(̇
mi,hts,b(t)Tac,ht(t)− ̇
mo,hts,b(t)Thts,nhts (t)− ̇
mhts,b,s(t)Thts,nhts (t)+Thts ,nhts−1(t)
2
−̇
mhts,b,s(t)Thts,nhts (t)−Thts ,nhts−1(t)
2−𝜆hts,nhts
cw
(Thts,nhts (t)−Tamb (t))),(19)
̇
mhts,b,s(t)=̇
mi,hts,b(t)− ̇
mo,hts,b(t),(20)
̇
mhts,b,s(t)=
̇
mhts,b,s(t)2+𝜖hts,(21)
with Tac,ht the outlet temperatures on the HT side of the ACM in AC mode, ̇
mhts,b,s the sum of the mass flows entering
and leaving the bottom layer, and ̇
mhts,b,sa smooth approximation for the absolute value of ̇
mhts,b,s.
The HTS layer 3 is assumed to interact only with its neighboring layers 2 and nhts, so that its energy balance is given by
dThts,3(t)
dt=1
mhts
(− ̇
mhts,b,s(t)Thts,3(t)+ ̇
mhts,b,s(t)Thts,nhts (t)−Thts,2(t)
2+̇
mhts,b,s(t)Thts,nhts (t)+Thts,2(t)
2
−𝜆hts,3
cw
(Thts,3(t)−Tamb (t))).(22)
Finally, layer 2 of the HTS is assumed to interact with inlet Ihts,m and outlet Ohts,m in addition to its neighboring layers,
so that the energy balance that determines the temperature Thts,2of this layer reads as
dThts,2(t)
dt=1
mhts
((bac(t)̇
mac,ht −̇
mi,hts,b(t))Tac,ht(t)−( ̇
mssc(t)− ̇
mo,hts,b(t))Thts,2(t)
+̇
mhts,t,s(t)Thts,1(t)+Thts,2(t)
2+̇
mhts,t,s(t)Thts,1(t)−Thts,2(t)
2
+̇
mhts,b,s(t)Thts,3(t)+Thts,2(t)
2+̇
mhts,b,s(t)Thts,3(t)−Thts,2(t)
2
−𝜆hts,2
cw
(Thts,2(t)−Tamb(t))).(23)
3.4 Solar circuits
For modeling of the solar collector arrays, system identification showed that the use of one state per array already provides
sufficient quality in depiction of the collector temperatures. Therefore, the temperatures Tvtsc and Tfpsc of the VTSC and
FPSC, respectively, are determined by
§The HTS is located in a cellar room of the building whose temperature is influenced by the ambient. Since forecasts for the exact room temperature
are not available, current heat losses of an HTS layer to its surrounding are approximated via a relation to the current ambient temperature.
BÜRGER . 11
dTvtsc(t)
dt=1
Cvtsc
(̇
mvtsc(t)csl (Tpscf(t)−Tvtsc (t)) + 𝜂vtscAvtsc Ivtsc(t)−(𝛼vtsc +Δ
𝛼vtsc (t))Avtsc(Tvtsc (t)−Tamb(t))),(24)
dTfpsc(t)
dt=1
Cfpsc
(̇
mfpsc(t)csl (Tpscf(t)−Tfpsc (t)) + 𝜂fpscAfpsc Ifpsc(t)−(𝛼fpsc +Δ
𝛼fpsc (t))Afpsc(Tfpsc (t)−Tamb(t))),(25)
with Cvtsc,Cfpsc the heat capacities of each collector array including the contained medium, 𝜂vtsc,𝜂fpsc their optical effi-
ciencies, and 𝛼vtsc,𝛼fpsc the heat transfer coefficients for the heat losses to the ambient of each array.38 For consideration
of unmodeled influences on collector heat losses induced by, for example, wind, the auxiliary states Δ𝛼vtsc and Δ𝛼fpsc are
introduced, whose values are estimated during system operation and whose development is described by
dΔ𝛼vtsc (t)
dt=wΔ𝛼vtsc (t),(26)
dΔ𝛼fpsc (t)
dt=wΔ𝛼fpsc (t),(27)
with wΔ𝛼vtsc and wΔ𝛼fpsc additive white process noise terms used within MHE and considered zero within MPC.
As described in Section 2, the temperature of the collector arrays cannot be measured directly, but only via the sensors
Tvtsc and Tfpsc. Their temperatures Tvtsc,s and Tfpsc,s are determined by energy balances over a short piece of the PSC pipe as
dTvtsc,s(t)
dt=1
Vvtsc,s𝜌slcsl
(̇
mvtsc(t)csl (Tvtsc(t)−Tvtsc,s(t)) − 𝜆vtsc,s(Tvtsc,s(t)−Tamb (t))),(28)
dTfpsc,s(t)
dt=1
Vfpsc,s𝜌slcsl
(̇
mfpsc(t)csl (Tfpsc(t)−Tfpsc,s(t)) − 𝜆fpsc,s(Tfpsc,s(t)−Tamb (t))),(29)
with Vvtsc,s,Vfpsc,s the pipe volumes for the sensors, 𝜆vtsc,s ,𝜆fpsc,s their thermal conductances for the heat losses to the
ambient, and csl and 𝜌sl the specific heat capacity and density of the solar liquid, respectively.
Since the amount of liquid in the PSC is rather large, the mass transport from the roof to the cellar introduces a delayed
availability of the heat collected by the solar arrays. This behavior is modeled using two energy balances that depict the
temperature of the medium in the feed line pipe Tpscf and the return line pipe Tpscr, respectively, as follows
dTpscf(t)
dt=1
Cpsc
(( ̇
mvtsc(t)+ ̇
mfpsc(t))csl (Tshx,psc,nshx (t)−Tpscf(t)) − 𝜆psc (Tpscf(t)−Tamb (t))),(30)
dTpscr(t)
dt=1
Cpsc
(̇
mvtsc(t)csl Tvtsc,s(t)+ ̇
mfpsc(t)csl Tfpsc,s(t)−( ̇
mvtsc(t)+ ̇
mfpsc(t))csl Tpscr(t)) − 𝜆psc (Tpscr(t)−Tamb (t))),(31)
with Cpsc the heat capacity of one pipe including the contained medium, 𝜆psc the thermal conductance for the heat losses
of one pipe to the ambient, and Tshx,psc,nshx the temperature state at the outlet of the PSC-side of the SHX model.
The model for the SHX consists of nshx =4 energy balances per side of the SHX where opposing volumes exchange heat
depending on a heat transfer coefficient 𝛼shx and heat exchange area Ashx. The temperature states Tshx,psc,1and Tshx,ssc,1at
the inlets of each side of the SHX are determined by
dTshx,psc,1(t)
dt=nshx
Vshx𝜌sl csl
(( ̇
mvtsc(t)+ ̇
mfpsc(t))csl (Tpscr(t)−Tshx,psc,1(t))
−Ashx
nshx
𝛼shx(Tshx,psc,1(t)−Tshx,ssc,nshx (t))),(32)
dTshx,ssc,1(t)
dt=nshx
Vshx𝜌wcw
(( ̇
mssc(t)− ̇
mo,hts,b(t))cwThts,2(t)+ ̇
mo,hts,b(t)cwThts,nhts (t)− ̇
mssc(t)cwTshx,ssc,1(t)
+Ashx
nshx
𝛼shx(Tshx,psc,nshx (t)−Tshx,ssc,1(t))),(33)
12 BÜRGER .
and the remaining temperature states per side of the SHX are determined by
dTshx,psc,k(t)
dt=nshx
Vshx𝜌sl csl
(( ̇
mvtsc(t)+ ̇
mfpsc(t))csl (Tshx,psc,k−1(t)−Tshx,psc,k(t))
−Ashx
nshx
𝛼shx(Tshx,psc,k(t)−Tshx,ssc,(nshx +1−k)(t))),k=2,…,nshx,(34)
dTshx,ssc,k(t)
dt=nshx
Vshx𝜌wcw
(̇
mssc(t)cw(Tshx,ssc,k−1(t)−Tshx,ssc,k(t))
+Ashx
nshx
𝛼shx(Tshx,psc,(nshx +1−k)(t)−Tshx,ssc,k(t))),k=2,…,nshx.(35)
3.5 Cooling machine
The ACM is a static model describing the relations between inlet and outlet temperatures of the machine’s circuits in its
different operation modes, which in turn influence the temperatures of the HTS and LTS once a mode is active.
While only the AC mode utilizes the ACM itself, the FC and EC modes only utilize the RTHX. Measurements at the
physical system have shown that the LT outlet temperatures of the ACM in FC mode can be sufficiently depicted by a
simple temperature difference to the current ambient temperature as
Tfc,lt(t)=Tamb (t)+ΔTfc,lt.(36)
The cooling power ̇
Qac,lt and COP of the machine COPac in AC mode depend on the inlet temperatures of all three
circuits. For the machine used in this study, ̇
Qac,lt and COPac data can be obtained from the data sheet provided by
the manufacturer as averaged values over one complete cycle of the machine and for different combinations of inlet
temperatures.
For the ACM model, the temperatures Thts,1and Tlts,1are regarded as inlet temperatures of the HT and LT side,
respectively. For the temperature at the medium temperature (MT) inlet, we assume that the RT returns medium at
a constant difference to the ambient temperature analogously to the FC mode. Therefore, ̇
Qac,lt and COPac can be
determined by30,37
̇
Qac,lt(t)=𝜄̇
Qac,lt (Thts,1(t),Tlts,1(t),Tamb(t)),(37)
COPac(t)=𝜄COPac (Thts,1(t),Tlts,1(t),Tamb (t)),(38)
with 𝜄̇
Qac,lt (⋅)and 𝜄COPac (⋅)suitable polynomial fittings to machine data. Using these, the temperatures Tac,ht and Tac,lt at the
HT and LT outlet of the ACM can be calculated as
Tac,lt(t)=Tlts,1(t)− 1
cẇ
mac,lt
̇
Qac,lt(t),(39)
Tac,ht(t)=Thts,1(t)− 1
cẇ
mac,ht
̇
Qac,lt(t)
COPac(t).(40)
Both the AC mode and FC mode of the ACM are subject to startup and shutdown phases which can take several
minutes to complete, while the phases of the FC mode typically take less time to finish than the AC mode phases. Since
these phases are not considered in the developed model, frequent switching of modes, especially from and to the AC
mode, must be avoided.
As the EC mode of the machine is considered more as a safety measure than a desirable operation mode, active con-
sideration of this mode within MPC is neglected. However, the mode can still be activated by the PLC in case of violations
of temperature safety limits.
BÜRGER . 13
3.6 Low-temperature storage and fan coil units
System identification showed that the LTS can be depicted by nlts =2 volumes with water mass mlts =𝜌wVlts∕nlts to depict
the temperature distribution in the stratified LTS. Due to the circumstance that ̇
mlc,max <̇
mfc,lt and ̇
mlc,max <̇
mac,lt with
̇
mfc,lt =̇
mac,lt =0.8kg
s, the direction of mass flows inside the LTS is directly determined by whether the ACM is currently
operating or not. Therefore, the temperatures of the upper layer Tlts,1and the bottom layer Tlts,nlts are determined by the
energy balances
dTlts,1(t)
dt=1
mlts
(̇
mlc(t)Tfcu,w(t)−(1−bac(t)−bfc(t)) ̇
mlc(t)Tlts,1(t)
+bac(t)( ̇
mac,lt −̇
mlc(t))Tlts ,nlts (t)−bac(t)̇
mac,ltTlts,1(t)
+bfc(t)( ̇
mfc,lt −̇
mlc(t))Tlts ,nlts (t)−bfc(t)̇
mfc,ltThts,1(t)),(41)
dTlts,nlts (t)
dt=1
mlts
(− ̇
mlc(t)Tlts ,nlts (t)+(1−bac(t)−bfc(t)) ̇
mlc(t)Tlts,1(t)
−bac(t)( ̇
mac,lt −̇
mlc(t))Tlts ,nlts (t)+bac(t)̇
mac,ltTac,lt (t)
−bfc(t)( ̇
mfc,lt −̇
mlc(t))Tlts ,nlts (t)+bfc(t)̇
mfc,ltTfc,lt (t)),(42)
with Tac,lt and Tfc,lt the LT outlet temperatures of the ACM in AC and FC mode, respectively. The temperatures of the
water side Tfcu,w and of the air side Tfcu,a of the FCUs are determined by
dTfcu,w(t)
dt=1
Cfcu,w
(̇
mlc(t)cw(Tlts ,nlts (t)−Tfcu,w(t)) − ̇
Qfcu,r(t)),(43)
dTfcu,a(t)
dt=1
Cfcu,a
(̇
mfcu,aca(Tr,a,1(t)−Tfcu,a(t)) + ̇
Qfcu,r(t)),(44)
̇
Qfcu,r(t)=𝜆fcu(Tfcu,w(t)−Tfcu,a(t)),(45)
with Cfcu,w and Cfcu,a the thermal capacities of the water and air side of the FCUs, respectively, 𝜆fcu the thermal con-
ductance between those sides, Tr,a,1the temperature of the bottom air layer of the room model, and ̇
Qfcu,rthe total heat
exchanged between FCUs and room air. The air mass flow ̇
mfcu,ais assumed constant within the model, however, for the
physical system the FCUs are only operated if ̇
mlc >0kg
sfor saving of energy.
3.7 Room model
Since the atrium extends over several floors, the model that depicts the room temperature is discretized into nr=3layers
of air and concrete masses along the room’s height with corresponding temperatures Tr,a,kand Tr,c,k,k=1, …,nr.The
heat flows acting on these temperatures depend on the ambient temperature Tamb, the direct solar irradiation Ir,dir and the
diffuse solar irradiation Ir,diff on the building, as well as the heat exchange ̇
Qfcu,rwith the FCUs. Under these assumptions,
a grey-box resistance-capacitance (RC) model has been identified for the atrium within an extensive system identification
campaign which reads as
dTr,a,1(t)
dt=1
Cr,a
(− 1
Rr,a,c,1
(Tr,a,1(t)−Tr,c,1(t)) + 1
Rr,a,amb
(Tamb(t)−Tr,a,1(t)) + 1
Rr,a,a
(Tr,a,2(t)−Tr,a,1(t))
−rfcu,r,1̇
Qfcu,r(t)+ri,dir,a,1Ir,dir(t)+ri,diff,a,1Ir,diff (t)+ ̇
Qn,a,1(t)),(46)
dTr,a,2(t)
dt=1
Cr,a
(− 1
Rr,a,c,2
(Tr,a,2(t)−Tr,c,2(t)) + 1
Rr,a,amb
(Tamb(t)−Tr,a,2(t)) − 1
Rr,a,a
(Tr,a,2(t)−Tr,a,1(t))
+1
Rr,a,a
(Tr,a,nr(t)−Tr,a,2(t)) − rfcu,r,2̇
Qfcu,r(t)+ri,dir,a,2Ir,dir(t)+ri,diff,a,2Ir,diff (t)+ ̇
Qn,a,2(t)),(47)
14 BÜRGER .
dTr,a,nr(t)
dt=1
Cr,a−1
Rr,a,c,nr
(Tr,a,nr(t)−Tr,c,nr(t)) + 1
Rr,a,amb
(Tamb(t)−Tr,a,nr(t)) − 1
Rr,a,a
(Tr,a,nr(t)−Tr,a,2(t))
−rfcu,r,nṙ
Qfcu,r(t)+ri,dir,a,nrIr,dir(t)+ri,diff,a,nrIr,diff (t)+ ̇
Qn,a,nr(t),(48)
dTr,c,k(t)
dt=1
Cr,c1
Rr,a,c,k
(Tr,a,k(t)−Tr,c,k(t)) + 1
Rr,c,amb,k
(Tamb(t)−Tr,c,k(t))
+ri,dir,c,kIr,dir(t)+ri,diff,c,kIr,diff (t)+ ̇
Qn,c,k(t),k=1,…,nr.(49)
The model identification was carried out in multiple steps. First, a reduced version of the model was identified that
contained only the thermal capacities Cr,a ,Cr, c and resistances Rr,a,amb,Rr,c,amb,Rr,a,c,k,k=1, …,nr. For this, measurement
data obtained during night times at different ambient conditions was utilized, so that the influence of solar irradiation
and occupancy on the room temperature was excluded. Also, the FCUs were not operated during that time.
Using the identified capacities and resistances, several ratios rfcu,r,k,k=1, …,nrwere introduced to the model that
depict the ratio of the total FCU heat exchange ̇
Qfcu,rfor an air mass. Identification of these ratios was carried out using
data obtained especially while operating the FCUs during night times.
Afterward, further ratios have been introduced to the model, whereof ri,dir,a,k,ri,diff,a,k,k=1, …,nrdepict the ratios
of the direct and diffuse solar irradiation acting on an air mass and ri,dir,c,k,ri,diff,c,k,k=1, …,nrthe ratios acting on a
concrete mass. These were identified using data obtained during day times especially on weekends and bank holidays to
minimize the influence of occupancy on the measured room temperature.
Finally, heat noise terms ̇
Qn,a,k,̇
Qn,c,k,k=1, ..., nrare introduced to the model to depict unknown influences from, for
example, occupancy and air exchange, of which no data are available. Similar to (15), these are regarded as states which
are estimated during operation, while their development is described by
ḋ
Qn,a,k(t)
dt=−
̇
Qn,a,k(t)
𝜏̇
Qn,a,k
+ẇ
Qn,a,k(t),k=1, ..., nr,(50)
ḋ
Qn,c,k(t)
dt=−
̇
Qn,c,k(t)
𝜏̇
Qn,c,k
+ẇ
Qn,c,k(t),k=1, ..., nr,(51)
with 𝜏̇
Qn,a,𝜏̇
Qn,cadequate time constants and ẇ
Qn,a,ẇ
Qn,cadditive white process noise terms used within MHE and
considered zero within MPC.
3.8 Operation conditions and constraints
For formulation of the operation conditions and constraints, we first introduce a vector sof ns=35 slack variables with
s⊤=[ΔTr,asac,lb⊤sac,ub⊤sppsc,vtsc sppsc,fpsc sw⊤ssl ⊤].(52)
For control of HVAC systems, it is favorable to define a temperature comfort range instead of tracking a fixed set point
temperature, as this provides flexibility for the control algorithm, and with this, further energy saving potential.39 Using
the slack variable ΔTr,aand the room air temperature Tr,a,1, the deviation of the room air temperature from such a comfort
range can be formulated as
Tr,a,min −ΔTr,a(t)Tr,a,1(t)Tr,a,max +ΔTr,a(t),(53)
and using the slack variables sac,lb and sac,ub, the operation conditions for the AC mode of the ACM stated in Section 2.4
can be formulated as smoothened vanishing constraints30,40 as
bac(t)
Tac,ht,min −Thts,1(t)
Tac,lt,min −Tlts,1(t)
Tac,amb,min −Tamb(t)
−sac,lb(t)
𝜖ac,lb,(54)
BÜRGER . 15
bac(t)Thts,1(t)−Tac,ht,max
Tamb(t)−Tac,amb,max −sac,ub(t)𝜖ac,ub ,(55)
with chosen 𝜖ac,lb =𝜖ac,ub =0.1 wherein the slack variables can be utilized to relax these constraints if necessary to
preserve feasibility when applied within an optimization problem. Further, the constraints
(Tvtsc(t)−Tsc,so )(vppsc,so −sppsc,vtsc(t)) 𝜖sc,so ,(56)
(Tfpsc(t)−Tsc,so )(vppsc,so −sppsc,fpsc(t)) 𝜖sc,so ,(57)
sppsc,vtsc(t)
sppsc,fpsc(t)−vppsc (t)0,(58)
with chosen 𝜖sc,so =0.1 implement the safety measure for Ppsc not to operate below vppsc,so once one of the collector
temperatures exceeds Tsc,so. Through
̇
mo,hts,b(t)− ̇
mssc(t)0,̇
mo,hts,b(t)0,(59)
̇
mi,hts,b(t)−bac(t)̇
mac,ht 0,̇
mi,hts,b(t)0,(60)
it is ensured that the mass flow through the several storage outlets and inlets does not exceed the total mass flow induced
by the respective pumps. The upper and lower temperature bounds for the water states in xselected by the selection
matrix Zware defined as soft constraints41 as
Tw,min −sw(t)Zwx(t)Tw,max +sw(t),(61)
and the upper bounds for the solar liquid states in the PSC selected by the selection matrix Zsl are defined as
Zslx(t)Tsl,max +ssl (t).(62)
Different from that, the bounds for state pmpsc are given as hard constraints as in
pmpsc,min pmpsc(t)pmpsc,max (63)
with pmpsc,min =0.1 and pmpsc,max =0.9, since due to limit switches of the mixing valve, constraint violation here is
prevented physically. Finally, an additional upper bound for the temperature state Tshx,psc,nshx is introduced as
Tshx,psc,nshx (t)Tshx,psc,out,max +sshx,psc,out(t)(64)
with Tshx,psc,out,ma =85◦Candsshx,psc,out ∈ssl for further regulation of the temperature of the solar liquid returned from the
PSC-side outlet of the SHX to the solar collector array inlets.
3.9 Model summary
In total, the system consists of nx=42 states, nu=6 continuous controls, nb=2 binary controls, nc=5 time-varying
parameters, ny=22 measured quantities, and nw=11 process noise terms, as given by
x⊤=[Thts,{1,…,nhts },Tlts,{1,…,nlts },Tvtsc,Δ𝛼vtsc ,Tvtsc,s,Tfpsc ,Δ𝛼fpsc ,Tfpsc,s,Tpscf,Tpscr,Tshx,psc,{1,…,nshx },Tshx,ssc,{1,…,nshx},
Tfcu,w,Tfcu,a,Tr,a,{1,…,nr},Tr,c,{1,…,nr},pmpsc,̇
mo,hts,b,̇
mi,hts,b,ΔTamb ,ΔIvtsc ,ΔIfpsc ,̇
Qn,a,{1,…,nr},̇
Qn,c,{1,…,nr}],
(65)
16 BÜRGER .
u⊤=[vppsc ,Δpmpsc,vpssc ,Δ̇
mo,hts,b,Δ̇
mi,hts,b,vplc],(66)
b⊤=[bac ,bfc],(67)
c⊤=[Tamb,fc ,Ivtsc,fc,Ifpsc,fc ,Ir,dir,fc,Ir,diff,fc ],(68)
w⊤=[wΔTamb ,wΔIvtsc ,wΔIfpsc ,ẇ
Qn,a,{1,…,nr},ẇ
Qn,c,{1,…,nr},wΔ𝛼vtsc ,wΔ𝛼fpsc ].(69)
and the system model fconsisting of Equations (1), (2), (5), (6), and (9)–(51) is a system of explicit ODEs
dx(t)
dt=f0(x(t),u(t),c(t),w(t)) +
nb
i=1
bi(t)⋅fi(x(t),u(t),c(t),w(t)) (70)
which is directly given in the so-called partial outer convexified form, wherein the system dynamics are given as the
sum of a function f0and the functions fi,i=1…,nbwhose activity is determined by the corresponding binary con-
trols bi, of which at most one can be active at a time. Availability of this special structure is important for the solution
methods applied in the scope of this work, and can, if not directly given, also be achieved via systematic reformulation,
cf. Reference 42.
The system is subject to the constraints (53)–(64) and additional combinatorial constraints regarding the maximum
amount of allowed switches and minimum dwell times for the binary controls summarized as
h(x(t),u(t),b(⋅),c(t),s(t)) 0.(71)
In (71), the notation b(⋅) is chosen to indicate that such combinatorial constraints can be coupled over time. The
treatment of combinatorial constraints in the scope of this work is explained in more detail later in Section 4.3.
4DESCRIPTION AND IMPLEMENTATION OF THE MPC ALGORITHM
In this section, first the MIOCP used within MPC of the system is presented, followed by a description of the algorithm
and software used for implementation and solution of the problem. Afterward, the formulation and implementation of
the MHE problem utilized within state estimation for the system is presented. The section is concluded by a descrip-
tion of the utilized computational hardware, software, and data sources. The information flow between MPC, MHE,
and the plant is illustrated in Figure 7, which shows that the control signals uand bcomputed by MPC are applied for
plant operation, while the measurements yobtained from the plant are used for estimation of the current system state
̂
xvia MHE. For a demo implementation of the presented algorithms with reduced dependencies, we refer the reader
to Reference 43.
4.1 Optimal control problem formulation
With the states x, continuous controls u, binary controls b, time-varying parameters c, and slack variables sintroduced in
the previous section, the MIOCP reads as
FIGURE 7 Information flow between MPC, MHE, and the plant
BÜRGER . 17
minimize
x(⋅),u(⋅),
b(⋅),s(⋅)
tf
t0
s(t)⊤Wss(t)dt+tf
t0
𝜔s⊤s(t)dt+tf
t0
u(t)⊤Wuu(t)dt+tf
t0
𝜔u⊤u(t)dt(72a)
subject to for t∈[t0,tf]∶
dx(t)
dt=f0(x(t),u(t),c(t),w(t)) +
nb
i=1
bi(t)⋅fi(x(t),u(t),c(t),w(t)),(72b)
h(x(t),u(t),b(⋅),c(t),s(t)) 0,(72c)
ulb u(t)uub,(72d)
b(t)∈{0,1}nb,(72e)
nb
i=1
bi(t)1,(72f)
s(t)0,(72g)
w(t)=0,(72h)
x(t0)=̂
x.(72i)
The objective (72a) of the MIOCP is a Lagrange-type economic objective and contains both the sum of squares and
the sum of the slack variables s, as well as the sum of squares and the sum of the continuous controls u,weightedby
appropriate diagonal weighting matrices Ws∈Rns×nsand Wu∈Rnu×nuand vectors 𝜔s∈Rnsand 𝜔u∈Rnu, respectively.¶
The system dynamics described in Section 3 enter the MIOCP in (72b). The Special Order Set 1 (SOS1) constraint in
(72f) ensures that at most one binary control is active at a time. The inequality and combinatorial constraints described in
Section 3 enter the MIOCP in (72c). The limits of the continuous controls uare given in (72d) and the binary constraints
for bin (72e). Constraint (72g) ensures that the slack variables sonly take positive values and constraint (72h) defines
that process noise is considered zero within the MIOCP. The initial state constraint is given in (72i).
4.2 Description of the MPC algorithm
For solution of OCPs, application of direct methods (first discretize, then optimize approach) and especially direct multiple
shooting44 and direct collocation45 is favorable. For discretization of the MIOCP (72), we utilize the fact that typically
more control interaction is needed during daytime when operating a solar-driven system. Therefore, we set up a time grid
for the control horizon with tf=24 h with time steps of Δtd=15 min in times between 4:30 and 21:30 and Δtn=30 min
between 21:30 and 4:30 to reduce the number of discrete time points, and with this, the size of the resulting MINLP. Since
the step size Δtdmight still be to large to successfully control the solar collector temperatures, as the solar irradiation can
be subject to fast and large fluctuations (e. g. through movement of clouds) and create need for more frequent updates
of Ppsc and Mpsc, the first discrete interval of the time grid is further discretized in nt,mpc,s=10 shorter intervals. This
results in a time grid with a total of nt,mpc =91 intervals. The discretization is conducted using direct collocation with
Lagrange polynomials with Radau collocation points of order 3, cf. Reference 34. To avoid the need for regeneration of the
discretization in between subsequent rolling-horizon MPC steps due to changing step length in between two time points
caused by the nonequidistant time grid, a time transformation is applied to the ODE right hand side so that the time steps
can enter the resulting MINLP as parameters, cf. References 30 and 46.
For controls and time-varying parameters, we assume that their values only change at the discrete time points. Also,
different from the description in Section 3, the variables pmpsc,̇
mo,hts,b,and ̇
mi,hts,b enter the discretized MIOCP not as states
¶Please note that the weighting factors for Δpmpsc,Δ̇
mo,hts,b ,andΔ̇
mi,hts,b in 𝜔uneed to be set to zero, since these controls can take negative values.
18 BÜRGER .
but directly as controls of the system, and the change of these controls is penalized by including the squared difference
of the piece-wise constant control values for subsequent time steps in the MINLP objective.
For solution of the resulting MINLPs on real-time suitable time scales, we apply the combinatorial integral approx-
imation (CIA) decomposition approach26,27 which has shown good performance regarding solution time and quality in
previous studies.30,47 The idea of the approach is to first solve a relaxed version of the MINLP with dropped binary con-
straints, which is a nonlinear program (NLP) further referred to as NLPrel, then to approximate the obtained relaxed
binary controls q∈[0,1]nbwith binary controls p∈{0,1}nbby solution of a CIA problem,31 and afterward to solve the
MINLP again with binary controls b∶= pfixed, which is again an NLP further referred to as NLPbin, to adjust the states
x, continuous controls u, and the other remaining optimization variables to the obtained binary solution, cf. Reference 48.
As explained above, the continuous controls should be updated frequently within this application. However, such
frequent updates are not necessary for the binary controls, which renders the solution of the complete MINLP for each
short term step unnecessary. Also, despite the fact that the decomposition approach can have a drastically reduced solution
time compared to general MINLP solvers,47 the time spent within the individual solution steps can still be significant,
especially for the NLPs.30
Under these considerations, we introduce the algorithm depicted in Figure 8, which is a parallelized algorithm for
mixed-integer nonlinear MPC. After generation of an initial guess using a suitable system simulation finit for the estimated
initial state ̂
xinit of the system, the algorithm is running in two parallel threads. While the thread depicted in the top solves
the relaxed MINLP and the CIA problem to obtain updates for the relaxed and approximated binary solution qand p,
respectively, the thread depicted on the bottom computes more frequent updates of continuous controls u, states xetc.
by repeated solution of NLPbin.Aftermsolutions of NLPbin, the previously used binary controls are replaced with the
updated binary approximation p. For the first iteration k=0 of the algorithm, the binary controls for use within NLPbin
are provided by the initial guess simulation.
To compensate the delay introduced by the solution time of the NLPs, a method entitled delay compensation by pre-
diction41 is applied. Here, the NLPs are not formulated and solved to generate controls for the current discrete time point
tk,iat which the computation started, but for an upcoming discrete time point tk,i+1and applied once this time point is
reached. For this, a prediction ̂
x+
k,i+1of the state for the next relevant discrete time point is required, which is generated
by solving a corresponding initial value problem (IVP) f(⋅)for the ODE model fon the corresponding time interval, con-
sidering the current state ̂
xk,iof the system and the controls applied during the time interval. Accordingly, NLPrel and the
instance of NLPbin solved at the time point tmcorrespond to the first discrete time point tk+1,0of the next iteration k+1
of the algorithm.
Due to the chosen time grid, the scheduled time for one iteration of the total algorithm is Δtd=15 min during day
and Δtn=30 min during night. Accordingly, the available time for preparation and solution of one instance of NLPbin is
Δtd∕nt,mpc,s=90 s during day and Δtn∕nt,mpc,s=180 s during night, while the available time for preparation and solution
FIGURE 8 Flow chart of
the parallelized MPC algorithm
[Colour figure can be viewed at
wileyonlinelibrary.com]
BÜRGER . 19
of one sequence of NLPrel and CIA is ((nt,mpc,s−1)∕nt,mpc,s)Δtd=810 s during day and ((nt,mpc,s−1)∕nt,mpc,s)Δtn=1620 s
during night. Within this study, the preparation time reserved for each problem instance for, for example, data preparation
and simulation, is approximately 6 s, the remaining time is available for solution of the problem instance.
4.3 Implementation of the MPC algorithm
The algorithm implementation is based on Python, while the separate threads are realized using the Python multipro-
cessing module49 and data exchange and synchronization in between processes are realized using blocking queues.49
The MINLP is implemented using CasADi50 via its Python interface. For this application, preliminary tests showed
that using CasADi’s SX-type variables results in reduced NLP solution times in comparison to using MX-type variables,
since less time is spent for evaluating NLP functions and derivatives. However, utilization of the spline interpolation
functionalities35 to depict the solar collector mass flows shown in Section 3.1 requires the use of MX-type variables. But
nevertheless, the code generation functionality of CasADi can be used to a priori generate C code for the NLP that contains
all functions required by the solver, which can be compiled prior to starting the MPC algorithm and the resulting object
later be used (and reused) with the NLP solver. For this application, the generated code was compiled using Clang51 with
optimization level 1 and the resulting object was able to yield function evaluation times comparable to using SX-type
variables.
The NLPs within the MPC algorithm are solved using Ipopt52 with linear solver MA57.53 Ipopt is configured to use its
adaptive barrier parameter update strategy. The CIA problem is solved using pycombina.30 The initial guess simulation
is implemented in Modelica and conducted using OpenModelica54 via its Python interface OMPython.55
The maximum switching and dwell time constraints for the ACM operation modes are considered only in the CIA
problem stage of the MPC algorithm and not in the NLPrel stage to avoid further increase of the size of NLPrel.Inparticular,
the AC mode is required to remain active for at least 1 h after activation and inactive for at least 0.5 h after deactivation,
while the FC mode is required to remain both active after activation and inactive after deactivation for at least 0.25 h.
The maximum amount of allowed switches is determined heuristically from the relaxed solution of the preceding NLPrel
stage, however, with a minimum number of three allowed switches per mode.
4.4 MHE problem formulation and implementation
The relation of states xand associated measurements yis depicted by the measurement function Φ(⋅). We assume that the
states Thts of the HTS and Tlts of the LTS are associated with the temperature sensors Thts and Tlts , and the temperature
states at the outlet of the solar collector arrays Tvtsc,s and Tfpsc,s with the sensors Tvtsc and Tfpsc, respectively. The states
Tshx,psc,1,Tshx,psc,nshx ,Tshx,ssc,1,andTshx,ssc,nshx are determined via Tshx,psc,i,T
shx,psc,o,T
shx,ssc,i, and Tshx,ssc,o .
The state of the water side of the FCUs is associated with Tfcu,o. The air temperature states Tr,a of the room are deter-
mined from a combination of air room sensors at different heights and locations, similar to the concrete temperature
states Tr,c which are determined from the sensors attached to the concrete masses.
The current value of the auxiliary state ΔTamb is determined via the corresponding forecast Tamb,fc and the ambient
temperature sensor Tamb. Similarly, the states ΔIvtsc and ΔIfpsc are determined via the forecasts Ivtsc,fc and Ifpsc,fc and the
pyranometer Igwith measurements converted to the orientation of the corresponding collector array’s surface.
Using a time grid with nt,mhe =20 equidistant time steps over the past 20 minutes, the MHE problem for estimation
of the current system state ̂
x=xnt,mhe is formulated as
minimize
x,w
nt,mhe
k=0yk−Φ(xk,uk,bk,ck)2
Σ−1
y
+
nt,mhe−1
k=0wk2
Σ−1
w
+x0−xarr2
Σ−1
xarr
(73a)
subject to xk+1=f(xk,uk,bk,ck,wk),k=0,…,nt,mhe −1,(73b)
0wΔ𝛼vtsc ,kwΔ𝛼vtsc ,max,k=0, ..., nt,mhe −1,(73c)
0wΔ𝛼fpsc ,kwΔ𝛼fpsc ,max,k=0, ..., nt,mhe −1.(73d)
20 BÜRGER .
with Φthe measurement function and ythe corresponding measurements at the discrete time points with inverse covari-
ance matrix Σ−1
y,wthe additive white process noise with inverse covariance matrix Σ−1
w,andx0−xarr2
Σ−1
xarr
the arrival
cost with inverse covariance matrix Σ−1
xarr . Function f(⋅)is the solution of an IVP for the ODE model ffor a discrete time
interval [tk,tk+1].
Similar to the MIOCP, the MHE problem is implemented using direct collocation and code generation in CasADi. As
(73) contains no discrete optimization variables, an application of the decomposition approach is not required and the
arising NLPs are directly solved using Ipopt and MA57. Arrival cost updates are conducted using a smoothened extended
Kalman filter (EKF), cf. Reference 56. The problem is solved every 60s in an additional third thread, separate from the
MPC loop.
4.5 Computational hardware, software, and data sources
Both the MPC and the MHE problems are solved on a Fujitsu P920 Desktop PC with an Intel Core i5-4570 3.20 GHz CPU
and 16 GB RAM running Debian 9, using Python 3.5, Clang 7, CasADi build 6d29fee,#pycombina 0.3.1, and OpenModelica
1.13.2. The forecast data used within this study are retrieved from solcast.com57 and updated every hour.
5EXPERIMENTAL MIXED-INTEGER NONLINEAR MPC OPERATION
In the upcoming sections, results of experimental operation of the system using mixed-integer nonlinear MPC are pre-
sented. In the following, first the experimental setup is described, followed by a presentation and discussion of the
experimental results. Finally, the solution times of the algorithm are presented.
5.1 Setup of the experimental study
To investigate the applicability of mixed-integer nonlinear MPC for the solar thermal climate system, experimental oper-
ation of the system has been realized. The results presented in the following were obtained from an operation test on
August 1, 2019 from 05:00 to 19:10 UTC. For that day, weather forecasts indicated high solar irradiation and relatively
high ambient temperature for a summer day. Especially due to the high availability of driving energy, it was expected
that the day would provide beneficial conditions to evaluate the capabilities of the MPC for operating the system at high
temperatures and for prevention of overheating.
For running the experiment, the MPC was activated in the morning after a night where the climate system was not
operating. Due to a longer hot weather period prior to the experiment, both the air and concrete temperature of the
building were relatively high, partially exceeding 25◦C. Due to that and the high availability of driving energy, it was
decided to set the room temperature comfort range for the experiment to a deliberately low range of [Tr,a,min,Tr,a,max]=
[21◦C,22◦C], as even though this room temperatures would not be achieved due to limitations in cooling power, such
setting would cause the MPC to aim at maximum cooling power generation. The outdoor blinds of the glass roof of the
building were closed during the whole day. The heat input caused by people in the building was very limited as the
experiment was conducted during the semester break.
5.2 Results and discussion of the experimental study
Figure 9 shows the results of the experimental MPC operation. From top to bottom, the plot shows the measured ambient
conditions, solar collector temperatures, HTS temperatures, LTS temperatures, and room air and concrete temperatures
measured over the considered horizon and corresponding, influencing controls. In the upcoming sections, a detailed
explanation and interpretation of the system behavior is given.
#At the time of writing, this explicit build of CasADi is required, as it implements all features required for this study for use in combination with the
Python multiprocessing module.
BÜRGER . 21
FIGURE 9 Temperature
measurements and control
actions for the system operated
using mixed-integer nonlinear
MPC on August 1, 2019, from
05:00 to 19:10 [Colour figure can
be viewed at
wileyonlinelibrary.com]
The ambient conditions measured during the day of the experiment are shown in the top plot of Figure 9. The solar
irradiation throughout the day has been measured using the pyranometer on the roof. While the irradiation profile Ivtsc on
the VTSC was measured directly, the irradiation Ifpsc on the FPSC mounted at 45◦angle is computed from the pyranometer
measurements using pysolar.58 The depicted measurements indicate that, after a partly cloudy morning, the irradiation
profile was very stable during noon with high irradiation on the collector surfaces, apart from a few disturbances in the
afternoon, until the evening again was partly cloudy. This confirms the expected high availability of solar energy during
the day at predominantly stable conditions.
The ambient temperature Tamb measured on the roof of the building rose steadily from approximately 18◦Cinthe
morning and peaked in the late afternoon at 35◦C. Later, Tamb decreased again to approximately 25◦C at the end of the
experiment. The profile shows the expected higher ambient temperature during the day, as well as free cooling potential
that could be utilized by the system at the beginning of the day.
5.2.1 Solar circuits
The second plot from top in Figure 9 shows the measurements for the temperature sensors Tvtsc and Tfpsc at the outlet of
the VTSC and FPSC, respectively. It can be observed that despite the partly fluctuating but high solar irradiation, the MPC
is able to achieve high, however slightly fluctuating, collector temperatures close to their defined maximum temperature
throughout the major part of the day, which is a desirable result.
Prior to approximately 9:00, an interesting observation can be made where the controller utilizes the solar mixing valve
to keep the mass flow through the FPSC low while increasing the flow through the VTSC. Even though Tfpsc,s shows a
22 BÜRGER .
higher temperature than Tvtsc,s, it appears to be more favorable not to realize a higher flow through the FPSC and to avoid
temperature alignment of the arrays, which would be the aim of a conventional control approach. As both the area and the
heat loss coefficient of the FPSC are bigger compared to the VTSC, the controls identified by the MPC increase the heat
dissipation of the system to the environment. One plausible interpretation is that the MPC aims to reduce heat storage
during that time, and with this, to prevent overheating of the system later during the day, which would be particularly
remarkable.
During a phase of active heating of the collector fields between 09:30 and 10:00, the temperature exceeds the specified
maximum by approx. 5 K. However, this temperature is still below the limits at which the EC mode of the ACM is activated
by the PLC. In fact, activation of the EC mode was avoided throughout the entire day, and the safety constraints (56)–(58)
which ensure that Ppsc is always in full operation once one collector temperature exceeds 65◦C are always fulfilled.
The MPC performance could possibly be further improved by introduction of a more detailed model of the pipe that
connects the SHX and the collector fields. Though the volume of one pipe distance from the cellar to the roof contains
approximately 0.2 m3of solar liquid, currently only one temperature state is used for modeling of this distance. Therefore,
a more fine-grained depiction of the temperature distribution along the tube using more temperature states could probably
improve both temperature constraint satisfaction and reduce the fluctuation of collector temperatures when operating
close to their maximum value. However, this increase in the number of states would also increase the solution time for
the MINLP, while reliable estimation of the corresponding state values would probably require installation of further
temperature sensors.
5.2.2 High-temperature storage
The middle plot in Figure 9 shows the measurements for the nhts =4 temperature sensors Thts,k,k=1, …,nhts of the
stratified HTS. It can be observed how the MPC actively utilizes the several inlets and outlets of the storage within its
control decisions, which is detailed in the following.
Prior to 11:00, the MPC uses mainly the middle outlet Ohts,m and middle inlet Ihts,m of the HTS. Doing this, it utilizes
only the upper part of the stratified HTS for heat exchange with the PSC via SHX, which results in a rapid heating of this
part of the storage as illustrated by the sensors Thts,1and Thts,2. Due to that, high HT temperatures for ACM operation can
be achieved earlier as if the total storage would be heated up, which results in both a longer and more efficient operation
of the ACM.
Past 11:00, the MPC first starts to utilize the lower outlet Ohts,b. By mixing in water from the bottom region of the HTS,
the temperature of the solar liquid at the SHX outlet can be reduced more as if only water from the upper region of the
HTS was supported to the SSC. This is actively considered to prevent the solar collectors from overheating.
Later during the day and after the peak of solar energy availability, the MPC often fully utilizes the lower outlet Ohts,b
and lower inlet Ihts,b. As no storage capacity needs to be held available for reduction of the collector temperatures, the
total HTS can be used at that part of the day so that more of the heat energy remaining in the PSC can be extracted.
These observations are particularly remarkable, as they exemplify the advantages of MPC for situational and individ-
ual control decisions. While it was not favorable in the morning to use the total HTS but to keep the lower part of the
storage at lower temperatures, it is favorable in the afternoon to extract as much energy as possible from the PSC and
store it in the HTS. As the optimality of this decision however depends strongly on the expected ambient conditions and
differs for other scenarios, it is hard to achieve comparable behavior using a conventional controller based exclusively on
current measurements.
5.2.3 Adsorption cooling machine
As shown in the second plot from the bottom in Figure 9, the ACM is operated in FC mode during the morning when
ambient temperature is still comparatively low and it can be observed that the temperature of the LTS is reduced. At the
same time, Plc and the FCUs are operated to decrease the room air temperature, as shown in the bottom plot of Figure 9.
Once a sufficiently high temperature in the top of the HTS is reached, the ACM is started and operates in AC mode
at comparatively high LT storage temperature and still low ambient temperature, which results in high COP and cool-
ing power of the ACM. This results in a rapid temperature decrease in the LTS. During the day, operation in AC mode
continues and the LTS temperature decreases further until approximately 12:00. After that, rising ambient temperatures
BÜRGER . 23
and later also decreasing HTS temperatures result in a slight but steady increase of LTS temperatures until the machine
is turned off at around 18:30. After that time, the MPC decides to use the remaining cooling energy stored in the LTS,
before continuing in FC mode at the end of the experiment when the LTS temperature meets the ambient temperature
level again.
Apart from its purpose to provide cooling power, operation of the ACM in AC mode is important for the system
functionality itself, as without the machine acting as a heat consumer, emergency cooling of the HTS via the RT or a
shutdown of the system due to gasification of the solar liquid might become necessary at some point. Accordingly, surplus
of heat during the day and corresponding negative effects can be avoided if the activation time of the ACM is chosen based
on the expected solar irradiation over the day instead of fixed HTS temperature set points. In contrast to using MPC, this
can hardly be achieved using conventional, set-point and PID-based controllers.
This can be further exemplified on the controllers choice for ACM operation at the end of the day. Though the HTS
temperature would still be sufficiently high to drive the ACM in AC mode after 18:30, the MPC decides to utilize FC also
before all driving energy in the HTS is used up. In between, ACM operation is paused so that the cooling energy stored in
the LTS can be utilized first, as the temperature level for FC utilization is rather high.
Doing this, driving energy is retained in the HTS for an earlier AC start in the upcoming day. Such an earlier start has
been scheduled for approximately 5:00 of the upcoming day, as shown in Figure 10 which depicts the predicted system
operation for the upcoming 24 h at the end time point of the experiment. While the controller aims to use FC during the
night where ambient temperatures are lower, the AC is activated early on the upcoming day, which results in favorable
operation conditions for the ACM while generating storage capacity for the solar energy expected during the day.
FIGURE 10 Predicted
system temperatures and control
actions for the upcoming 24
hours on August 1, 2019 at 19:10
[Colour figure can be viewed at
wileyonlinelibrary.com]
24 BÜRGER .
0 20 40 60 80 100 120
Duration (s)
NLP rel
NLP bin
CIA
Stages of the MPC algorithm
0.0 0.2 0.4 0.6 0. 8 1.0
Ratio
Optimal Acceptable Timeout FIGURE 11 Durations
and return status of the
individual steps of the MPC
algorithm for a total of 42
executions of NLPrel and CIA
and 416 executions of NLPbin
[Colour figure can be viewed at
wileyonlinelibrary.com]
5.2.4 Low-temperature circuits and room installations
As expected from the setup of the experiment, the pump Plc and with it the FCUs are operated permanently, due to the
relatively high temperatures in the building compared to Tr,a,min and Tr,a,max, which is depicted in the bottom plot in
Figure 9.
In the beginning of the day, a major temperature drop of the room air temperatures Tr,a,1and Tr,a,2can be observed.
This is, however, not solely caused by the operation of the climate system alone, but due to major ambient air exchange
caused by multiple open windows in the building opened by the faculty staff in the beginning of the day, which were
closed again once the ambient temperature achieved a higher level than the room air temperature. This illustrates the
high influence of building usage on system operation.
As soon as the windows got closed at around 7:00, the room temperature started to increase again since the concrete
temperatures Tr,c,1and Tr,c,2were still high, which illustrates the strong influence of the heat stored in the concrete mass
of the building on the air temperature development. Due to that, the climate system is as expected not capable of driving
the room temperatures to the specified comfort region, as the system setup is not capable of providing the required cooling
power. However, the climate system is able to prevent further heating of the building and to compensate most of the
occurring heat loads, illustrated by the stagnating room temperature development.
5.3 Runtime of the algorithm
An overview of the runtime of the individual steps of the MPC algorithm and the return status of the solution processes
are given in Figure 11. It can be observed that solving NLPbin takes typically less time than NLPrel, which was assumed
during algorithm design. More than 95 % of the 416 solutions of NLPbin finished prior to the timeout of approximately
84 s. For all of these finished instances and for all instances of NLPrel , often optimal or at least acceptable solutions have
been obtained, so that no problem has been classified infeasible. While the runtime of the CIA is typically much lower
than those of the NLPs, several outliers have been registered with an algorithm runtime of up to 75 s. However, also the
maximum runtime for both NLPrel and CIA are still far below the maximum possible runtime of approximately 15 min.
6CONCLUSIONS AND FUTURE WORK
In this work, we presented a real-life experiment in which we demonstrate the real-time applicability of nonlinear
mixed-integer MPC for a solar thermal climate system. For this, we first described a control-oriented nonlinear model of
the system. Then, we introduced a parallelized algorithm for mixed-integer nonlinear MPC including a corresponding
implementation for the system. Afterward, we presented and discussed the results of real-time experimental operation of
the physical system. We have shown that the controller was able to successfully operate the system and actively utilized
ACM, pumps, and mixing valves within situational and individual control decisions. The advantages of mixed-integer
nonlinear MPC for control of the solar collector fields, active utilization of storage temperature stratifications, and con-
sideration of ACM operation efficiency were highlighted. Finally, we have shown that the solution times of the utilized
algorithm and implementations were suitable for real-time control of the system.
Future work should focus on extended tests for MPC operation, including operation on longer time periods and during
different weather scenarios and ambient conditions. Improvement of the system model and systematic tuning of problem
BÜRGER . 25
and solver parameters could yield further control performance gains. In this regard, comparisons also to other control
strategies, such as conventional controllers, linear(ized) MPC strategies, or strategies based on meta-heuristics, could be
considered. Also, an extension toward a stochastic MPC approach could be considered, where different forecast variants
for upcoming operation conditions could be taken into account simultaneously. Further, if a continuous MPC operation
of the system should be facilitated also during cold seasons, the winter operation mode of the system where collected solar
heat is used for heating support of the building needs to be included in the system model. In this context, an extension of
the current plant configuration by installation of a reversible heat pump could be considered, as an extension of the plant
by such an additional switched component could not only yield the possibility for experimental nonlinear mixed-integer
MPC applications also during cold seasons, but, however, also allow for a higher number of possible operation modes
during summer operation and an increased impact of the cooling system on the building temperatures.
ACKNOWLEDGMENTS
This research was supported by the German Federal Ministry for Economic Affairs and Energy (BMWi) via eco4wind
(0324125B) and DyConPV (0324166B), by DFG via Research Unit FOR 2401, by the State Ministry of Baden-Wuerttemberg
for Sciences, Research and Arts (Az: 22-7533.-30-20/9/3), by the German Federal Ministry for the Environment,
Nature Conservation, and Nuclear Safety (BMU) via WIN4Climate (03KF0094A), by the Reiner Lemoine Stiftung
(1581440000956), by INTERREG V Upper Rhine, project ACA-MODES, and Open Access funding enabled and organized
by Projekt DEAL.
The forecast data for solar irradiation and ambient temperature used within this work was provided by solcast.com,57
whose support of our work we kindly acknowledge.
Further, the authors would like to thank the facility management team at Karlsruhe University of Applied Sciences
around Matthias Franke for their support during installation, commissioning, and maintenance of the solar thermal
climate system.
Finally, the authors want to thank three anonymous reviewers, whose valuable comments and feedback helped to
improve and clarify this manuscript.
DATA AVAILABILITY STATEMENT
Research data are not shared.
ORCID
Adrian Bürger https://orcid.org/0000-0003-2740-4526
Daniel Bull https://orcid.org/0000-0002-2391-3967
Parantapa Sawant https://orcid.org/0000-0002-5714-0114
REFERENCES
1. Cominesi SR, Farina M, Giulioni L, Picasso B, Scattolini R. A two-layer stochastic model predictive control scheme for microgrids. IEEE
Trans Control Syst Technol. 2018;26(1):1-13. https://doi.org/10.1109/TCST.2017.2657606.
2. Razzanelli M, Crisostomi E, Pallottino L, Pannocchia G. Distributed model predictive control for energy management in a network of
microgrids using the dual decomposition method. Opt Control Appl Methods. 2020;41:25–41. https://doi.org/10.1002/oca.2504.
3. Fischer D, Madani H. On heat pumps in smart grids: a review. Renew Sustain Energy Rev. 2017;70:342-357. https://doi.org/10.1016/j.rser.
2016.11.182.
4. Zhao Y, Lu Y, Yan C, Wang S. MPC-based optimal scheduling of grid-connected low energy buildings with thermal energy storages. Energ
Build. 2015;86:415-426. https://doi.org/10.1016/j.enbuild.2014.10.019.
5. Schirrer A, Brandstetter M, Leobner I, Hauer S, Kozek M. Nonlinear model predictive control for a heating and cooling system of a
low-energy office building. Energ Build. 2016;125:86-98. https://doi.org/10.1016/j.enbuild.2016.04.029.
6. Vasallo MJ, Bravo JM. A MPC approach for optimal generation scheduling in CSP plants. Appl Energy. 2016;165:357-370. https://doi.org/
10.1016/j.apenergy.2015.12.092.
7. Cojocaru EG, Bravo JM, Vasallo MJ, Marín D. A binary-regularization-based model predictive control applied to generation scheduling in
concentrating solar power plants. Opt Control Appl Methods. 2019;41:215-238. https://doi.org/10.1002/oca.2498.
8. Camacho EF, Bordons C. Model Predictive Control. Advanced Textbooks in Control and Signal Processing. 2nd ed. London, UK: Springer
London Limited; 2007.
9. De Coninck R, Helsen L. Practical implementation and evaluation of model predictive control for an office building in Brussels. Energ
Build. 2016;111:290-298. https://doi.org/10.1016/j.enbuild.2015.11.014.
10. Oldewurtel F, Parisio A, Jones CN, et al. Use of model predictive control and weather forecasts for energy efficient building climate control.
Energ Build. 2012;45:15-27. https://doi.org/10.1016/j.enbuild.2011.09.022.
26 BÜRGER .
11. Qi W, Liu J, Christofides PD. Distributed supervisory predictive control of distributed wind and solar energy systems. IEEE Trans Control
Syst Technol. 2013;21(2):504-512. https://doi.org/10.1109/TCST.2011.2180907.
12. Kuboth S, Heberle F, König-Haagen A, Brüggemann D. Economic model predictive control of combined thermal and electric residential
building energy systems. Appl Energy. 2019;240:372-385. https://doi.org/10.1016/j.apenergy.2019.01.097.
13. Ma J, Qin SJ, Salsbury T. Application of economic MPC to the energy and demand minimization of a commercial building. JProcess
Control. 2014;24(8):1282-1291. https://doi.org/10.1016/j.jprocont.2014.06.011.
14. Fischer D, Bernhardt J, Madani H, Wittwer C. Comparison of control approaches for variable speed air source heat pumps considering
time variable electricity prices and PV. Appl Energy. 2017;204:93-105. https://doi.org/10.1016/j.apenergy.2017.06.110.
15. Bürger A, Bohlayer M, Hoffmann S, Altmann-Dieses A, Braun M, Diehl M. A whole-year simulation study on nonlinear mixed-integer
model predictive control for a thermal energy supply system with multi-use components. Appl Energy. 2020;258:114064. https://doi.org/
10.1016/j.apenergy.2019.114064.
16. Zafra-Cabeza A, Velarde P, Maestre JM. Multicriteria optimal operation of a microgrid considering risk analysis, renewable resources, and
model predictive control. Opt Control Appl Methods. 2020;41:94–106. https://doi.org/10.1002/oca.2525.
17. Lee Z, Gupta K, Kircher KJ, Zhang KM. Mixed-integer model predictive control of variable-speed heat pumps. Energy Build.
2019;198:75-83. https://doi.org/10.1016/j.enbuild.2019.05.060.
18. Sangi R, Kümpel A, Müller D. Real-life implementation of a linear model predictive control in a building energy system. Journal of Building
Engineering. 2019;22:451-463. https://doi.org/10.1016/j.jobe.2019.01.002.
19. Parisio A, Rikos E, Tzamalis G, Glielmo L. Use of model predictive control for experimental microgrid optimization. Appl Energy.
2014;115:37-46. https://doi.org/10.1016/j.apenergy.2013.10.027.
20. Fiorentini M, Wall J, Ma Z, Braslavsky JH, Cooper P. Hybrid model predictive control of a residential HVAC system with on-site thermal
energy generation and storage. Appl Energy. 2017;187:465-479. https://doi.org/10.1016/j.apenergy.2016.11.041.
21. Khakimova A, Kusatayeva A, Shamshimova A, et al. Optimal energy management of a small-size building via hybrid model predictive
control. Energy Build. 2017;140:1-8. https://doi.org/10.1016/j.enbuild.2017.01.045.
22. Nocedal J, Wright SJ. Numerical Optimization. Springer Series in Operations Research and Financial Engineering. 2nd ed. London, UK:
Springer; 2006.
23. Lu Y, Wang S, Sun Y, Yan C. Optimal scheduling of buildings with energy generation and thermal energy storage under dynamic electricity
pricing using mixed-integer nonlinear programming. Appl Energy. 2015;147:49-58. https://doi.org/10.1016/j.apenergy.2015.02.060.
24. Huang Y, Wang W, Hou B. A hybrid algorithm for mixed integer nonlinear programming in residential energy management. JCleanProd.
2019;226:940-948. https://doi.org/10.1016/j.jclepro.2019.04.062.
25. Kim JS, Edgar TF. Optimal scheduling of combined heat and power plants using mixed-integer nonlinear programming. Energy.
2014;77:675-690. https://doi.org/10.1016/j.energy.2014.09.062.
26. Sager S. Reformulations and algorithms for the optimization of switching decisions in nonlinear optimal control. J Process Control.
2009;19(8):1238-1247. https://doi.org/10.1016/j.jprocont.2009.03.008.
27. Sager S, Bock HG, Diehl M. The integer approximation error in mixed-integer optimal control. Math Program. 2012;133(1–2):1-23. https://
doi.org/10.1007/s10107-010-0405-3.
28. Deng K, Sun Y, Li S, et al. Model predictive control of central chiller plant with thermal energy storage via dynamic programming and
mixed-integer linear programming. IEEE Trans Autom Sci Eng. 2015;12(2):565-579. https://doi.org/10.1109/TASE.2014.2352280.
29. Dan M, Srinivasan S, Sundaram S, Easwaran A, Glielmo L. A scenario-based branch-and-bound approach for MES scheduling in urban
buildings. IEEE Trans Ind Inform. 2020;16(12):7510-7520. https://doi.org/10.1109/TII.2020.2978870.
30. Bürger A, Zeile C, Altmann-Dieses A, Sager S, Diehl M. Design, implementation and simulation of an MPC algorithm for switched
nonlinear systems under combinatorial constraints. J Process Control. 2019;81:15-30. https://doi.org/10.1016/j.jprocont.2019.05.016.
31. Sager S, Jung M, Kirches C. Combinatorial integral approximation. Math Meth Oper Res. 2011;73(3):363-380. https://doi.org/10.1007/
s00186-011-0355-4.
32. Bau U, Baumgärtner N, Seiler J, Lanzerath F, Kirches C, Bardow A. Optimal operation of adsorption chillers: first implementation and
experimental evaluation of a nonlinear model-predictive-control strategy. Appl Therm Eng. 2019;149:1503-1521. https://doi.org/10.1016/
j.applthermaleng.2018.07.078.
33. Chang W-S, Wang C-C, Shieh C-C. Experimental study of a solid adsorption cooling system using flat-tube heat exchangers as adsorption
bed. Appl Therm Eng. 2007;27(13):2195-2199. https://doi.org/10.1016/j.applthermaleng.2005.07.022.
34. Biegler L. Nonlinear Programming. Philadelphia, PA: Society for Industrial and Applied Mathematics; 2010.
35. Gillis J. Lookup tables in optimization with CasADi and OptiSpline. Paper presented at: Proceedings of the Benelux Meeting on Systems
and Control; 2018; Soesterberg, Netherlands. https://lirias.kuleuven.be/retrieve/497901.
36. Eicker U. Solar Technologies for Buildings. Chichester, England: John Wiley & Sons; 2003.
37. Sawant P, Bürger A, Doan MD, Felsmann C, Pfafferott J. Development and experimental evaluation of grey-box models of a microscale
polygeneration system for application in optimal control. Energ Build. 2020;215:109725. https://doi.org/10.1016/j.enbuild.2019.109725
38. Wesselak V, Schabbach T, Link T, Fischer J. Regenerative Energietechnik. 2nd ed. Berlin/Heidelberg, Germany: Springer Vieweg; 2013.
39. Löhr Y, Mönnigmann M. Receding horizon heat flow control in domestic buildings - yesterday-based disturbance predictions. Paper
presented at: Proceedings of the European Control Conference (ECC), Limassol, Cyprus; 2018:404-409.
40. Jung M, Kirches C, Sager S. On perspective functions and vanishing constraints in mixed-integer nonlinear optimal control. In: Jünger M,
Reinelt G, eds. Facets of Combinatorial Optimization. Berlin/Heidelberg, Germany: Springer; 2013:387-417.
BÜRGER . 27
41. Rawlings JB, Mayne DQ, Diehl MM. Model Predictive Control: Theory, Computation, and Design. 2nd ed. Santa Barbara, CA: Nob Hill
Publishing; 2017.
42. Kirches C. Fast Numerical Methods for Mixed-Integer Nonlinear Model-Predictive Control. Wiesbaden, Germany: Vieweg+Teubner Verlag;
2011.
43. Bürger A. stcs-mimpc: a demo implementation of a mixed-integer nonlinear model predictive control algorithm for the solar thermal
climate system at Karlsruhe University of Applied Sciences; 2020. https://github.com/adbuerger/stcs-mimpc. Accessed October 12, 2020.
44. Bock HG, Plitt KJ. A multiple shooting algorithm for direct solution of optimal control problems. IFAC Proc Vols. 1984;17(2):1603-1608.
https://doi.org/10.1016/S1474-6670(17)61205-9.
45. Tsang TH, Himmelblau DM, Edgar TF. Optimal control via collocation and non-linear programming. Int J Control. 1975;21(5):763-768.
https://doi.org/10.1080/00207177508922030.
46. Gerdts M. A variable time transformation method for mixed-integer optimal control problems. Opt Control Appl Methods.
2006;27(3):169-182. https://doi.org/10.1002/oca.778.
47. Bürger A, Zeile C, Altmann-Dieses A, Sager S, Diehl M. An algorithm for mixed-integer optimal control of solar thermal climate
systems with MPC-capable runtime. Paper presented at: Proceedings of the European Control Conference (ECC), Limassol, Cyprus;
2018:1379-1385.
48. Jung M. Relaxations and Approximations for Mixed-Integer Optimal Control [PhD dissertation]. Interdisciplinary Center for Scientific
Computing, Heidelberg University; 2013.
49. Python software foundation multiprocessing – process-based parallelism; 2019. https://docs.python.org/3/library/multiprocessing.html.
Accessed August 13, 2019.
50. Andersson JA, Gillis J, Horn G, Rawlings JB, Diehl M. CasADi: a software framework for nonlinear optimization and optimal control.
Math Program Comput 2019;11(1):1–36. https://doi.org/10.1007/s12532-018-0139-4,1.
51. Clang: a C language family frontend for LLVM; 2019. http://clang.llvm.org. Accessed June 10, 2019.
52. Wächter A, Biegler LT. On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming.
Math Program. 2006;106(1):25-57. https://doi.org/10.1007/s10107-004-0559-y.
53. HSL A collection of Fortran codes for large scale scientific computation; 2019. http://www.hsl.rl.ac.uk. Accessed May 17, 2019.
54. OpenModelica; 2017. https://www.openmodelica.org. Accessed June 10, 2019.
55. Lie B, Bajracharya S, Mengist A, et al. API for accessing OpenModelica models from python. Paper presented at: Proceedings of the 9th
EUROSIM Congress on Modelling and Simulation, Oulu, Finland; 2016.
56. Girrbach F, Hol JD, Zandbergen R, Verschueren R, Bellusci G, Diehl M. On the effect of stabilization methods for quaternion invariants on
the uncertainty in optimization-based estimation. IFAC-PapersOnLine. 2018;51(25):116-121. https://doi.org/10.1016/j.ifacol.2018.11.091.
57. Solcast Global solar irradiance data and PV system power output data; 2019. https://solcast.com/. Accessed June 12, 2019.
58. Stafford B. pysolar; 2018. https://doi.org/10.5281/zenodo.1461066, last Accessed August 15, 2019.
How to cite this article: Bürger A, Bull D, Sawant P, et al. Experimental operation of a solar-driven climate
system with thermal energy storages using mixed-integer nonlinear model predictive control. Optim Control Appl
Meth. 2021;1–27. https://doi.org/10.1002/oca.2728