U.S. patent application number 15/199910 was filed with the patent office on 2018-01-04 for hvac system using model predictive control with distributed low-level airside optimization and airside power consumption model.
This patent application is currently assigned to Johnson Controls Technology Company. The applicant listed for this patent is Johnson Controls Technology Company. Invention is credited to Matthew J. Ellis, Nishith R. Patel, Robert D. Turney.
Application Number | 20180004171 15/199910 |
Document ID | / |
Family ID | 60807004 |
Filed Date | 2018-01-04 |
United States Patent
Application |
20180004171 |
Kind Code |
A1 |
Patel; Nishith R. ; et
al. |
January 4, 2018 |
HVAC SYSTEM USING MODEL PREDICTIVE CONTROL WITH DISTRIBUTED
LOW-LEVEL AIRSIDE OPTIMIZATION AND AIRSIDE POWER CONSUMPTION
MODEL
Abstract
A building HVAC system includes an airside system having a
plurality of airside subsystems, a waterside system, a high-level
model predictive controller (MPC), and a plurality of low-level
airside MPCs. Each airside subsystem includes airside HVAC
equipment configured to provide heating or cooling to the airside
subsystem. The waterside system includes waterside HVAC equipment
configured to produce thermal energy used by the airside system to
provide the heating or cooling. The high-level MPC is configured to
perform a high-level optimization to generate an optimal airside
subsystem load profile for each of the plurality of airside
subsystems. The optimal airside subsystem load profiles optimize a
total cost of energy consumed by the airside system and the
waterside system Each of the low-level airside MPCs is configured
to operate the airside HVAC equipment of an airside subsystem
according to the load profile for the airside subsystem.
Inventors: |
Patel; Nishith R.;
(Snellville, GA) ; Turney; Robert D.; (Watertown,
WI) ; Ellis; Matthew J.; (Milwaukee, WI) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Johnson Controls Technology Company |
Plymouth |
MI |
US |
|
|
Assignee: |
Johnson Controls Technology
Company
Plymouth
MI
|
Family ID: |
60807004 |
Appl. No.: |
15/199910 |
Filed: |
June 30, 2016 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
F24F 11/77 20180101;
G05B 13/041 20130101; G05B 2219/2614 20130101; F24F 2130/00
20180101; F24F 3/044 20130101; G05B 11/01 20130101; F24F 2120/10
20180101; F24F 11/62 20180101; F28D 2020/0082 20130101; G05B 17/02
20130101; F24F 11/46 20180101; G05D 23/1923 20130101; F28D 20/0034
20130101; F24F 11/56 20180101; F24F 2110/20 20180101; G05B
2219/37375 20130101; Y02B 30/70 20130101; F24F 11/54 20180101; F24F
11/83 20180101; G05D 23/1932 20130101; Y02E 60/14 20130101; F24F
2005/0025 20130101; F24F 5/0017 20130101; F24F 2110/40 20180101;
G05D 23/1917 20130101; F24F 11/30 20180101; F24F 2110/10 20180101;
F24F 2130/10 20180101 |
International
Class: |
G05B 13/04 20060101
G05B013/04; F24F 11/00 20060101 F24F011/00; F28D 20/00 20060101
F28D020/00; G05B 11/01 20060101 G05B011/01; G05D 23/19 20060101
G05D023/19; G05B 19/042 20060101 G05B019/042; G05B 15/02 20060101
G05B015/02; F24F 5/00 20060101 F24F005/00; F24F 3/044 20060101
F24F003/044 |
Claims
1. A heating, ventilation, or air conditioning (HVAC) system for a
building, the HVAC system comprising: an airside system having a
plurality of airside subsystems, each airside subsystem comprising
airside HVAC equipment configured to provide heating or cooling to
the airside subsystem; a waterside system comprising waterside HVAC
equipment configured to produce thermal energy used by the airside
system to provide the heating or cooling; a high-level model
predictive controller configured to perform a high-level
optimization to generate an optimal airside subsystem load profile
for each of the plurality of airside subsystems, wherein the
optimal airside subsystem load profiles optimize a total energy
cost of both airside power consumption by the airside system and
waterside power consumption by the waterside system at each of a
plurality of time steps in an optimization period; and a plurality
of low-level airside model predictive controllers, each
corresponding to one of the airside subsystems and configured to
use the optimal airside subsystem load profile for the
corresponding airside subsystem to operate the airside HVAC
equipment of the corresponding airside subsystem.
2. The HVAC system of claim 1, wherein the airside subsystems
represent separate buildings thermally decoupled from one another
such that no direct heat exchange occurs between the airside
subsystems.
3. The HVAC system of claim 1, wherein: each airside subsystem load
profile indicates a thermal energy allocation to one of the
plurality of airside subsystems at each of the plurality of time
steps; and the high-level model predictive controller is configured
to use an airside power consumption model to define the airside
power consumption of each airside subsystem as a function of the
thermal energy allocation to the airside subsystem.
4. The HVAC system of claim 1, wherein the high-level model
predictive controller is configured to generate an airside
subsystem temperature model for each of the plurality of airside
subsystems, each airside subsystem temperature model defining a
relationship between one of the airside subsystem load profiles and
a temperature of the corresponding airside subsystem.
5. The HVAC system of claim 1, wherein the high-level model
predictive controller is configured to generate an optimal
waterside demand profile for the waterside system; the system
further comprising a low-level waterside model predictive
controller configured to perform a low-level optimization to
generate optimal waterside setpoints for the waterside system
subject to a demand constraint based on the optimal waterside
demand profile; wherein the low-level waterside model predictive
controller is configured to use the optimal waterside setpoints to
operate waterside HVAC equipment in the waterside system.
6. The HVAC system of claim 1, wherein the high-level model
predictive controller is configured to: perform the high-level
optimization by optimizing a high-level cost function which defines
the total energy cost as a function of a waterside demand profile
indicating a thermal energy production of the waterside system at
each of the plurality of time steps in the optimization period; and
use a waterside demand model to define the waterside demand profile
as a function of the plurality of airside subsystem load
profiles.
7. The HVAC system of claim 1, wherein each of the low-level
airside model predictive controllers is configured to: perform a
low-level optimization to generate optimal airside temperature
setpoints for the corresponding airside subsystem using the optimal
airside subsystem load profile for the corresponding airside
subsystem; and use the optimal airside temperature setpoints for
the corresponding airside subsystem to operate the airside HVAC
equipment in the corresponding airside subsystem.
8. The HVAC system of claim 7, wherein: each airside subsystem
comprises a plurality of building zones; and the optimal airside
temperature setpoints for each airside subsystem comprise optimal
airside temperature setpoints for each of the plurality of building
zones in the airside subsystem.
9. The HVAC system of claim 7, wherein each of the low-level
airside model predictive controllers is configured to generate a
zone load profile for each of the plurality of building zones in
the corresponding airside subsystem, each zone load profile
indicating a thermal energy allocation to one of the building zones
at each of the plurality of time steps in the optimization
period.
10. The HVAC system of claim 1, wherein each of the optimal airside
subsystem load profiles comprises at least one of: optimal thermal
energy load values for the corresponding airside subsystem at each
of the plurality of time steps; and optimal temperature values for
the corresponding airside subsystem at each of the plurality of
time steps.
11. A method for optimizing energy cost in a building HVAC system
including a waterside system and an airside system having a
plurality of airside subsystems, the method comprising: generating
a high-level cost function defining the energy cost as a function
of both a waterside power consumption of the waterside system and
an airside power consumption of each airside subsystem at each of a
plurality of time steps in an optimization period; performing a
high-level optimization at a high-level model predictive controller
to generate an optimal airside subsystem load profile for each of
the plurality of airside subsystems, wherein the optimal airside
subsystem load profiles optimize the energy cost; providing the
optimal airside subsystem load profiles from the high-level model
predictive controller to a plurality of low-level airside model
predictive controllers, each of the low-level airside model
predictive controllers corresponding to one of the plurality of
airside subsystems; using the optimal airside subsystem load
profiles at each of the low-level airside model predictive
controllers to operate airside HVAC equipment in the corresponding
airside subsystem.
12. The method of claim 11, wherein the airside subsystems
represent separate buildings thermally decoupled from one another
such that no direct heat exchange occurs between the airside
subsystems.
13. The method of claim 11, wherein each airside subsystem load
profile indicates a thermal energy allocation to one of the
plurality of airside subsystems at each of the plurality of time
steps; the method further comprising using an airside power
consumption model to define the airside power consumption of each
airside subsystem as a function of the thermal energy allocation to
the airside subsystem.
14. The method of claim 11, further comprising generating an
airside subsystem temperature model for each of the plurality of
airside subsystems, each airside subsystem temperature model
defining a relationship between one of the airside subsystem load
profiles and a temperature of the corresponding airside
subsystem.
15. The method of claim 11, wherein performing the high-level
optimization comprises generating an optimal waterside demand
profile for the waterside system, the method further comprising:
providing the optimal waterside demand profile to a low-level
waterside model predictive controller; performing a low-level
optimization at the low-level waterside model predictive controller
to generate optimal waterside setpoints for the waterside system
subject to a demand constraint based on the optimal waterside
demand profile; and using the optimal waterside setpoints to
operate waterside HVAC equipment in the waterside system.
16. The method of claim 11, wherein the high-level cost function
defines the energy cost as a function of a waterside demand profile
indicating a thermal energy production of the waterside system at
each of the plurality of time steps in the optimization period; the
method further comprising using a waterside demand model to define
the waterside demand profile as a function of the plurality of
airside subsystem load profiles.
17. The method of claim 11, further comprising: performing a
low-level optimization at each of the low-level airside model
predictive controllers to generate optimal airside temperature
setpoints for the corresponding airside subsystem using the optimal
airside subsystem load profile for the corresponding airside
subsystem; and using the optimal airside temperature setpoints for
the corresponding airside subsystem to operate the airside HVAC
equipment in the corresponding airside subsystem.
18. The method of claim 17, wherein: each airside subsystem
comprises a plurality of building zones; and performing the
low-level optimization comprises generating optimal airside
temperature setpoints for each of the plurality of building
zones.
19. The method of claim 18, wherein performing the low-level
optimization comprises generating a zone load profile for each of
the plurality of building zones, each zone load profile indicating
a thermal energy allocation to one of the building zones at each of
the plurality of time steps in the optimization period.
20. A method for optimizing energy cost in a building HVAC system
including a waterside system and an airside system having a
plurality of airside subsystems, the method comprising: generating
a high-level cost function defining the energy cost as a function
of both a waterside power consumption of the waterside system and
an airside power consumption of each airside subsystem at each of a
plurality of time steps in an optimization period; performing a
high-level optimization at a high-level model predictive controller
to generate an optimal airside subsystem temperature profile for
each of the plurality of airside subsystems, wherein the optimal
airside subsystem temperature profiles optimize the energy cost
defined by the cost function; providing the optimal airside
subsystem temperature profiles from the high-level model predictive
controller to a plurality of low-level airside model predictive
controllers, each of the low-level airside model predictive
controllers corresponding to one of the plurality of airside
subsystems; and using the optimal airside subsystem temperature
profiles at each of the low-level airside model predictive
controllers to operate airside HVAC equipment in the corresponding
airside subsystems.
Description
BACKGROUND
[0001] The present disclosure relates generally to a heating,
ventilation, or air conditioning (HVAC) system for a building. The
present disclosure relates more particularly to a building HVAC
system which uses model predictive control (MPC) to optimize the
cost of energy consumed by the HVAC system.
[0002] Commercial buildings consume approximately 20% of the total
U.S. energy consumption and account for roughly $200 billion per
year in primary energy expenditures. The Energy Information
Administration projects that commercial floor space and primary
energy consumption will continue to grow into the future. Average
energy prices, on the other hand, are expected to remain relatively
stable. Therefore, the amount spent on energy in commercial
buildings will continue to increase significantly. Given the
significance of these energy cost values and their projected
growth, buildings have become a prime target for control strategies
designed to reduce consumption or improve efficiency, particularly
in the area of temperature control.
[0003] Many HVAC systems in commercial buildings and educational
facilities use simple on/off and proportional-integral-derivative
(PID) controllers for control of their equipment. They rely on
temperature controllers whose only goal is to converge to the
desired temperature set point and stay there, within some
tolerance. However, a better goal is to minimize total energy
consumption or minimize total energy cost. In a utility market with
time-varying prices, there exists the potential for cost savings by
temporally shifting heating or cooling loads using some form of
energy storage. To achieve these savings, predictive optimization
can be used with a model of the system to forecast the future load.
Load shifting decreases the burden on power plants during peak
hours, allowing them to operate more efficiently. Furthermore,
chillers operate more efficiently at night when the cooling water
temperature is lower.
[0004] MPC is a method of advanced process control that has been
highly successful over the past two decades. MPC uses a model of
the system that relates the inputs (control actions) to outputs
(process measurements). The model is used to predict the process
variables based on the actions taken by the controller over a
period of time called the horizon. At each step, MPC solves an
online optimization problem using this model to determine a
sequence of control actions that achieve an objective such as
minimizing tracking error or input usage while respecting process
constraints such as equipment capacity and safety bounds. The first
control action in the sequence is implemented and the optimization
problem is solved again at the next step after new measurements are
obtained. In economic MPC, the objective in the optimization
problem is to minimize total cost.
[0005] Economically optimal control systems have not been deployed
widely in the HVAC industry. One fundamental obstacle to the
successful deployment of MPC in HVAC systems is the large number of
building zones. To implement MPC in HVAC systems, it may be
desirable to solve the optimization problem in a reasonably short
time (e.g., on the order of a few minutes). Campus-wide
implementations may contain hundreds of buildings and thousands of
air handler regions each with tens of zones. A single, combined
control system for these applications is impractical and
undesirable since the resulting single optimization problem is too
large to solve in real time.
[0006] Some energy cost optimization techniques focus primarily on
the power used by the waterside equipment, such as chillers and
pumps, in generating chilled water since they were the major
contributors to the electricity costs. Such optimization techniques
may neglect the costs associated with running airside equipment,
which had been minor. With chillers and central plants becoming
more efficient, the percentage of the total cost associated with
operating fans in air handler units has increased. In some
implementations, airside costs can account for as much as 30% of
the total energy cost. Therefore, it would be desirable to include
an airside power consumption model in the economic optimization
problem to effectively manage the overall power consumption of the
airside and waterside systems simultaneously.
SUMMARY
[0007] One implementation of the present disclosure is a heating,
ventilation, or air conditioning (HVAC) system for a building. The
HVAC system includes an airside system having a plurality of
airside subsystems, a waterside system, a high-level model
predictive controller (MPC), and a plurality of low-level airside
MPCs. Each airside subsystem includes airside HVAC equipment
configured to provide heating or cooling to the airside subsystem.
The waterside system includes waterside HVAC equipment configured
to produce thermal energy used by the airside system to provide the
heating or cooling. The high-level MPC is configured to perform a
high-level optimization to generate an optimal airside subsystem
load profile for each of the plurality of airside subsystems. The
optimal airside subsystem load profiles optimize a total energy
cost of both airside power consumption by the airside system and
waterside power consumption by the waterside system at each of a
plurality of time steps in an optimization period. Each of the
low-level airside MPCs corresponds to one of the airside subsystems
and is configured to use the optimal airside subsystem load profile
for the corresponding airside subsystem to operate the airside HVAC
equipment of the corresponding airside subsystem.
[0008] In some embodiments, the airside subsystems represent
separate buildings thermally decoupled from one another such that
no direct heat exchange occurs between the airside subsystems.
[0009] In some embodiments, each airside subsystem load profile
indicates a thermal energy allocation to one of the plurality of
airside subsystems at each of the plurality of time steps. The
high-level MPC can be configured to use an airside power
consumption model to define the airside power consumption of each
airside subsystem as a function of the thermal energy allocation to
the airside subsystem.
[0010] In some embodiments, the high-level MPC is configured to
generate an airside subsystem temperature model for each of the
plurality of airside subsystems. Each airside subsystem temperature
model can define a relationship between one of the airside
subsystem load profiles and a temperature of the corresponding
airside subsystem.
[0011] In some embodiments, the high-level MPC is configured to
generate an optimal waterside demand profile for the waterside
system. The system can include a low-level waterside model
predictive controller configured to perform a low-level
optimization to generate optimal waterside setpoints for the
waterside system subject to a demand constraint based on the
optimal waterside demand profile. The low-level waterside model
predictive controller can be configured to use the optimal
waterside setpoints to operate waterside HVAC equipment in the
waterside system.
[0012] In some embodiments, the high-level MPC is configured to
perform the high-level optimization by optimizing a high-level cost
function which defines the total energy cost as a function of a
waterside demand profile indicating a thermal energy production of
the waterside system at each of the plurality of time steps in the
optimization period. The high-level MPC can use a waterside demand
model to define the waterside demand profile as a function of the
plurality of airside subsystem load profiles.
[0013] In some embodiments, each of the low-level airside model
predictive controllers is configured to perform a low-level
optimization to generate optimal airside temperature setpoints for
the corresponding airside subsystem using the optimal airside
subsystem load profile for the corresponding airside subsystem.
Each low-level airside MPC can use the optimal airside temperature
setpoints for the corresponding airside subsystem to operate the
airside HVAC equipment in the corresponding airside subsystem.
[0014] In some embodiments, each airside subsystem includes a
plurality of building zones. The optimal airside temperature
setpoints for each airside subsystem can include optimal airside
temperature setpoints for each of the plurality of building zones
in the airside subsystem.
[0015] In some embodiments, each of the low-level airside MPCs is
configured to generate a zone load profile for each of the
plurality of building zones in the corresponding airside subsystem.
Each zone load profile can indicate a thermal energy allocation to
one of the building zones at each of the plurality of time steps in
the optimization period.
[0016] In some embodiments, each of the optimal airside subsystem
load profiles includes at least one of optimal thermal energy load
values for the corresponding airside subsystem at each of the
plurality of time steps and optimal temperature values for the
corresponding airside subsystem at each of the plurality of time
steps.
[0017] Another implementation of the present disclosure is a method
for optimizing energy cost in a building HVAC system. The building
HVAC system includes a waterside system and an airside system
having a plurality of airside subsystems. The method includes
generating a high-level cost function defining the energy cost as a
function of both a waterside power consumption of the waterside
system and an airside power consumption of each airside subsystem
at each of a plurality of time steps in an optimization period. The
method includes performing a high-level optimization at a
high-level model predictive controller (MPC) to generate an optimal
airside subsystem load profile for each of the plurality of airside
subsystems. The optimal airside subsystem load profiles optimize
the energy cost. The method includes providing the optimal airside
subsystem load profiles from the high-level MPC to a plurality of
low-level airside MPCs. Each of the low-level airside MPCs
corresponds to one of the plurality of airside subsystems. The
method includes using the optimal airside subsystem load profiles
at each of the low-level airside MPCs to operate airside HVAC
equipment in the corresponding airside subsystem.
[0018] In some embodiments, the airside subsystems represent
separate buildings thermally decoupled from one another such that
no direct heat exchange occurs between the airside subsystems.
[0019] In some embodiments, each airside subsystem load profile
indicates a thermal energy allocation to one of the plurality of
airside subsystems at each of the plurality of time steps. The
method can further include using an airside power consumption model
to define the airside power consumption of each airside subsystem
as a function of the thermal energy allocation to the airside
subsystem.
[0020] In some embodiments, the method includes generating an
airside subsystem temperature model for each of the plurality of
airside subsystems. Each airside subsystem temperature model can
define a relationship between one of the airside subsystem load
profiles and a temperature of the corresponding airside
subsystem.
[0021] In some embodiments, performing the high-level optimization
includes generating an optimal waterside demand profile for the
waterside system. The method can include providing the optimal
waterside demand profile to a low-level waterside MPC, performing a
low-level optimization at the low-level waterside MPC to generate
optimal waterside setpoints for the waterside system subject to a
demand constraint based on the optimal waterside demand profile,
and using the optimal waterside setpoints to operate waterside HVAC
equipment in the waterside system.
[0022] In some embodiments, the high-level cost function defines
the energy cost as a function of a waterside demand profile
indicating a thermal energy production of the waterside system at
each of the plurality of time steps in the optimization period. The
method can include using a waterside demand model to define the
waterside demand profile as a function of the plurality of airside
subsystem load profiles.
[0023] In some embodiments, the method includes performing a
low-level optimization at each of the low-level airside MPCs to
generate optimal airside temperature setpoints for the
corresponding airside subsystem using the optimal airside subsystem
load profile for the corresponding airside subsystem. The method
can include using the optimal airside temperature setpoints for the
corresponding airside subsystem to operate the airside HVAC
equipment in the corresponding airside subsystem.
[0024] In some embodiments, each airside subsystem includes a
plurality of building zones. Performing the low-level optimization
can include generating optimal airside temperature setpoints for
each of the plurality of building zones.
[0025] In some embodiments, performing the low-level optimization
includes generating a zone load profile for each of the plurality
of building zones. Each zone load profile can indicate a thermal
energy allocation to one of the building zones at each of the
plurality of time steps in the optimization period.
[0026] Another implementation of the present disclosure is a method
for optimizing energy cost in a building HVAC system. The building
HVAC system includes a waterside system and an airside system
having a plurality of airside subsystems. The method includes
generating a high-level cost function defining the energy cost as a
function of both a waterside power consumption of the waterside
system and an airside power consumption of each airside subsystem
at each of a plurality of time steps in an optimization period. The
method includes performing a high-level optimization at a
high-level model predictive controller (MPC) to generate an optimal
airside subsystem temperature profile for each of the plurality of
airside subsystems. The optimal airside subsystem temperature
profiles optimize the energy cost defined by the cost function. The
method includes providing the optimal airside subsystem temperature
profiles from the high-level MPC to a plurality of low-level
airside MPCs. Each of the low-level airside MPCs corresponds to one
of the plurality of airside subsystems. The method includes using
the optimal airside subsystem temperature profiles at each of the
low-level airside MPCs to operate airside HVAC equipment in the
corresponding airside subsystems.
[0027] Those skilled in the art will appreciate that the summary is
illustrative only and is not intended to be in any way limiting.
Other aspects, inventive features, and advantages of the devices
and/or processes described herein, as defined solely by the claims,
will become apparent in the detailed description set forth herein
and taken in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0028] FIG. 1A is a schematic diagram of a waterside system and an
airside system with multiple airside subsystems, according to some
embodiments.
[0029] FIG. 1B is a drawing of a building equipped with a HVAC
system having an airside system and a waterside system, according
to some embodiments.
[0030] FIG. 2 is a schematic diagram of a waterside system which
can be used in the systems of FIGS. 1A-1B, according to some
embodiments.
[0031] FIG. 3 is a block diagram of an airside system which can be
used in the systems of FIGS. 1A-1B, according to some
embodiments.
[0032] FIG. 4 is a block diagram of a building management system
(BMS) which can be used to monitor and control the building of FIG.
1B, according to some embodiments.
[0033] FIG. 5 is a block diagram of another BMS which can be used
to monitor and control the building of FIG. 1B, according to some
embodiments.
[0034] FIG. 6 is a block diagram of a distributed model predictive
control system with a high-level model-predictive controller,
several low-level airside model predictive controllers, and a
low-level waterside model predictive controller, according to some
embodiments.
[0035] FIG. 7 is a block diagram illustrating the high-level model
predictive controller of FIG. 6 in greater detail, according to
some embodiments.
[0036] FIG. 8 is a block diagram illustrating one of the low-level
model predictive controllers of FIG. 6 in greater detail, according
to some embodiments.
[0037] FIG. 9 is a graph of ambient temperature and power cost as a
function of time, both of which can be provided as inputs to the
high-level model predictive controller of FIGS. 6-7, according to
some embodiments.
[0038] FIG. 10 is a graph of building temperature and cooling duty
as a function of time, both of which can be provided as results of
a high-level optimization performed by the high-level model
predictive controller of FIGS. 6-7 when the cost of airside power
consumption is not included in the high-level optimization,
according to some embodiments.
[0039] FIG. 11 is a graph of building temperature and cooling duty
as a function of time, both of which can be provided as results of
the high-level optimization performed by the high-level model
predictive controller of FIGS. 6-7 when the cost of airside power
consumption is included in the high-level optimization, according
to some embodiments.
[0040] FIG. 12 is a graph of zone temperatures and zone temperature
setpoints as a function of time, both of which can be provided as
results of a low-level optimization performed by the low-level
model predictive controller of FIGS. 6 and 8, according to some
embodiments.
[0041] FIG. 13 is a graph of waterside demand, production, thermal
energy storage, and waterside equipment utilization as a function
of time, representing the performance of the waterside system of
FIG. 6 resulting from the high-level optimization and a low-level
waterside optimization, according to some embodiments.
[0042] FIG. 14 is a flow diagram of a high-level and distributed
low-level model predictive control technique which can be used to
optimize energy cost in the MPC system of FIG. 6 when airside
subsystem loads are used as constraints in the low-level
optimizations, according to some embodiments.
[0043] FIG. 15 is another flow diagram of a high-level and
distributed low-level model predictive control technique which can
be used to optimize energy cost in the MPC system of FIG. 6 when
the low-level optimizations track temperature profiles provided by
the high-level optimization, according to some embodiments.
DETAILED DESCRIPTION
[0044] Referring generally to the FIGURES, heating, ventilation,
and air conditioning (HVAC) system for a building is shown,
according to some embodiments. The HVAC system includes a waterside
system and an airside system having a plurality of airside
subsystems. The HVAC system uses model predictive control (MPC)
system to generate optimal setpoints for HVAC equipment of the
waterside system and each of the airside subsystems.
[0045] MPC is a control technique that uses a model of a controlled
system to relate system inputs (e.g., control actions, setpoints,
etc.) to system states and system outputs (e.g., measurements,
process variables, etc.). The model can be used to predict the
system states and system outputs based on the actions taken by a
controller at each time step during an optimization period. At each
time step, MPC solves an online optimization problem using the
system model to determine a sequence of control actions that
achieve an objective (e.g., minimizing tracking error, minimizing
energy cost, etc.) while respecting process constraints such as
equipment capacity and safety bounds (e.g., temperature
constraints, equipment switching constraints, etc.). The first
control action in the sequence is implemented and the optimization
problem is solved again at the next time step after new
measurements are obtained.
[0046] The HVAC system described herein can optimize (e.g.,
minimize) the total cost of energy used to provide heating and/or
cooling to a building or campus. Numerous studies have shown that
MPC outperforms existing control systems due to its ability to
forecast into the future and anticipate events before they occur.
MPC enables shifting of the energy load from peak hours to off-peak
hours by using the mass of the building for passive thermal energy
storage (TES). Active thermal energy storage (e.g., chilled water
tanks, hot water tanks, etc.) can also be used to further
facilitate load shifting. Through a combination of active and
passive storage systems, energy costs can be decreased by
concentrating equipment usage to times of low resource prices, all
while maintaining comfort limits within each building.
[0047] In some embodiments, the HVAC system includes a MPC layer
and a regulatory layer. The MPC layer can receive measurements from
the regulatory layer and provide setpoints to the regulatory layer.
The MPC layer can generate optimal values for various decision
variables including, for example, zone temperature setpoints,
equipment on/off decisions, and TES charging/discharging rates. The
MPC layer can determine the optimal values of the decision
variables using system models such a zone temperature to
cooling/heating duty model, a cooling/heating duty to temperature
setpoint model, equipment models, and active TES models. The MPC
layer can determine the optimal values of the decision variables by
performing an optimization process subject to several constraints.
The constraints can include comfort bounds on the zone air
temperatures, equipment capacity constraints, TES tank size, and
rate of change bounds on the equipment of the regulatory layer.
[0048] Solving a single MPC problem to determine the optimal values
for all of the decision variables can be difficult for large-scale
applications. For example, some airside systems can include
thousands of discrete zones and some waterside systems can include
thousands of unique HVAC devices. The discrete decisions (e.g.,
turning equipment on/off) can result in a mixed integer
optimization problem, which further increases complexity. Due to
the difficulty and computational complexity of the MPC problem, the
MPC layer can decompose the overall MPC problem into smaller, more
manageable, optimization problems.
[0049] The HVAC system can decompose the overall MPC problem into a
high-level optimization problem and a low-level optimization
problem. The high-level problem can be solved by a high-level model
predictive controller to determine a load profile for each of a
plurality of low-level airside subsystem and a demand profile for a
waterside system. In some embodiments, the high-level controller
uses active TES models and aggregate low-level models for each
airside subsystem to reduce computational complexity. The
high-level controller can determine load profiles that optimize
(e.g., minimize) the total operational cost of the MPC system over
the optimization period. Each load profile can include a load value
for each time step in the optimization period. The high-level
controller can provide the load profiles to a plurality of
low-level airside model-predictive controllers. The low-level
airside controllers can use the load profiles as constraints
defining maximum permissible load values for each airside subsystem
for each time step in the optimization period.
[0050] The low-level optimization problem can be further decomposed
into a low-level waterside optimization problem and one or more
low-level airside optimization problems. Each low-level airside
problem can be solved by one of low-level airside controllers to
determine zone temperature setpoints for the airside equipment of
each airside subsystem. Each low-level airside controller can
determine the zone temperature setpoints that optimize (e.g.,
minimize) the energy consumption of the corresponding airside
subsystem while maintaining zone temperatures within defined
temperature limits and without exceeding the load values provided
by the high-level controller. Alternatively, each low-level airside
controller can determine temperature setpoints that track the
average building temperatures (e.g., predicted building temperature
states) from the high-level optimization problem. These and other
components of the HVAC system are described in greater detail
below.
Building and Campus HVAC Systems
[0051] Referring now to FIGS. 1A-1B, embodiments of a heating,
ventilation, and air conditioning (HVAC) system for a building or
campus (i.e., a collection of buildings) are shown. FIG. 1A is a
schematic diagram of a large-scale HVAC system 20 including a
waterside system 30 and an airside system 50. Waterside system 30
is shown as a central plant having boilers 32, chillers 34, heat
recovery chillers 36, cooling towers 38, a cold thermal energy
storage (TES) tank 40, a hot TES tank 42, and a pump 44. The
equipment of waterside system 30 can operate to heat or chill a
working fluid (e.g., water, glycol, etc.) and provide the working
fluid to airside system 50. Airside system 50 can use the heated
fluid or chilled fluid from waterside system 30 to heat or cool
airflows provided to various building zones. Examples of a
waterside system and airside system which can be used in HVAC
system 20 are described in greater detail with reference to FIGS.
2-3.
[0052] In the campus-wide implementation shown in FIG. 1A, airside
system 50 can be distributed across multiple buildings 11-17.
Airside system 50 can include multiple air handling units (AHUs)
distributed across buildings 11-17. In some embodiments, the AHUs
are rooftop AHUs located on the rooftops of buildings 11-17. In
other embodiments, the AHUs can be distributed across multiple
floors or zones of buildings 11-17. Each of buildings 11-17 can
include one or more AHUs. For example, building 11 is shown to
include a first AHU 52 located on the first floor 53, a second AHU
54 located on the second floor 55, a third AHU 56 located on the
third floor 57, a fourth AHU 58 located on the fourth floor 59, and
a fifth AHU 60 located on the fifth floor 61.
[0053] Each AHU of airside system 50 can receive the heated fluid
and/or the chilled fluid from waterside system 30 and can use such
fluids to provide heating or cooling for various building zones.
Each AHU can be configured to provide airflow to a single building
zone or multiple building zones. For example, AHU 52 can be
configured to provide airflow to building zones 62, 64, 66, and 68.
In a large scale HVAC system such as HVAC system 20, airside system
50 can include a large number of buildings (e.g., tens, hundreds,
etc.) with each building having multiple AHUs and a large number of
building zones. Each building zone can be controlled independently
(e.g., via dampers or variable air volume (VAV) units) and can have
different temperature setpoints. In some embodiments, the control
objective for HVAC system 20 is to determine the appropriate
temperature setpoints for all of the building zones and to operate
the equipment of waterside system 30 and airside system 50 to meet
the corresponding load.
[0054] Referring now to FIG. 1B, a perspective view of a building
10 is shown. Building 10 is served by a HVAC system 100 which
operates on a relatively smaller scale than HVAC system 20. HVAC
system 100 can include a plurality of HVAC devices (e.g., heaters,
chillers, air handling units, pumps, fans, thermal energy storage,
etc.) configured to provide heating, cooling, ventilation, or other
services for building 10. For example, HVAC system 100 is shown to
include a waterside system 120 and an airside system 130. Waterside
system 120 can provide a heated or chilled fluid to an air handling
unit of airside system 130. Airside system 130 can use the heated
or chilled fluid to heat or cool an airflow provided to building
10. An exemplary waterside system and airside system which can be
used in HVAC system 100 are described in greater detail with
reference to FIGS. 2-3.
[0055] HVAC system 100 is shown to include a chiller 102, a boiler
104, and a rooftop AHU 106. Waterside system 120 can use boiler 104
and chiller 102 to heat or cool a working fluid (e.g., water,
glycol, etc.) and can circulate the working fluid to AHU 106. In
various embodiments, the HVAC devices of waterside system 120 can
be located in or around building 10 (as shown in FIG. 1B) or at an
offsite location such as a central plant (as shown in FIG. 1A). The
working fluid can be heated in boiler 104 or cooled in chiller 102,
depending on whether heating or cooling is required in building 10.
Boiler 104 can add heat to the circulated fluid, for example, by
burning a combustible material (e.g., natural gas) or using an
electric heating element. Chiller 102 can place the circulated
fluid in a heat exchange relationship with another fluid (e.g., a
refrigerant) in a heat exchanger (e.g., an evaporator) to absorb
heat from the circulated fluid. The working fluid from chiller 102
and/or boiler 104 can be transported to AHU 106 via piping 108.
[0056] AHU 106 can place the working fluid in a heat exchange
relationship with an airflow passing through AHU 106 (e.g., via one
or more stages of cooling coils and/or heating coils). The airflow
can be, for example, outside air, return air from within building
10, or a combination of both. AHU 106 can transfer heat between the
airflow and the working fluid to provide heating or cooling for the
airflow. For example, AHU 106 can include one or more fans or
blowers configured to pass the airflow over or through a heat
exchanger containing the working fluid. The working fluid can then
return to chiller 102 or boiler 104 via piping 110.
[0057] Airside system 130 can deliver the airflow supplied by AHU
106 (i.e., the supply airflow) to building 10 via air supply ducts
112 and can provide return air from building 10 to AHU 106 via air
return ducts 114. In some embodiments, airside system 130 includes
multiple variable air volume (VAV) units 116. For example, airside
system 130 is shown to include a separate VAV unit 116 on each
floor or zone of building 10. VAV units 116 can include dampers or
other flow control elements that can be operated to control an
amount of the supply airflow provided to individual zones of
building 10. In other embodiments, airside system 130 delivers the
supply airflow into one or more zones of building 10 (e.g., via
supply ducts 112) without using intermediate VAV units 116 or other
flow control elements. AHU 106 can include various sensors (e.g.,
temperature sensors, pressure sensors, etc.) configured to measure
attributes of the supply airflow. AHU 106 can receive input from
sensors located within AHU 106 and/or within the building zone and
can adjust the flow rate, temperature, or other attributes of the
supply airflow through AHU 106 to achieve setpoint conditions for
the building zone.
Waterside System
[0058] Referring now to FIG. 2, a block diagram of a waterside
system 200 is shown, according to some embodiments. In some
embodiments, waterside system 200 can supplement or replace
waterside system 30 in HVAC system 20 or waterside system 120 in
HVAC system 100. Waterside system 200 can include some or all of
the HVAC devices in HVAC system 20 (e.g., boilers 32, chillers 34,
heat recovery chillers 36, etc.) or HVAC system 100 (e.g., boiler
104, chiller 102, pumps, valves, etc.) and can operate to supply a
heated or chilled fluid to airside system 50 or airside system 130.
The HVAC devices of waterside system 200 can be located within
building 10 (as shown in FIG. 1B) or at an offsite location such as
a central plant (as shown in FIG. 1A).
[0059] Waterside system 200 is shown as a central plant having a
plurality of subplants 202-212. Subplants 202-212 are shown to
include a heater subplant 202, a heat recovery chiller subplant
204, a chiller subplant 206, a cooling tower subplant 208, a hot
thermal energy storage (TES) subplant 210, and a cold thermal
energy storage (TES) subplant 212. Subplants 202-212 consume
resources (e.g., water, natural gas, electricity, etc.) from
utilities to serve the thermal energy loads (e.g., hot water, cold
water, heating, cooling, etc.) of a building or campus. For
example, heater subplant 202 can be configured to heat water in a
hot water loop 214 that circulates the hot water between heater
subplant 202 and buildings 10-17. Chiller subplant 206 can be
configured to chill water in a cold water loop 216 that circulates
the cold water between chiller subplant 206 buildings 10-17. Heat
recovery chiller subplant 204 can be configured to transfer heat
from cold water loop 216 to hot water loop 214 to provide
additional heating for the hot water and additional cooling for the
cold water. Condenser water loop 218 can absorb heat from the cold
water in chiller subplant 206 and reject the absorbed heat in
cooling tower subplant 208 or transfer the absorbed heat to hot
water loop 214. Hot TES subplant 210 and cold TES subplant 212 can
store hot and cold thermal energy, respectively, for subsequent
use.
[0060] Hot water loop 214 and cold water loop 216 can deliver the
heated and/or chilled water to AHUs located on the rooftop of
building 10 (as shown in FIG. 1B) or to individual floors or zones
of buildings 11-17 (as shown in FIG. 1A). The AHUs push air past
heat exchangers (e.g., heating coils or cooling coils) through
which the water flows to provide heating or cooling for the air.
The heated or cooled air can be delivered to individual zones of
buildings 10-17 to serve the thermal energy loads of buildings
10-17. The water then returns to subplants 202-212 to receive
further heating or cooling.
[0061] Although subplants 202-212 are shown and described as
heating and cooling water for circulation to a building, it is
understood that any other type of working fluid (e.g., glycol, CO2,
etc.) can be used in place of or in addition to water to serve the
thermal energy loads. In other embodiments, subplants 202-212 can
provide heating and/or cooling directly to the building or campus
without requiring an intermediate heat transfer fluid. These and
other variations to waterside system 200 are within the teachings
of the present disclosure.
[0062] Each of subplants 202-212 can include a variety of equipment
configured to facilitate the functions of the subplant. For
example, heater subplant 202 is shown to include a plurality of
heating elements 220 (e.g., boilers, electric heaters, etc.)
configured to add heat to the hot water in hot water loop 214.
Heater subplant 202 is also shown to include several pumps 222 and
224 configured to circulate the hot water in hot water loop 214 and
to control the flow rate of the hot water through individual
heating elements 220. Chiller subplant 206 is shown to include a
plurality of chillers 232 configured to remove heat from the cold
water in cold water loop 216. Chiller subplant 206 is also shown to
include several pumps 234 and 236 configured to circulate the cold
water in cold water loop 216 and to control the flow rate of the
cold water through individual chillers 232.
[0063] Heat recovery chiller subplant 204 is shown to include a
plurality of heat recovery heat exchangers 226 (e.g., refrigeration
circuits) configured to transfer heat from cold water loop 216 to
hot water loop 214. Heat recovery chiller subplant 204 is also
shown to include several pumps 228 and 230 configured to circulate
the hot water and/or cold water through heat recovery heat
exchangers 226 and to control the flow rate of the water through
individual heat recovery heat exchangers 226. Cooling tower
subplant 208 is shown to include a plurality of cooling towers 238
configured to remove heat from the condenser water in condenser
water loop 218. Cooling tower subplant 208 is also shown to include
several pumps 240 configured to circulate the condenser water in
condenser water loop 218 and to control the flow rate of the
condenser water through individual cooling towers 238.
[0064] Hot TES subplant 210 is shown to include a hot TES tank 242
configured to store the hot water for later use. Hot TES subplant
210 can also include one or more pumps or valves configured to
control the flow rate of the hot water into or out of hot TES tank
242. Cold TES subplant 212 is shown to include cold TES tanks 244
configured to store the cold water for later use. Cold TES subplant
212 can also include one or more pumps or valves configured to
control the flow rate of the cold water into or out of cold TES
tanks 244.
[0065] In some embodiments, one or more of the pumps in waterside
system 200 (e.g., pumps 222, 224, 228, 230, 234, 236, and/or 240)
or pipelines in waterside system 200 include an isolation valve
associated therewith. Isolation valves can be integrated with the
pumps or positioned upstream or downstream of the pumps to control
the fluid flows in waterside system 200. In various embodiments,
waterside system 200 can include more, fewer, or different types of
devices and/or subplants based on the particular configuration of
waterside system 200 and the types of loads served by waterside
system 200.
Airside System
[0066] Referring now to FIG. 3, a block diagram of an airside
system 300 is shown, according to some embodiments. In some
embodiments, airside system 300 can supplement or replace airside
system 50 in HVAC system 20 or airside system 130 in HVAC system
100. Airside system 300 can include some or all of the HVAC devices
in HVAC system 20 (e.g., AHUs 52-60) or HVAC system 100 (e.g., AHU
106, VAV units 116, ducts 112-114, fans, dampers, etc.) and can be
located in or around buildings 10-17. Airside system 300 can
operate to heat or cool an airflow provided to buildings 10-17
using a heated or chilled fluid provided by waterside systems
200.
[0067] Airside system 300 is shown to include an economizer-type
AHU 302. Economizer-type AHUs vary the amount of outside air and
return air used by the air handling unit for heating or cooling.
For example, AHU 302 can receive return air 304 from building zone
306 via return air duct 308 and can deliver supply air 310 to
building zone 306 via supply air duct 312. In some embodiments, AHU
302 is a rooftop unit located on the roof of building 10 (e.g., AHU
106 as shown in FIG. 1B) or otherwise positioned to receive both
return air 304 and outside air 314. AHU 302 can be configured to
operate exhaust air damper 316, mixing damper 318, and outside air
damper 320 to control an amount of outside air 314 and return air
304 that combine to form supply air 310. Any return air 304 that
does not pass through mixing damper 318 can be exhausted from AHU
302 through exhaust damper 316 as exhaust air 322.
[0068] Each of dampers 316-320 can be operated by an actuator. For
example, exhaust air damper 316 can be operated by actuator 324,
mixing damper 318 can be operated by actuator 326, and outside air
damper 320 can be operated by actuator 328. Actuators 324-328 can
communicate with an AHU controller 330 via a communications link
332. Actuators 324-328 can receive control signals from AHU
controller 330 and can provide feedback signals to AHU controller
330. Feedback signals can include, for example, an indication of a
current actuator or damper position, an amount of torque or force
exerted by the actuator, diagnostic information (e.g., results of
diagnostic tests performed by actuators 324-328), status
information, commissioning information, configuration settings,
calibration data, and/or other types of information or data that
can be collected, stored, or used by actuators 324-328. AHU
controller 330 can be an economizer controller configured to use
one or more control algorithms (e.g., state-based algorithms,
extremum seeking control (ESC) algorithms, proportional-integral
(PI) control algorithms, proportional-integral-derivative (PID)
control algorithms, model predictive control (MPC) algorithms,
feedback control algorithms, etc.) to control actuators
324-328.
[0069] Still referring to FIG. 3, AHU 302 is shown to include a
cooling coil 334, a heating coil 336, and a fan 338 positioned
within supply air duct 312. Fan 338 can be configured to force
supply air 310 through cooling coil 334 and/or heating coil 336 and
provide supply air 310 to building zone 306. AHU controller 330 can
communicate with fan 338 via communications link 340 to control a
flow rate of supply air 310. In some embodiments, AHU controller
330 controls an amount of heating or cooling applied to supply air
310 by modulating a speed of fan 338.
[0070] Cooling coil 334 can receive a chilled fluid from waterside
system 200 (e.g., from cold water loop 216) via piping 342 and can
return the chilled fluid to waterside system 200 via piping 344.
Valve 346 can be positioned along piping 342 or piping 344 to
control a flow rate of the chilled fluid through cooling coil 334.
In some embodiments, cooling coil 334 includes multiple stages of
cooling coils that can be independently activated and deactivated
(e.g., by AHU controller 330, by BMS controller 366, etc.) to
modulate an amount of cooling applied to supply air 310.
[0071] Heating coil 336 can receive a heated fluid from waterside
system 200 (e.g., from hot water loop 214) via piping 348 and can
return the heated fluid to waterside system 200 via piping 350.
Valve 352 can be positioned along piping 348 or piping 350 to
control a flow rate of the heated fluid through heating coil 336.
In some embodiments, heating coil 336 includes multiple stages of
heating coils that can be independently activated and deactivated
(e.g., by AHU controller 330, by BMS controller 366, etc.) to
modulate an amount of heating applied to supply air 310.
[0072] Each of valves 346 and 352 can be controlled by an actuator.
For example, valve 346 can be controlled by actuator 354 and valve
352 can be controlled by actuator 356. Actuators 354-356 can
communicate with AHU controller 330 via communications links
358-360. Actuators 354-356 can receive control signals from AHU
controller 330 and can provide feedback signals to controller 330.
In some embodiments, AHU controller 330 receives a measurement of
the supply air temperature from a temperature sensor 362 positioned
in supply air duct 312 (e.g., downstream of cooling coil 334 and/or
heating coil 336). AHU controller 330 can also receive a
measurement of the temperature of building zone 306 from a
temperature sensor 364 located in building zone 306.
[0073] In some embodiments, AHU controller 330 operates valves 346
and 352 via actuators 354-356 to modulate an amount of heating or
cooling provided to supply air 310 (e.g., to achieve a setpoint
temperature for supply air 310 or to maintain the temperature of
supply air 310 within a setpoint temperature range). The positions
of valves 346 and 352 affect the amount of heating or cooling
provided to supply air 310 by cooling coil 334 or heating coil 336
and may correlate with the amount of energy consumed to achieve a
desired supply air temperature. AHU controller 330 can control the
temperature of supply air 310 and/or building zone 306 by
activating or deactivating coils 334-336, adjusting a speed of fan
338, or a combination of both.
[0074] Still referring to FIG. 3, airside system 300 is shown to
include a building management system (BMS) controller 366 and a
client device 368. BMS controller 366 can include one or more
computer systems (e.g., servers, supervisory controllers, subsystem
controllers, etc.) that serve as system level controllers,
application or data servers, head nodes, or master controllers for
airside system 300, waterside system 200, HVAC system 100, HVAC
system 20 and/or other controllable systems that serve buildings
10-17. BMS controller 366 can communicate with multiple downstream
building systems or subsystems (e.g., HVAC systems 20 or 100, a
security system, a lighting system, waterside system 200, etc.) via
a communications link 370 according to like or disparate protocols
(e.g., LON, BACnet, etc.). In various embodiments, AHU controller
330 and BMS controller 366 can be separate (as shown in FIG. 3) or
integrated. In an integrated implementation, AHU controller 330 can
be a software module configured for execution by a processor of BMS
controller 366.
[0075] In some embodiments, AHU controller 330 receives information
from BMS controller 366 (e.g., commands, setpoints, operating
boundaries, etc.) and provides information to BMS controller 366
(e.g., temperature measurements, valve or actuator positions,
operating statuses, diagnostics, etc.). For example, AHU controller
330 can provide BMS controller 366 with temperature measurements
from temperature sensors 362-364, equipment on/off states,
equipment operating capacities, and/or any other information that
can be used by BMS controller 366 to monitor or control a variable
state or condition within building zone 306.
[0076] Client device 368 can include one or more human-machine
interfaces or client interfaces (e.g., graphical user interfaces,
reporting interfaces, text-based computer interfaces, client-facing
web services, web servers that provide pages to web clients, etc.)
for controlling, viewing, or otherwise interacting with HVAC system
20, HVAC system 100, and/or the various devices thereof. Client
device 368 can be a computer workstation, a client terminal, a
remote or local interface, or any other type of user interface
device. Client device 368 can be a stationary terminal or a mobile
device. For example, client device 368 can be a desktop computer, a
computer server with a user interface, a laptop computer, a tablet,
a smartphone, a PDA, or any other type of mobile or non-mobile
device. Client device 368 can communicate with BMS controller 366
and/or AHU controller 330 via communications link 372.
Building Management Systems
[0077] Referring now to FIG. 4, a block diagram of a building
management system (BMS) 400 is shown, according to an exemplary
embodiment. BMS 400 can be implemented in one or more of buildings
10-17 to automatically monitor and control various building
functions. BMS 400 is shown to include BMS controller 366 and a
plurality of building subsystems 428. Building subsystems 428 are
shown to include a building electrical subsystem 434, an
information communication technology (ICT) subsystem 436, a
security subsystem 438, a HVAC subsystem 440, a lighting subsystem
442, a lift/escalators subsystem 432, and a fire safety subsystem
430. In various embodiments, building subsystems 428 can include
fewer, additional, or alternative subsystems. For example, building
subsystems 428 can also or alternatively include a refrigeration
subsystem, an advertising or signage subsystem, a cooking
subsystem, a vending subsystem, a printer or copy service
subsystem, or any other type of building subsystem that uses
controllable equipment and/or sensors to monitor or control
buildings 10-17. In some embodiments, building subsystems 428
include waterside system 200 and/or airside system 300, as
described with reference to FIGS. 2-3.
[0078] Each of building subsystems 428 can include any number of
devices, controllers, and connections for completing its individual
functions and control activities. HVAC subsystem 440 can include
many of the same components as HVAC system 20 or HVAC system 100,
as described with reference to FIGS. 1A-3. For example, HVAC
subsystem 440 can include a chiller, a boiler, any number of air
handling units, economizers, field controllers, supervisory
controllers, actuators, temperature sensors, and other devices for
controlling the temperature, humidity, airflow, or other variable
conditions within buildings 10-17. Lighting subsystem 442 can
include any number of light fixtures, ballasts, lighting sensors,
dimmers, or other devices configured to controllably adjust the
amount of light provided to a building space. Security subsystem
438 can include occupancy sensors, video surveillance cameras,
digital video recorders, video processing servers, intrusion
detection devices, access control devices and servers, or other
security-related devices.
[0079] Still referring to FIG. 4, BMS controller 366 is shown to
include a communications interface 407 and a BMS interface 409.
Interface 407 can facilitate communications between BMS controller
366 and external applications (e.g., monitoring and reporting
applications 422, enterprise control applications 426, remote
systems and applications 444, applications residing on client
devices 448, etc.) for allowing user control, monitoring, and
adjustment to BMS controller 366 and/or subsystems 428. Interface
407 can also facilitate communications between BMS controller 366
and client devices 448. BMS interface 409 can facilitate
communications between BMS controller 366 and building subsystems
428 (e.g., HVAC, lighting security, lifts, power distribution,
business, etc.).
[0080] Interfaces 407, 409 can be or include wired or wireless
communications interfaces (e.g., jacks, antennas, transmitters,
receivers, transceivers, wire terminals, etc.) for conducting data
communications with building subsystems 428 or other external
systems or devices. In various embodiments, communications via
interfaces 407, 409 can be direct (e.g., local wired or wireless
communications) or via a communications network 446 (e.g., a WAN,
the Internet, a cellular network, etc.). For example, interfaces
407, 409 can include an Ethernet card and port for sending and
receiving data via an Ethernet-based communications link or
network. In another example, interfaces 407, 409 can include a WiFi
transceiver for communicating via a wireless communications
network. In another example, one or both of interfaces 407, 409 can
include cellular or mobile phone communications transceivers. In
one embodiment, communications interface 407 is a power line
communications interface and BMS interface 409 is an Ethernet
interface. In other embodiments, both communications interface 407
and BMS interface 409 are Ethernet interfaces or are the same
Ethernet interface.
[0081] Still referring to FIG. 4, BMS controller 366 is shown to
include a processing circuit 404 including a processor 406 and
memory 408. Processing circuit 404 can be communicably connected to
BMS interface 409 and/or communications interface 407 such that
processing circuit 404 and the various components thereof can send
and receive data via interfaces 407, 409. Processor 406 can be
implemented as a general purpose processor, an application specific
integrated circuit (ASIC), one or more field programmable gate
arrays (FPGAs), a group of processing components, or other suitable
electronic processing components.
[0082] Memory 408 (e.g., memory, memory unit, storage device, etc.)
can include one or more devices (e.g., RAM, ROM, Flash memory, hard
disk storage, etc.) for storing data and/or computer code for
completing or facilitating the various processes, layers and
modules described in the present application. Memory 408 can be or
include volatile memory or non-volatile memory. Memory 408 can
include database components, object code components, script
components, or any other type of information structure for
supporting the various activities and information structures
described in the present application. According to an exemplary
embodiment, memory 408 is communicably connected to processor 406
via processing circuit 404 and includes computer code for executing
(e.g., by processing circuit 404 and/or processor 406) one or more
processes described herein.
[0083] In some embodiments, BMS controller 366 is implemented
within a single computer (e.g., one server, one housing, etc.). In
various other embodiments BMS controller 366 can be distributed
across multiple servers or computers (e.g., that can exist in
distributed locations). Further, while FIG. 4 shows applications
422 and 426 as existing outside of BMS controller 366, in some
embodiments, applications 422 and 426 can be hosted within BMS
controller 366 (e.g., within memory 408).
[0084] Still referring to FIG. 4, memory 408 is shown to include an
enterprise integration layer 410, an automated measurement and
validation (AM&V) layer 412, a demand response (DR) layer 414,
a fault detection and diagnostics (FDD) layer 416, an integrated
control layer 418, and a building subsystem integration later 420.
Layers 410-420 can be configured to receive inputs from building
subsystems 428 and other data sources, determine optimal control
actions for building subsystems 428 based on the inputs, generate
control signals based on the optimal control actions, and provide
the generated control signals to building subsystems 428. The
following paragraphs describe some of the general functions
performed by each of layers 410-420 in BMS 400.
[0085] Enterprise integration layer 410 can be configured to serve
clients or local applications with information and services to
support a variety of enterprise-level applications. For example,
enterprise control applications 426 can be configured to provide
subsystem-spanning control to a graphical user interface (GUI) or
to any number of enterprise-level business applications (e.g.,
accounting systems, user identification systems, etc.). Enterprise
control applications 426 can also or alternatively be configured to
provide configuration GUIs for configuring BMS controller 366. In
yet other embodiments, enterprise control applications 426 can work
with layers 410-420 to optimize building performance (e.g.,
efficiency, energy use, comfort, or safety) based on inputs
received at interface 407 and/or BMS interface 409.
[0086] Building subsystem integration layer 420 can be configured
to manage communications between BMS controller 366 and building
subsystems 428. For example, building subsystem integration layer
420 can receive sensor data and input signals from building
subsystems 428 and provide output data and control signals to
building subsystems 428. Building subsystem integration layer 420
can also be configured to manage communications between building
subsystems 428. Building subsystem integration layer 420 translate
communications (e.g., sensor data, input signals, output signals,
etc.) across a plurality of multi-vendor/multi-protocol
systems.
[0087] Demand response layer 414 can be configured to optimize
resource usage (e.g., electricity use, natural gas use, water use,
etc.) and/or the monetary cost of such resource usage in response
to satisfy the demand of buildings 10-17. The optimization can be
based on time-of-use prices, curtailment signals, energy
availability, or other data received from utility providers,
distributed energy generation systems 424, from energy storage 427
(e.g., hot TES 242, cold TES 244, etc.), or from other sources.
Demand response layer 414 can receive inputs from other layers of
BMS controller 366 (e.g., building subsystem integration layer 420,
integrated control layer 418, etc.). The inputs received from other
layers can include environmental or sensor inputs such as
temperature, carbon dioxide levels, relative humidity levels, air
quality sensor outputs, occupancy sensor outputs, room schedules,
and the like. The inputs can also include inputs such as electrical
use (e.g., expressed in kWh), thermal load measurements, pricing
information, projected pricing, smoothed pricing, curtailment
signals from utilities, and the like.
[0088] According to an exemplary embodiment, demand response layer
414 includes control logic for responding to the data and signals
it receives. These responses can include communicating with the
control algorithms in integrated control layer 418, changing
control strategies, changing setpoints, or activating/deactivating
building equipment or subsystems in a controlled manner. Demand
response layer 414 can also include control logic configured to
determine when to utilize stored energy. For example, demand
response layer 414 can determine to begin using energy from energy
storage 427 just prior to the beginning of a peak use hour.
[0089] In some embodiments, demand response layer 414 includes a
control module configured to actively initiate control actions
(e.g., automatically changing setpoints) which minimize energy
costs based on one or more inputs representative of or based on
demand (e.g., price, a curtailment signal, a demand level, etc.).
In some embodiments, demand response layer 414 uses equipment
models to determine an optimal set of control actions. The
equipment models can include, for example, thermodynamic models
describing the inputs, outputs, and/or functions performed by
various sets of building equipment. Equipment models can represent
collections of building equipment (e.g., subplants, chiller arrays,
etc.) or individual devices (e.g., individual chillers, heaters,
pumps, etc.).
[0090] Demand response layer 414 can further include or draw upon
one or more demand response policy definitions (e.g., databases,
XML files, etc.). The policy definitions can be edited or adjusted
by a user (e.g., via a graphical user interface) so that the
control actions initiated in response to demand inputs can be
tailored for the user's application, desired comfort level,
particular building equipment, or based on other concerns. For
example, the demand response policy definitions can specify which
equipment can be turned on or off in response to particular demand
inputs, how long a system or piece of equipment should be turned
off, what setpoints can be changed, what the allowable set point
adjustment range is, how long to hold a high demand setpoint before
returning to a normally scheduled setpoint, how close to approach
capacity limits, which equipment modes to utilize, the energy
transfer rates (e.g., the maximum rate, an alarm rate, other rate
boundary information, etc.) into and out of energy storage devices
(e.g., thermal storage tanks, battery banks, etc.), and when to
dispatch on-site generation of energy (e.g., via fuel cells, a
motor generator set, etc.).
[0091] Integrated control layer 418 can be configured to use the
data input or output of building subsystem integration layer 420
and/or demand response later 414 to make control decisions. Due to
the subsystem integration provided by building subsystem
integration layer 420, integrated control layer 418 can integrate
control activities of the subsystems 428 such that the subsystems
428 behave as a single integrated supersystem. In an exemplary
embodiment, integrated control layer 418 includes control logic
that uses inputs and outputs from a plurality of building
subsystems to provide greater comfort and energy savings relative
to the comfort and energy savings that separate subsystems could
provide alone. For example, integrated control layer 418 can be
configured to use an input from a first subsystem to make an
energy-saving control decision for a second subsystem. Results of
these decisions can be communicated back to building subsystem
integration layer 420.
[0092] Integrated control layer 418 is shown to be logically below
demand response layer 414. Integrated control layer 418 can be
configured to enhance the effectiveness of demand response layer
414 by enabling building subsystems 428 and their respective
control loops to be controlled in coordination with demand response
layer 414. This configuration can reduce disruptive demand response
behavior relative to conventional systems. For example, integrated
control layer 418 can be configured to assure that a demand
response-driven upward adjustment to the setpoint for chilled water
temperature (or another component that directly or indirectly
affects temperature) does not result in an increase in fan energy
(or other energy used to cool a space) that would result in greater
total building energy use than was saved at the chiller.
[0093] Integrated control layer 418 can be configured to provide
feedback to demand response layer 414 so that demand response layer
414 checks that constraints (e.g., temperature, lighting levels,
etc.) are properly maintained even while demanded load shedding is
in progress. The constraints can also include setpoint or sensed
boundaries relating to safety, equipment operating limits and
performance, comfort, fire codes, electrical codes, energy codes,
and the like. Integrated control layer 418 is also logically below
fault detection and diagnostics layer 416 and automated measurement
and validation layer 412. Integrated control layer 418 can be
configured to provide calculated inputs (e.g., aggregations) to
these higher levels based on outputs from more than one building
subsystem.
[0094] Automated measurement and validation (AM&V) layer 412
can be configured to verify that control strategies commanded by
integrated control layer 418 or demand response layer 414 are
working properly (e.g., using data aggregated by AM&V layer
412, integrated control layer 418, building subsystem integration
layer 420, FDD layer 416, or otherwise). The calculations made by
AM&V layer 412 can be based on building system energy models
and/or equipment models for individual BMS devices or subsystems.
For example, AM&V layer 412 can compare a model-predicted
output with an actual output from building subsystems 428 to
determine an accuracy of the model.
[0095] Fault detection and diagnostics (FDD) layer 416 can be
configured to provide on-going fault detection for building
subsystems 428, building subsystem devices (i.e., building
equipment), and control algorithms used by demand response layer
414 and integrated control layer 418. FDD layer 416 can receive
data inputs from integrated control layer 418, directly from one or
more building subsystems or devices, or from another data source.
FDD layer 416 can automatically diagnose and respond to detected
faults. The responses to detected or diagnosed faults can include
providing an alert message to a user, a maintenance scheduling
system, or a control algorithm configured to attempt to repair the
fault or to work-around the fault.
[0096] FDD layer 416 can be configured to output a specific
identification of the faulty component or cause of the fault (e.g.,
loose damper linkage) using detailed subsystem inputs available at
building subsystem integration layer 420. In other exemplary
embodiments, FDD layer 416 is configured to provide "fault" events
to integrated control layer 418 which executes control strategies
and policies in response to the received fault events. According to
an exemplary embodiment, FDD layer 416 (or a policy executed by an
integrated control engine or business rules engine) can shut-down
systems or direct control activities around faulty devices or
systems to reduce energy waste, extend equipment life, or assure
proper control response.
[0097] FDD layer 416 can be configured to store or access a variety
of different system data stores (or data points for live data). FDD
layer 416 can use some content of the data stores to identify
faults at the equipment level (e.g., specific chiller, specific
AHU, specific terminal unit, etc.) and other content to identify
faults at component or subsystem levels. For example, building
subsystems 428 can generate temporal (i.e., time-series) data
indicating the performance of BMS 400 and the various components
thereof. The data generated by building subsystems 428 can include
measured or calculated values that exhibit statistical
characteristics and provide information about how the corresponding
system or process (e.g., a temperature control process, a flow
control process, etc.) is performing in terms of error from its
setpoint. These processes can be examined by FDD layer 416 to
expose when the system begins to degrade in performance and alert a
user to repair the fault before it becomes more severe.
[0098] Referring now to FIG. 5, a block diagram of another building
management system (BMS) 500 is shown, according to some
embodiments. BMS 500 can be implemented in one or more of buildings
10-17 and used to monitor and control the devices of HVAC systems
20 and 100, waterside system 200, airside system 300, building
subsystems 428, as well as other types of BMS devices (e.g.,
lighting equipment, security equipment, etc.) and/or HVAC
equipment.
[0099] BMS 500 provides a system architecture that facilitates
automatic equipment discovery and equipment model distribution.
Equipment discovery can occur on multiple levels of BMS 500 across
multiple different communications busses (e.g., a system bus 554,
zone buses 556-560 and 564, sensor/actuator bus 566, etc.) and
across multiple different communications protocols. In some
embodiments, equipment discovery is accomplished using active node
tables, which provide status information for devices connected to
each communications bus. For example, each communications bus can
be monitored for new devices by monitoring the corresponding active
node table for new nodes. When a new device is detected, BMS 500
can begin interacting with the new device (e.g., sending control
signals, using data from the device) without user interaction.
[0100] Some devices in BMS 500 present themselves to the network
using equipment models. An equipment model defines equipment object
attributes, view definitions, schedules, trends, and the associated
BACnet value objects (e.g., analog value, binary value, multistate
value, etc.) that are used for integration with other systems. Some
devices in BMS 500 store their own equipment models. Other devices
in BMS 500 have equipment models stored externally (e.g., within
other devices). For example, a zone coordinator 508 can store the
equipment model for a bypass damper 528. In some embodiments, zone
coordinator 508 automatically creates the equipment model for
bypass damper 528 or other devices on zone bus 558. Other zone
coordinators can also create equipment models for devices connected
to their zone busses. The equipment model for a device can be
created automatically based on the types of data points exposed by
the device on the zone bus, device type, and/or other device
attributes. Several examples of automatic equipment discovery and
equipment model distribution are discussed in greater detail
below.
[0101] Still referring to FIG. 5, BMS 500 is shown to include a
system manager 502; several zone coordinators 506, 508, 510 and
518; and several zone controllers 524, 530, 532, 536, 548, and 550.
System manager 502 can communicate with client devices 504 (e.g.,
user devices, desktop computers, laptop computers, mobile devices,
etc.) via a data communications link 574 (e.g., BACnet IP,
Ethernet, wired or wireless communications, etc.). System manager
502 can provide a user interface to client devices 504 via data
communications link 574. The user interface may allow users to
monitor and/or control BMS 500 via client devices 504.
[0102] In some embodiments, system manager 502 is connected with
zone coordinators 506-510 and 518 via a system bus 554. System
manager 502 can be configured to communicate with zone coordinators
506-510 and 518 via system bus 554 using a master-slave token
passing (MSTP) protocol or any other communications protocol.
System bus 554 can also connect system manager 502 with other
devices such as a constant volume (CV) rooftop unit (RTU) 512, an
input/output module (IOM) 514, a thermostat controller 516 (e.g., a
TEC5000 series thermostat controller), and a network automation
engine (NAE) or third-party controller 520. RTU 512 can be
configured to communicate directly with system manager 502 and can
be connected directly to system bus 554. Other RTUs can communicate
with system manager 502 via an intermediate device. For example, a
wired input 562 can connect a third-party RTU 542 to thermostat
controller 516, which connects to system bus 554.
[0103] System manager 502 can provide a user interface for any
device containing an equipment model. Devices such as zone
coordinators 506-510 and 518 and thermostat controller 516 can
provide their equipment models to system manager 502 via system bus
554. In some embodiments, system manager 502 automatically creates
equipment models for connected devices that do not contain an
equipment model (e.g., IOM 514, third party controller 520, etc.).
For example, system manager 502 can create an equipment model for
any device that responds to a device tree request. The equipment
models created by system manager 502 can be stored within system
manager 502. System manager 502 can then provide a user interface
for devices that do not contain their own equipment models using
the equipment models created by system manager 502. In some
embodiments, system manager 502 stores a view definition for each
type of equipment connected via system bus 554 and uses the stored
view definition to generate a user interface for the equipment.
[0104] Each zone coordinator 506-510 and 518 can be connected with
one or more of zone controllers 524, 530-532, 536, and 548-550 via
zone buses 556, 558, 560, and 564. Zone coordinators 506-510 and
518 can communicate with zone controllers 524, 530-532, 536, and
548-550 via zone busses 556-560 and 564 using a MSTP protocol or
any other communications protocol. Zone busses 556-560 and 564 can
also connect zone coordinators 506-510 and 518 with other types of
devices such as variable air volume (VAV) RTUs 522 and 540,
changeover bypass (COBP) RTUs 526 and 552, bypass dampers 528 and
546, and PEAK controllers 534 and 544.
[0105] Zone coordinators 506-510 and 518 can be configured to
monitor and command various zoning systems. In some embodiments,
each zone coordinator 506-510 and 518 monitors and commands a
separate zoning system and is connected to the zoning system via a
separate zone bus. For example, zone coordinator 506 can be
connected to VAV RTU 522 and zone controller 524 via zone bus 556.
Zone coordinator 508 can be connected to COBP RTU 526, bypass
damper 528, COBP zone controller 530, and VAV zone controller 532
via zone bus 558. Zone coordinator 510 can be connected to PEAK
controller 534 and VAV zone controller 536 via zone bus 560. Zone
coordinator 518 can be connected to PEAK controller 544, bypass
damper 546, COBP zone controller 548, and VAV zone controller 550
via zone bus 564.
[0106] A single model of zone coordinator 506-510 and 518 can be
configured to handle multiple different types of zoning systems
(e.g., a VAV zoning system, a COBP zoning system, etc.). Each
zoning system can include a RTU, one or more zone controllers,
and/or a bypass damper. For example, zone coordinators 506 and 510
are shown as Verasys VAV engines (VVEs) connected to VAV RTUs 522
and 540, respectively. Zone coordinator 506 is connected directly
to VAV RTU 522 via zone bus 556, whereas zone coordinator 510 is
connected to a third-party VAV RTU 540 via a wired input 568
provided to PEAK controller 534. Zone coordinators 508 and 518 are
shown as Verasys COBP engines (VCEs) connected to COBP RTUs 526 and
552, respectively. Zone coordinator 508 is connected directly to
COBP RTU 526 via zone bus 558, whereas zone coordinator 518 is
connected to a third-party COBP RTU 552 via a wired input 570
provided to PEAK controller 544.
[0107] Zone controllers 524, 530-532, 536, and 548-550 can
communicate with individual BMS devices (e.g., sensors, actuators,
etc.) via sensor/actuator (SA) busses. For example, VAV zone
controller 536 is shown connected to networked sensors 538 via SA
bus 566. Zone controller 536 can communicate with networked sensors
538 using a MSTP protocol or any other communications protocol.
Although only one SA bus 566 is shown in FIG. 5, it should be
understood that each zone controller 524, 530-532, 536, and 548-550
can be connected to a different SA bus. Each SA bus can connect a
zone controller with various sensors (e.g., temperature sensors,
humidity sensors, pressure sensors, light sensors, occupancy
sensors, etc.), actuators (e.g., damper actuators, valve actuators,
etc.) and/or other types of controllable equipment (e.g., chillers,
heaters, fans, pumps, etc.).
[0108] Each zone controller 524, 530-532, 536, and 548-550 can be
configured to monitor and control a different building zone. Zone
controllers 524, 530-532, 536, and 548-550 can use the inputs and
outputs provided via their SA busses to monitor and control various
building zones. For example, a zone controller 536 can use a
temperature input received from networked sensors 538 via SA bus
566 (e.g., a measured temperature of a building zone) as feedback
in a temperature control algorithm. Zone controllers 524, 530-532,
536, and 548-550 can use various types of control algorithms (e.g.,
state-based algorithms, extremum seeking control (ESC) algorithms,
proportional-integral (PI) control algorithms,
proportional-integral-derivative (PID) control algorithms, model
predictive control algorithms, feedback control algorithms, etc.)
to control a variable state or condition (e.g., temperature,
humidity, airflow, lighting, etc.) in or around building 10.
Distributed Model Predictive Control System
[0109] Referring now to FIG. 6, a block diagram of a distributed
model predictive control (MPC) system 600 is shown, according to
some embodiments. MPC system 600 uses a MPC technique to determine
optimal setpoints for the equipment of an airside system and a
waterside system over a time horizon. MPC system 600 can be used in
combination with HVAC system 20, waterside system 20, airside
system 50, HVAC system 100, waterside system 120, airside system
130, waterside system 200, airside system 300, BMS 400, and/or BMS
500, as described with reference to FIGS. 1A-5. For example, MPC
system 600 can determine optimal temperature setpoints for the
airside equipment 622-626 of airside system 50 and/or airside
system 300. Similarly, MPC system 600 can determine optimal
setpoints for the waterside equipment 628 of waterside system 30
and/or waterside system 200.
[0110] MPC is a control technique that uses a model of a controlled
system to relate system inputs (e.g., control actions, setpoints,
etc.) to system states and system outputs (e.g., measurements,
process variables, etc.). The model can be used to predict the
system states and system outputs based on the actions taken by a
controller at each time step during an optimization period. At each
time step, MPC solves an online optimization problem using the
system model to determine a sequence of control actions that
achieve an objective (e.g., minimizing tracking error, minimizing
energy cost, etc.) while respecting process constraints such as
equipment capacity and safety bounds (e.g., temperature
constraints, equipment switching constraints, etc.). The first
control action in the sequence is implemented and the optimization
problem is solved again at the next time step after new
measurements are obtained.
[0111] In economic MPC, the objective in the optimization problem
is often to minimize total cost, as defined by a cost function.
Numerous studies have shown that MPC outperforms existing control
systems due to its ability to forecast into the future and
anticipate events before they occur. MPC enables shifting of the
energy load from peak hours to off-peak hours by using the mass of
the building for passive thermal energy storage (TES). Active
thermal energy storage (e.g., chilled water tanks, hot water tanks,
etc.) can also be used to further facilitate load shifting. Through
a combination of active and passive storage systems, energy costs
can be decreased by concentrating equipment usage to times of low
resource prices, all while maintaining comfort limits within each
building.
[0112] Still referring to FIG. 6, distributed MPC system 600 is
shown to include a MPC layer 610 and a regulatory layer 620. MPC
layer 610 is shown to include a high-level model predictive
controller 608 and several low-level model predictive controllers
612-618. Controllers 612, 614, and 616 are shown as low-level
airside model predictive controllers, whereas controller 618 is
shown as a low-level waterside model predictive controller. MPC
layer 610 can be configured to determine and provide optimal
temperature setpoints and equipment operating setpoints to the
equipment of regulatory layer 620. In some embodiments, MPC layer
610 can be retrofit to any existing BMS to provide setpoint
optimization for the airside equipment and waterside equipment of
the BMS.
[0113] Regulatory layer 620 is shown to include airside equipment
622-626 and waterside equipment 628. Airside equipment 622-626 can
include some or all of the equipment of airside system 50, airside
system 130, and/or airside system 300, as described with reference
to FIGS. 1A-1B and FIG. 3. Waterside equipment 628 can include some
or all of the equipment of waterside system 30, waterside system
120, and/or waterside system 200, as described with reference to
FIGS. 1A-2. In some embodiments, regulatory layer 620 includes some
or all of the equipment of BMS 400 and/or BMS 500, as described
with reference to FIGS. 4-5. For example, regulatory layer 620 can
include PID controllers, operable equipment (e.g., chillers,
boilers, air handling units, etc.), and/or other systems or devices
configured to control a process variable to a setpoint.
[0114] In some embodiments, distributed MPC system 600 includes a
load/rate predictor 602. Load/rate predictor 602 can provide MPC
layer 610 with load and rate predictions including, for example,
disturbance forecasts, electricity prices, demand charge prices,
and outside air temperatures. Load/rate predictor 602 is shown
receiving weather forecasts from a weather service 604. In some
embodiments, load/rate predictor 602 generates the disturbance
forecasts as a function of the weather forecasts. In some
embodiments, load/rate predictor 602 uses feedback from regulatory
layer 620 to generate the disturbance forecasts. Feedback from
regulatory layer 620 can include various types of sensory inputs
(e.g., temperature, flow, humidity, enthalpy, etc.) or other data
relating to the controlled building or campus (e.g., building
occupancy data, building electric load, etc.). In some embodiments,
load/rate predictor 602 generates a disturbance forecast including
a predicted disturbance value for each time step within the
optimization period.
[0115] In some embodiments, load/rate predictor 602 uses a
deterministic plus stochastic model trained from historical load
data to generate the disturbance forecast. Load/rate predictor 602
can use any of a variety of prediction methods to generate the
disturbance forecast (e.g., linear regression for the deterministic
portion and an autoregressive model for the stochastic portion).
Load/rate predictor 602 can predict one or more different types of
disturbances for the building or campus. For example, load/rate
predictor 602 can predict a thermal load resulting from heat
transfer between the air within a building and the outside air
through the walls of the building. Load/rate predictor 602 can
predict a thermal load resulting from internal heat generation
within the building (e.g., heat generated by electronics in the
building, heat generated by building occupants, etc.). In some
embodiments, load/rate predictor 602 makes load/rate predictions
using the techniques described in U.S. patent application Ser. No.
14/717,593, titled "Building Management System for Forecasting Time
Series Values of Building Variables" and filed May 20, 2015, the
entire disclosure of which is incorporated by reference herein.
[0116] Load/rate predictor 602 is shown receiving utility rates
from utilities 606. Utility rates can indicate a cost or price per
unit of a resource (e.g., electricity, natural gas, water, etc.)
provided by utilities 606 at each time step in the optimization
period. In some embodiments, the utility rates are time-variable
rates. For example, the price of electricity can be higher at
certain times of day or days of the week (e.g., during high demand
periods) and lower at other times of day or days of the week (e.g.,
during low demand periods). The utility rates can define various
time periods and a cost per unit of a resource during each time
period. Utility rates can be actual rates received from utilities
606 or predicted utility rates estimated by load/rate predictor
602.
[0117] In some embodiments, the utility rates include demand
charges for one or more resources provided by utilities 606. A
demand charge can define a separate cost imposed by utilities 606
based on the maximum usage of a particular resource (e.g., maximum
energy consumption) during a demand charge period. The utility
rates can define various demand charge periods and one or more
demand charges associated with each demand charge period. In some
instances, demand charge periods can overlap partially or
completely with each other and/or with the optimization period.
Advantageously, MPC layer 610 can account for demand charges in the
high-level optimization process performed by high-level model
predictive controller 608. Utilities 606 can be defined by
time-variable (e.g., hourly) prices, a maximum service level (e.g.,
a maximum rate of consumption allowed by the physical
infrastructure or by contract) and, in the case of electricity, a
demand charge or a charge for the peak rate of consumption within a
certain period. Load/rate predictor 602 can store the predicted
loads and the utility rates in memory and/or provide the predicted
loads and the utility rates to high-level MPC 608.
[0118] MPC layer 610 can receive measurements from regulatory layer
620 and provide setpoints to regulatory layer 620. MPC layer 610
can generate optimal values for various decision variables
including, for example, zone temperature setpoints, equipment
on/off decisions, and TES charging/discharging rates. MPC layer 610
can determine the optimal values of the decision variables using
system models such a zone temperature to cooling/heating duty
model, a cooling/heating duty to temperature setpoint model,
equipment models, and active TES models. MPC layer 610 can
determine the optimal values of the decision variables by
performing an optimization process subject to several constraints.
The constraints can include comfort bounds on the zone air
temperatures, equipment capacity constraints, TES tank size, and
rate of change bounds on the equipment of regulatory layer 620.
[0119] As discussed above, solving a single MPC problem to
determine the optimal values of the decision variables can be
difficult for large-scale applications. For example, airside system
50 can include thousands of discrete zones and waterside system 30
can include thousands of unique HVAC devices. The discrete
decisions (e.g., turning equipment on/off) can result in a mixed
integer optimization problem, which further increases complexity.
Due to the difficulty and computational complexity of the MPC
problem, MPC layer 610 can decompose the overall MPC problem into
smaller, more manageable, optimization problems.
[0120] As shown in FIG. 6, distributed MPC system 600 can decompose
the overall MPC problem into a high-level optimization problem and
a low-level optimization problem. The high-level problem can be
solved by high-level controller 608 to determine a load profile for
each low-level airside subsystem 632-636 and a demand profile for
waterside system 30. In some embodiments, high-level controller 608
uses active TES models and aggregate low-level models for each
airside subsystem 632-636 to reduce computational complexity.
High-level controller 608 can determine load profiles that optimize
(e.g., minimize) the total operational cost of MPC system 600 over
the optimization period. Each load profile can include a load value
for each time step in the optimization period. Low-level airside
controllers 612-616 can use the load profiles as constraints
defining maximum permissible load values for each airside subsystem
632-636 for each time step in the optimization period. High-level
controller 608 can provide the load profiles to each of the
low-level airside controller 612-616. The high-level optimization
performed by high-level controller 608 is described in greater
detail with reference to FIG. 7.
[0121] The low-level optimization problem can be further decomposed
into a low-level waterside optimization problem and one or more
low-level airside optimization problems. Each low-level airside
problem can be solved by one of low-level airside controllers
612-616 to determine zone temperature setpoints for the airside
equipment 622-626 of each airside subsystem 632-636. Each low-level
airside controller 612-616 can determine the zone temperature
setpoints that optimize (e.g., minimize) the energy consumption of
the corresponding airside subsystem 632-636 while maintaining zone
temperatures within defined temperature limits and without
exceeding the load values provided by high-level controller 608.
Alternatively, each low-level airside controller 612-616 can
determine temperature setpoints that track the average building
temperatures (e.g., predicted building temperature states) from the
high-level optimization problem. The low-level optimization
performed by low-level controllers 612-616 is described in greater
detail with reference to FIG. 8.
[0122] The low-level waterside problem can be solved by low-level
waterside controller 618. In some embodiments, the low-level
waterside problem is a mixed-integer linear program. Low-level
waterside controller 618 can determine optimal setpoints for
waterside equipment 628 that minimize operating cost while meeting
the demand profile from high-level controller 608. Decision
variables optimized by low-level waterside controller 618 can
include, for example, equipment on/off states, thermal loads for
chillers, flow rates for pumps, setpoints for other auxiliary
waterside equipment, and TES charge/discharge rates. Low-level
waterside controller 618 can use the demand profile from high-level
controller 608 as an input specifying the overall demand to be met
by waterside system 30 at each time step of the optimization
period.
[0123] In some embodiments, low-level waterside controller 628
decomposes the low-level waterside optimization problem into a
first waterside optimization problem and a second waterside
optimization problem. The first waterside optimization problem can
allocate the demand specified by high-level controller 608 across
multiple subplants of the waterside system (e.g., heater subplant
202, heat recovery chiller subplant 204, chiller subplant 206,
cooling tower subplant 208, hot TES subplant 210, and cold TES
subplant 212). The second waterside optimization problem can be
decomposed into a mixed-integer optimization problem for each
subplant to determine optimal equipment on/off states and equipment
setpoints for waterside equipment 628. An example of a waterside
optimization technique which can be used by low-level waterside
controller 628 is described in detail in U.S. patent application
Ser. No. 14/634,609 filed Feb. 27, 2015, the entire disclosure of
which is incorporated by reference herein.
[0124] As shown in FIG. 6, each low-level airside model predictive
controller 612-616 can control a subsystem 632-636 of the entire
airside system 50. Each low-level airside controller 612-616 can
perform a separate airside optimization process to determine
optimal temperature setpoints for the airside equipment 622-626 of
the corresponding airside subsystem 632-636. Each airside subsystem
632-636 (e.g., each building) can include multiple AHUs, each of
which can be configured to deliver air to multiple building zones.
Accordingly, each airside system 632-636 can include many building
zones.
[0125] In some embodiments, high-level controller 608 uses an
aggregate model of each airside subsystem 632-636 and allocates a
thermal energy load to each airside subsystem 632-636. Low-level
airside controllers 612-626 can use more detailed zone-level models
during the low-level optimization processes to determine the
optimal temperature setpoints for each building zone of the
corresponding airside subsystem. Decomposing airside system 50 into
separate airside subsystems 632-636 can improve computational
performance and substantially decrease the amount of time required
to solve the low-level MPC problems. For example, all of the
low-level MPC problems can be solved within a few minutes.
[0126] In some embodiments, each airside subsystem 632-636
represents a separate building. Significant coupling between
airside subsystems 632-636 (e.g., heat exchange between subsystems
632-636) can affect performance since low-level controllers 612-616
are not required to coordinate their solutions. One way to
decompose airside system 50 to guarantee that there is no coupling
between subsystems 632-636 is to decompose by building since
separate buildings do not exchange heat with one another. For this
reason, it may be desirable to select airside subsystems 632-636 so
that each airside subsystem 632-636 represents a separate building.
In other embodiments, each airside subsystem 632-636 can represent
a single building zone, a collection of zones within a building, or
even multiple buildings.
[0127] In MPC system 600, high-level model predictive controller
608 determines the thermal energy loads to allocate to each airside
subsystem 632-636 (e.g., each building) and the demand profile for
waterside system 30. Each airside subsystem 632-636 can include a
separate low-level airside controller 612-616 that computes the
temperature setpoints for each zone in that airside subsystem
632-636 (e.g., each zone in the building). If each low-level
airside subsystem 632-636 represents a separate building the
low-level airside problem can be solved in a distributed manner
since there is no heat transfer between the separate buildings. The
low-level airside problem can be easily extended to handle large
industrial and campus-wide implementations without increasing
computational complexity.
[0128] Distributed MPC system 600 provides several advantages over
alternative control strategies. For example, high-level controller
608 can coordinate operation low-level airside subsystems 632-636
via the load profiles provided to each low-level controller
612-616. By including a demand charge in the high-level objective
function, high-level controller 608 can generate load profiles
which stager the operation of low-level airside subsystems 632-636.
In other words, high-level controller 608 can generate load
profiles which ensure that low-level airside subsystems 632-636 do
not all consume power at the same time. This allows high-level
controller 608 to coordinate operation of low-level airside
subsystems 632-636 and account for the demand charge without
requiring communication between low-level airside controllers
612-616. The coupling caused by the presence of a single waterside
system 30 for all airside subsystems 632-636 is also addressed by
high-level controller 608. Hence, the low-level control problems
are completely decoupled such that iterations and communication
between low-level controllers 612-616 are not required.
[0129] Data communication between MPC layer 610 and regulatory
layer 620 can also be greatly reduced. For example, data
communication between MPC layer 610 and regulatory layer 620 can be
limited to measurements and setpoints, as shown in FIG. 6. This
allows MPC system 600 to be integrated with any existing BMS. High
level controller 608 can use aggregate models of each airside
subsystem 632-636 and waterside system 30 to reduce computational
complexity during the high-level optimization. Each low-level
airside controller 612-616 can provide high-level controller 608
with an aggregate disturbance estimate, an aggregate building
temperature, and aggregate system parameters (e.g., thermal
capacitance, heat transfer coefficient, etc.) for the corresponding
airside subsystem 632-636.
[0130] Distributed MPC system 600 can be used to control a variety
of different systems including, for example, a chiller plant, air
handling units, rooftop units, variable refrigerant flow systems,
airside systems, waterside systems, building management systems,
and/or other types of systems for which power consumption or
thermal energy loads can be allocated to different subsystems. Most
building temperature regulation methods do not consider detailed
models of waterside equipment 628 or integer decision variables,
which decreases the fidelity of energy cost calculations. However,
MPC system 600 can include integer variables in the waterside
optimization problem to determine when to turn equipment on and off
rather than relying on heuristics. Active TES can also be used in
the waterside optimization problem, which allows for the greatest
potential for load shifting and cost savings. However, MPC system
600 can still be applied generally, whether or not active TES is
available.
High-Level Model Predictive Controller
[0131] Referring now to FIG. 7, a block diagram illustrating
high-level model predictive controller (MPC) 608 in greater detail
is shown, according to some embodiments. High-level MPC 608 is
shown a communications interface 702 and a processing circuit 704.
Communications interface 702 can include wired or wireless
interfaces (e.g., jacks, antennas, transmitters, receivers,
transceivers, wire terminals, etc.) for conducting data
communications with various systems, devices, or networks. For
example, communications interface 702 can include an Ethernet card
and port for sending and receiving data via an Ethernet-based
communications network and/or a WiFi transceiver for communicating
via a wireless communications network. Communications interface 702
can be configured to communicate via local area networks or wide
area networks (e.g., the Internet, a building WAN, etc.) and may
use a variety of communications protocols (e.g., BACnet, IP, LON,
etc.).
[0132] Communications interface 702 can be a network interface
configured to facilitate electronic data communications between
high-level MPC 608 and various external systems or devices (e.g.,
weather service 604, utilities 606, low-level controllers 612-618,
BMS equipment, etc.). For example, high-level MPC 608 can receive
weather forecasts from weather service 604, utility rates from
utilities 606, and/or load and rate predictions from load/rate
predictor 602. High-level MPC 608 can receive measurements from the
BMS indicating one or more measured states of the controlled
building or campus (e.g., temperature, humidity, electric loads,
etc.) and one or more states of waterside system 30 (e.g.,
equipment status, power consumption, equipment availability, etc.).
In some embodiments, high-level MPC 608 receives a measurement of
the TES state from waterside system 30, which indicates the current
fill level of the TES tanks.
[0133] High-level MPC 608 can receive building disturbance
estimates from each low-level airside controller 612-616. The
building disturbance estimates can indicate an estimated thermal
energy load for each airside subsystem 632-636. High-level MPC 608
can receive aggregate system curves, aggregate building parameters,
and/or coefficients of performance from each low-level controller
612-618. High-level MPC 608 can use the information received at
communications interface 702 to generate load profiles for each
low-level airside subsystem 632-636 and a demand profile for
waterside system 30. High-level MPC 608 can provide the load
profiles and the demand profile to low-level controllers
612-618.
[0134] Processing circuit 704 is shown to include a processor 706
and memory 708. Processor 706 can be a general purpose or specific
purpose processor, an application specific integrated circuit
(ASIC), one or more field programmable gate arrays (FPGAs), a group
of processing components, or other suitable processing components.
Processor 706 can be configured to execute computer code or
instructions stored in memory 708 or received from other computer
readable media (e.g., CDROM, network storage, a remote server,
etc.).
[0135] Memory 708 can include one or more devices (e.g., memory
units, memory devices, storage devices, etc.) for storing data
and/or computer code for completing and/or facilitating the various
processes described in the present disclosure. Memory 708 can
include random access memory (RAM), read-only memory (ROM), hard
drive storage, temporary storage, non-volatile memory, flash
memory, optical memory, or any other suitable memory for storing
software objects and/or computer instructions. Memory 708 can
include database components, object code components, script
components, or any other type of information structure for
supporting the various activities and information structures
described in the present disclosure. Memory 708 can be communicably
connected to processor 706 via processing circuit 704 and can
include computer code for executing (e.g., by processor 706) one or
more processes described herein. When processor 706 executes
instructions stored in memory 708, processor 706 generally
configures high-level MPC 608 (and more particularly processing
circuit 704) to complete such activities.
[0136] Still referring to FIG. 7, high-level MPC 608 is shown to
include a building temperature modeler 714. Building temperature
modeler 714 can generate a temperature model for each airside
subsystem 632-636. The temperature models generated by building
temperature modeler 714 are referred to as building temperature
models under the assumption that each airside subsystem 632-636
represents a separate building. However, the temperature models
generated by building temperature modeler 714 can be temperature
models for other types of subsystems if airside subsystems 632-636
represent other types of spaces. Building temperature modeler 714
can generate a temperature model for each building. Although only
three airside subsystems 632-636 are shown in FIG. 6, it should be
understood that any number of buildings and airside subsystems
632-636 may be present. In general, building temperature modeler
714 can generate n.sub.b building temperature models, where n.sub.b
is the total number of buildings and/or airside subsystems
632-636.
[0137] In some embodiments, building temperature modeler 714 models
the temperature of each building using a building heat transfer
model. The dynamics of heating or cooling a single building zone
are described by the energy balance:
C dT dt = - H ( T - T a ) - Q . c + Q . other ##EQU00001##
where C is the thermal capacitance of the building zone, H is the
ambient heat transfer coefficient for the building zone, T is the
temperature of the building zone, T.sub.a is the ambient
temperature outside the building zone (e.g., the outside air
temperature), {dot over (Q)}.sub.c, is the amount of cooling
applied to the building zone (i.e., the cooling load), and {dot
over (Q)}.sub.other is the external load, radiation, or other
disturbance experienced by the building zone. In the previous
equation, {dot over (Q)}.sub.c represents heat transfer out of the
building zone (i.e., cooling) by the HVAC system and therefore has
a negative sign. However, if heating is applied to the building
zone rather than cooling, the sign on {dot over (Q)}.sub.c can be
switched to a positive sign such that {dot over (Q)}.sub.c
represents the amount of heating applied to the building zone by
the HVAC system (i.e., the heating load).
[0138] The previous equation combines all mass and air properties
of the building zone into a single zone temperature. Other heat
transfer models which can be used by building temperature modeler
714 include the following air and mass zone models:
C z dT z dt = H az ( T a - T z ) + H mz ( T m - T z ) - Q . c + Q .
other ##EQU00002##
C m dT m dt = H mz ( T z - T m ) ##EQU00003##
where C.sub.z and T.sub.z are the thermal capacitance and
temperature of the air in the building zone, T.sub.a is the ambient
air temperature, H.sub.az is the heat transfer coefficient between
the air of the building zone and ambient air outside the building
zone (e.g., through external walls of the building zone), C.sub.m
and T.sub.m are the thermal capacitance and temperature of the
non-air mass within the building zone, and H.sub.mz is the heat
transfer coefficient between the air of the building zone and the
non-air mass.
[0139] The previous equation combines all mass properties of the
building zone into a single zone mass. Other heat transfer models
which can be used by building temperature modeler 714 include the
following air, shallow mass, and deep mass zone models:
C z dT z dt = H az ( T a - T z ) + H sz ( T s - T z ) - Q . c + Q .
other ##EQU00004## C s dT s dt = H sz ( T z - T s ) + H ds ( T d -
T s ) ##EQU00004.2## C d dT d dt = H ds ( T s - T d )
##EQU00004.3##
where C.sub.z and T.sub.z are the thermal capacitance and
temperature of the air in the building zone, T.sub.a is the ambient
air temperature, H.sub.az is the heat transfer coefficient between
the air of the building zone and ambient air outside the building
zone (e.g., through external walls of the building zone), C.sub.s
and T.sub.s are the thermal capacitance and temperature of the
shallow mass within the building zone, H.sub.sz is the heat
transfer coefficient between the air of the building zone and the
shallow mass, C.sub.d and T.sub.d are the thermal capacitance and
temperature of the deep mass within the building zone, and H.sub.ds
is the heat transfer coefficient between the shallow mass and the
deep mass.
[0140] In some embodiments, building temperature modeler 714 models
the temperature of each building using the following building
temperature model:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00005##
where C.sub.b and T.sub.b are the thermal capacitance and
temperature of the building designated by building index b, T.sub.a
is the ambient air temperature outside building b (e.g., outside
air temperature), H.sub.b is the heat transfer coefficient between
building b and the ambient air, {dot over (Q)}.sub.c,b is the
amount of cooling applied to the building by MPC system 600 (i.e.,
the amount of heat removed from the building), and {dot over
(Q)}.sub.other,b is the external load, radiation, or disturbance
experienced by building b. If heating is provided to the building
rather than cooling, the sign on {dot over (Q)}.sub.c,b can be
switched from a negative sign to a positive sign.
[0141] Building temperature modeler 714 can use the building
disturbance estimates received from low-level airside controllers
612-616 to identify appropriate values of the external disturbance
{dot over (Q)}.sub.other,b for each building b at each time step of
the optimization period. In some embodiments, building temperature
modeler 714 uses the weather forecasts from weather service 604
and/or the load and rate predictions provided by load/rate
predictor 602 to determine appropriate values for the ambient air
temperature T.sub.a and/or the external disturbance {dot over
(Q)}.sub.other,b for each building b at each time step of the
optimization period. Values of C.sub.b and H.sub.b can be specified
as parameters of the building b, received from the low-level
airside controller for the building b, received from a user,
retrieved from memory 708, or otherwise provided to building
temperature modeler 714. Building temperature modeler 714 can
generate a building temperature model for each building b, where
b=1 . . . n.sub.b and n.sub.b is the total number of buildings.
[0142] Still referring to FIG. 7, high-level MPC 608 is shown to
include a thermal energy storage (TES) modeler 724. TES modeler 724
can generate a model for the active thermal energy storage provided
by TES tanks 42 and 40. In some embodiments, TES modeler 724 uses
the following equation to model the active thermal energy
storage:
ds dt = - .sigma. s + Q . storage ##EQU00006##
where s is the amount of thermal energy (e.g., heating or cooling
potential) stored in a given TES tank, .sigma. is the decay
constant for the TES tank, and {dot over (Q)}.sub.storage is the
rate at which thermal energy is stored in the TES tank. TES modeler
724 can generate an active TES model for each TES tank.
[0143] High level MPC 608 is shown to include a waterside demand
modeler 722. Waterside demand modeler 722 can generate a model
representing the demand on waterside system 30 as a function of the
thermal energy load {dot over (Q)}.sub.c,b allocated to each
building b and the amount of thermal energy storage {dot over
(Q)}.sub.storage at each time step of the optimization period. In
some embodiments, waterside demand modeler 722 uses the following
equation to model waterside demand:
Q . HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k
##EQU00007##
where {dot over (Q)}.sub.HVAC,k is the waterside demand at time
step k (e.g., the thermal energy production of waterside system 30
at time step k), {dot over (Q)}.sub.c,b,k is the thermal energy
load allocated to building b at time step k, and {dot over
(Q)}.sub.storage,k is the amount of thermal energy being stored in
the TES tanks during time step k. The previous equation indicates
that the total demand {dot over (Q)}.sub.HVAC,k on the waterside
system 30 is a summation of the thermal energy loads {dot over
(Q)}.sub.c,b,k allocated to each building b and the thermal energy
{dot over (Q)}.sub.storage,k being stored in the TES tanks. This
equation can be used by high level MPC 608 as an energy balance
constraint to ensure that waterside system 30 generates enough
thermal energy to cover the building loads and the thermal energy
storage at each time step k.
[0144] High level MPC 608 is shown to include a constraints modeler
710. Constraints modeler 710 can generate and impose optimization
constraints on the optimization procedure performed by high-level
optimizer 712. Constraints imposed by constraints modeler 710 can
include, for example, equipment capacity constraints and building
temperature constraints. In some embodiments, constraints modeler
710 imposes the following constraint:
{dot over (Q)}.sub.HVAC,k.ltoreq.{dot over (Q)}.sub.HVAC,max
to ensure that the waterside demand {dot over (Q)}.sub.HVAC,k at
each time step k is less than or equal to the maximum capacity {dot
over (Q)}.sub.HVAC,max of waterside system 30. Similarly,
constraints modeler 710 can impose the following constraint:
0.ltoreq.s.sub.k.ltoreq.s.sub.max
to ensure that the amount of thermal energy stored in the TES tanks
at any time step k is between the minimum possible level of the TES
tanks (i.e., zero) and the maximum possible level of the TES tanks
(i.e., s.sub.max).
[0145] In some embodiments, constraints modeler 710 imposes
constraints on the building temperature T.sub.b. For example,
constraints modeler 710 can constrain the building temperature
T.sub.b between a minimum temperature T.sub.min and a maximum
temperature T.sub.max as shown in the following equation:
T.sub.min.ltoreq.T.sub.b.ltoreq.T.sub.max
where the values of T.sub.min and T.sub.max can be adjusted based
on the temperature setpoints of the building. In some embodiments,
constraints modeler 710 automatically adjusts the values of
T.sub.min and T.sub.max based on information received from the
low-level airside controller and/or BMS for the building. For
example, constraints modeler 710 can use a temperature setpoint
schedule and/or occupancy schedule for the building to
automatically adjust the values of T.sub.min and T.sub.max for each
time step k. This allows constraints modeler 710 to use temperature
limits based on the time-varying setpoint temperature range for the
building so that the building temperature T.sub.b is maintained
within time-appropriate temperature limits T.sub.min and
T.sub.max.
[0146] Still referring to FIG. 7, high-level MPC 608 is shown to
include an energy cost modeler 720 and a demand charge modeler 718.
Energy cost modeler 720 can generate an energy cost model
representing the cost of energy consumed by MPC system 600. The
cost of energy can include both a per-unit cost of energy resources
(e.g., electricity, water, natural gas, etc.) consumed by MPC
system 600 during the optimization period and a demand charge based
on the maximum power consumption. The demand charge component of
the energy cost model can be modeled by demand charge modeler 718
and enforced via demand charge constraints. In some embodiments,
the energy cost model accounts for only the energy resources
consumed by waterside system 30. In other embodiments, the energy
cost model also accounts for the power consumption of airside
system 50, which can be modeled by airside power consumption
modeler 716. Examples of both scenarios are described below.
Example 1: Energy Cost Model without Airside Power Consumption
[0147] In some embodiments, energy cost modeler 720 generates an
energy cost model that accounts for the energy consumption of
waterside system 30 without including airside power consumption.
For example, energy cost modeler 720 can model total energy cost
during the optimization period using the following equation:
k = 0 N - 1 c k .eta. tot Q . HVAC , k .DELTA. + c peak .eta. tot Q
. peak ##EQU00008##
[0148] The first term of the energy cost model accounts for the per
unit costs (e.g., $/kWh) of energy consumed during each time step k
of the optimization period. In some embodiments, c.sub.k is the
cost per unit of energy consumed at time step k to satisfy the
total waterside demand {dot over (Q)}.sub.HVAC,k at time step k,
the parameter .eta..sub.tot is the inverse of the coefficient of
performance of the aggregate airside/waterside system (e.g.,
0.1.ltoreq..eta..sub.tot.ltoreq.0.25), and .DELTA. is the duration
of time step k. Accordingly, the term .eta..sub.tot{dot over
(Q)}.sub.HVAC,k.DELTA. represents the total amount of energy
consumed (e.g., kWh) during time step k to satisfy the waterside
demand {dot over (Q)}.sub.HVAC,k. Multiplying by the cost c.sub.k
per unit energy consumed (e.g., $/kWh) yields the total cost (e.g.,
$) of the energy consumed during time step k. The energy cost model
can include a summation of the energy costs during each time step k
to determine the total cost of energy consumption over the
optimization period.
[0149] The second term of the energy cost model accounts for the
demand charge. In some embodiments, c.sub.peak is the demand charge
rate (e.g., $/kW), {dot over (Q)}.sub.peak is the peak waterside
demand during the demand charge period (e.g., the maximum of {dot
over (Q)}.sub.HVAC,k), and .eta..sub.tot is the inverse of the
coefficient of performance of the aggregate airside/waterside
system. Accordingly, the term .eta..sub.tot{dot over (Q)}.sub.peak
represents the peak power consumption to satisfy the peak waterside
demand {dot over (Q)}.sub.peak. Multiplying by the demand charge
rate c.sub.peak yields the total cost (e.g., $) of the demand
charge.
[0150] In some embodiments, demand charge modeler 718 generates
demand charge constraints to ensure that {dot over (Q)}.sub.peak
has the appropriate value. If the demand charge period is contained
entirely within the optimization period (e.g., between time steps
k=0 and k=N-1), then the appropriate value of {dot over
(Q)}.sub.peak is simply the maximum of {dot over (Q)}.sub.HVAC,k
during the optimization period. Demand charge modeler 718 can
implement the following demand charge constraint:
0.ltoreq.{dot over (Q)}.sub.HVAC,k.ltoreq.{dot over
(Q)}.sub.peak
to ensure that the peak waterside demand {dot over (Q)}.sub.peak is
always greater than or equal to the waterside demand {dot over
(Q)}.sub.HVAC,k at each time step. This forces the peak waterside
demand {dot over (Q)}.sub.peak to be at least as large as the
maximum waterside demand during the optimization period.
[0151] If the demand charge period begins before the optimization
period, it is possible that the maximum value of {dot over
(Q)}.sub.HVAC,k during the demand charge period occurred prior to
the beginning of the optimization period. Demand charge modeler 718
can implement the following demand charge constraint:
{dot over (Q)}.sub.peak,past.ltoreq.{dot over (Q)}.sub.peak
to ensure that the peak waterside demand {dot over (Q)}.sub.peak is
always greater than or equal to the maximum waterside demand {dot
over (Q)}.sub.peak,past that occurred during the same demand charge
period, even if the maximum waterside demand occurred prior to the
beginning of the current optimization period. In some embodiments,
demand charge modeler 718 updates {dot over (Q)}.sub.peak,past each
time a new maximum waterside demand is set to ensure that the
energy cost model accurately represents the demand charge imposed
by the power utility.
[0152] High-level optimizer 712 can use the energy cost model,
demand charge model, building temperature model, thermal energy
storage model, waterside demand model, and optimization constraints
to formulate an optimization problem. In some embodiments,
high-level optimizer 712 seeks to minimize the total cost of energy
consumed by waterside system 30 (i.e., energy cost and demand
charge) subject to the building temperature constraints and other
constraints provided by the high-level models described herein. For
example, high-level optimizer 712 can formulate the high-level
optimization problem as:
min x , u , Q . peak k = 0 N - 1 c k .eta. tot Q . HVAC , k .DELTA.
+ c peak .eta. tot Q . peak ##EQU00009##
subject to the following constraints:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00010## ds dt = - .sigma. s + Q . storage ##EQU00010.2## Q .
HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k ##EQU00010.3##
0 .ltoreq. Q . HVAC , k .ltoreq. Q . peak ##EQU00010.4## Q . peak ,
past .ltoreq. Q . peak .ltoreq. Q . HVAC , ma x ##EQU00010.5## 0
.ltoreq. s k .ltoreq. s ma x ##EQU00010.6## T m i n .ltoreq. T b
.ltoreq. T ma x ##EQU00010.7##
[0153] In some embodiments, high-level optimizer 712 converts one
or more of the above-identified models and/or constraints to
state-space form for use in the high-level optimization problem.
For example, high-level optimizer 712 can convert the preceding
equations into a discretized state-space model of the form:
x.sub.k+1=Ax.sub.k+Bu.sub.k+B.sub.dd.sub.k
y.sub.k=Cx.sub.k+Du.sub.k
where x.sub.k is a vector of system states at time step k, u.sub.k
is a vector of system inputs at time step k, y.sub.k is a vector of
measurements or system outputs at time step k, d.sub.k is a vector
of disturbances at time step k, and x.sub.k+1 is a vector of
(predicted) system states at time k+1. Table 1 illustrates the
variables that can be included in each of these vectors:
TABLE-US-00001 TABLE 1 Variables in High-Level Optimization States
x = [T.sub.b s].sup.T n = n.sub.b + 1 Inputs u = [{dot over
(Q)}.sub.c,b {dot over (Q)}.sub.storage].sup.T m = n.sub.b + 1
Measurements y = [T.sub.b s].sup.T p = n.sub.b + 1 Disturbances d =
[T.sub.a {dot over (Q)}.sub.other,b].sup.T n.sub.d = n.sub.b +
1
[0154] As shown in Table 1, the system states vector x includes the
building temperature T.sub.b and the TES storage level s. In some
embodiments, the system states vector x includes a building
temperature T.sub.b for each of the n.sub.b buildings and a TES
storage level s such that the total number n of variables in the
system states vector x is equal to n.sub.b+1. The inputs vector u
can include the thermal energy load {dot over (Q)}.sub.c,b
allocated to each building b and the thermal energy load {dot over
(Q)}.sub.storage allocated to thermal energy storage. In some
embodiments, the inputs vector u includes a thermal energy load
{dot over (Q)}.sub.c,b for each of the n.sub.b buildings and a TES
load {dot over (Q)}.sub.storage such that the total number m of
variables in the inputs vector u is equal to n.sub.b+1. The
disturbance vector d can include the ambient air temperature
T.sub.a and the estimated disturbance {dot over (Q)}.sub.other,b
for each building. In some embodiments, the disturbances vector d
includes an estimated disturbance {dot over (Q)}.sub.other,b for
each of the n.sub.b buildings and a single ambient air temperature
T.sub.a such that the total number n.sub.d of variables in the
disturbances vector d is equal to n.sub.b+1.
[0155] In some embodiments, the measurements vector y is the same
as the system states vector x. This indicates that all of the
system states are directly measured (i.e., y.sub.k=x.sub.k) and the
values of the C and D matrices in the state-space model are C=1 and
D=0. In other embodiments, the system states x can be constructed
or predicted from the measurements y. For example, high-level MPC
608 can use a Kalman filter or other predictive technique to
construct the system states x from the measurements y. Accordingly,
the system states x can be replaced with {circumflex over
(T)}.sub.b and s, where the hat notation indicates that such states
are predicted. The values of the A, B, C, and D, matrices in the
state-space representation can be identified using a system
identification technique. Examples of state prediction and system
identification techniques which can be used by high-level MPC 608
are described in detail in U.S. Pat. No. 9,235,657 titled "System
Identification and Model Development" and filed Mar. 13, 2013, the
entire disclosure of which is incorporated by reference herein.
Example 2: Energy Cost Model with Airside Power Consumption
[0156] In some embodiments, energy cost modeler 720 generates an
energy cost model that accounts for both the energy consumption of
waterside system 30 and the energy consumption of airside system
50. For example, the energy cost model can account for the power
{dot over (W)}.sub.air,b consumed by fans and other types of
airside equipment 622 to deliver the allocated thermal energy load
{dot over (Q)}.sub.c,b to the building. In some embodiments, the
power consumption {dot over (W)}.sub.air,b of each airside
subsystem 632-636 is a function of the thermal energy load {dot
over (Q)}.sub.c,b allocated to that airside subsystem.
[0157] Airside power consumption modeler 716 can generate an
airside power consumption model which relates airside power
consumption {dot over (W)}.sub.air,b to thermal energy load {dot
over (Q)}.sub.c,b. In some embodiments, airside power consumption
modeler 716 models airside power consumption using the following
equation:
{dot over (W)}.sub.air,b=.eta..sub.air{dot over (Q)}.sub.c,b
[0158] where {dot over (W)}.sub.air,b is the amount of power
consumed by the airside equipment 622 of building b to deliver the
thermal energy load {dot over (Q)}.sub.c,b. The conversion factor
.eta..sub.air can be a function of the coefficient of performance
of the airside equipment 622 (e.g., an inverse of the coefficient
of performance). In some embodiments, .eta..sub.air is a constant,
which indicates that the relationship between airside power
consumption {dot over (W)}.sub.air,b and thermal energy load {dot
over (Q)}.sub.c,b is linear. In other embodiments, .eta..sub.air
can be calculated by airside power consumption modeler 716 as a
nonlinear function of load and other parameters using operating
data.
[0159] In some embodiments, airside power consumption modeler 716
calculates the conversion factor .eta..sub.air as a function of
various airside system parameters such as the type of AHUs, the
time of day, comfort bounds, ambient conditions, chilled water
supply temperature, chilled water supply flow rate, and/or other
parameters that characterize airside system 50 or any of the
airside subsystems 632-636. For example, airside power consumption
modeler 716 can collect operating data from airside equipment 622
and/or low-level airside controller 612 and use the operating data
to determine an appropriate value of .eta..sub.air.
[0160] In some embodiments, airside power consumption modeler 716
calculates .eta..sub.air as a function of the thermal energy load
{dot over (Q)}.sub.c and individual fan power models. For example,
air at 20.degree. C. can have a density .rho..sub.air and heat
capacity C.sub.p,air as shown in the following equations:
.rho. air = 1.205 kg m 3 C p , air = 1.005 kJ kg K ##EQU00011##
The thermal energy load {dot over (Q)}.sub.c provided by an airflow
can be represented using the following model:
Q . c = m . air C p , air .DELTA. T ##EQU00012## Q . c = .rho. air
V . air C p , air ( T room - T supply ) ##EQU00012.2## Q . c V .
air = .rho. air c p , air ( T room - T supply ) ##EQU00012.3##
where {dot over (V)}.sub.air is the volumetric flow rate of supply
air into a building zone, T.sub.room is the temperature of the
building zone, and T.sub.supply is the temperature of the supply
air. Assuming that the supply air temperature T.sub.supply is
approximately 55.degree. F. and the room air temperature T.sub.room
is approximately 72.degree. F., airside power consumption modeler
716 can calculate the thermal energy load per unit volume of
airflow (e.g., the cooling capacity of the air) as follows:
Q . c V . air = ( 1.205 kg m 3 ) ( 1.005 kJ kg K ) ( 72 .degree. F
. - 55 .degree. F . ) ( 5 K 9 .degree. F . ) ##EQU00013## Q . c V .
air = 11.437 kJ m 3 ##EQU00013.2##
[0161] Airside power consumption modeler 714 can use this value of
cooling capacity {dot over (Q)}.sub.c/{dot over (V)}.sub.air and
the estimated power consumption per unit volume of a typical
airside fan to estimate the value of .eta..sub.air. For example,
typical HVAC fans consume approximately 1 horsepower (hp) to
provide between 1000 cubic feet per minute (CFM) and 1500 CFM of
airflow. These values can be converted to metric values as
follows:
( 1 hp 1000 CFM - 1500 CFM ) ( 2118.9 CFM 1 m 3 / s ) ( 0.7457 kW
hp ) = 1.05 kJ m 3 - 1.58 kJ m 3 ##EQU00014##
Substituting these values into the airside power consumption model
yields:
W . air V . air = .eta. air Q . c V . air ##EQU00015## 1.05 kJ m 3
- 1.58 kJ m 3 = .eta. air 11.437 kJ m 3 ##EQU00015.2## .eta. air =
0.091 - 0.14 ##EQU00015.3##
which indicates that the airside power consumption {dot over
(W)}.sub.air,b of each airside subsystem 622-626 is approximately
10% of the thermal energy load {dot over (Q)}.sub.c,b delivered by
the airside subsystem.
[0162] Given that airside power consumption {dot over
(W)}.sub.air,b can be modeled as .eta..sub.air{dot over
(Q)}.sub.c,b, energy cost modeler 720 can model total energy cost
during the optimization period using the following equation:
k = 0 N - 1 c k ( .eta. HVAC Q . HVAC , k + .eta. air b = 1 n b Q .
c , b , k ) .DELTA. + c peak W . peak ##EQU00016##
[0163] The first portion of the energy cost model accounts for the
per unit costs (e.g., $/kWh) of energy consumed by waterside system
30 during each time step k of the optimization period. In some
embodiments, c.sub.k is the cost per unit of energy consumed at
time step k, .DELTA. is the duration of time step k, and
.eta..sub.HVAC is the inverse of the coefficient of performance of
waterside system 30 (e.g., .eta..sub.HVAC.about.0.2). The term
.eta..sub.HVAC{dot over (Q)}.sub.HVAC,k represents the amount of
power consumption (e.g., kW) by waterside system 30 during time
step k to satisfy the waterside demand {dot over (Q)}.sub.HVAC,k.
Multiplying by the cost c.sub.k per unit energy consumed (e.g.,
$/kWh) and the duration .DELTA. (e.g., hours) yields the total cost
(e.g., $) of the energy consumed during time step k by waterside
system 30. The first portion of the energy cost model can be summed
across all time steps k=0 . . . N-1 of the optimization period to
determine the total energy consumed by waterside system 30 over the
duration of the optimization period.
[0164] The second portion of the energy cost model accounts for the
per unit costs (e.g., $/kWh) of energy consumed by each airside
subsystem (e.g., each building b) during each time step k of the
optimization period. As described above, .eta..sub.air is the
inverse of the coefficient of performance of the airside subsystems
(e.g., .eta..sub.air.about.0.1) and {dot over (Q)}.sub.c,b,k is the
thermal energy load delivered by the airside subsystem for building
b at time step k. The term .eta..sub.air{dot over (Q)}.sub.c,b,k
represents the power consumption {dot over (W)}.sub.air,b of the
airside equipment for building b. The second portion of the energy
cost model can be summed across all buildings b=1 . . . n.sub.b and
across all time steps k=0 . . . N-1 to determine the total power
consumption of all airside subsystems over the duration of the
optimization period. Multiplying by the cost c.sub.k per unit
energy consumed (e.g., $/kWh) and the duration .DELTA. (e.g.,
hours) yields the total cost (e.g., $) of the energy consumed by
the airside subsystems over the duration of the optimization
period.
[0165] The third portion of the energy cost model accounts for the
demand charge. In some embodiments, c.sub.peak is the demand charge
rate (e.g., $/kW) and {dot over (W)}.sub.peak is the peak aggregate
airside and waterside power consumption during the applicable
demand charge period. Multiplying by the demand charge rate
C.sub.peak yields the total cost (e.g., $) of the demand charge. In
some embodiments, demand charge modeler 718 generates demand charge
constraints to ensure that {dot over (W)}.sub.peak has the
appropriate value. If the demand charge period is contained
entirely within the optimization period (e.g., between time steps
k=0 and k=N-1), then the appropriate value of {dot over
(W)}.sub.peak is the maximum of the combined waterside/airside
power consumption at any time step k during the optimization
period. Demand charge modeler 718 can implement the following
demand charge constraint:
0 .ltoreq. ( .eta. HVAC Q . HVAC , k + .eta. air b = 1 n b Q . c ,
b , k ) .ltoreq. W . peak ##EQU00017##
to ensure that the peak power consumption {dot over (W)}.sub.peak
is always greater than or equal to the sum of the waterside power
consumption .eta..sub.HVAC{dot over (Q)}.sub.HVAC,k and the airside
power consumption .eta..sub.air.SIGMA..sub.b=1.sup.n.sup.b{dot over
(Q)}.sub.c,b,k at each time step. This forces the peak power
consumption {dot over (W)}.sub.peak to be at least as large as the
maximum combined airside/waterside demand during the optimization
period.
[0166] If the demand charge period begins before the optimization
period, it is possible that the maximum peak power consumption
during the demand charge period occurred prior to the beginning of
the optimization period. Demand charge modeler 718 can implement
the following demand charge constraint:
{dot over (W)}.sub.peak,past.ltoreq.{dot over (W)}.sub.peak
to ensure that the peak power consumption {dot over (W)}.sub.peak
is always greater than or equal to the maximum power consumption
{dot over (W)}.sub.peak,past that occurred during the same demand
charge period, even if the maximum power consumption occurred prior
to the beginning of the current optimization period. In some
embodiments, demand charge modeler 718 updates {dot over
(W)}.sub.peak,past each time a new maximum power consumption is set
to ensure that the energy cost model accurately represents the
demand charge imposed by the power utility.
[0167] High-level optimizer 712 can use the energy cost model,
airside power consumption model, demand charge model, building
temperature model, thermal energy storage model, waterside demand
model, and optimization constraints to formulate an optimization
problem. In some embodiments, high-level optimizer 712 seeks to
minimize the total cost of energy consumed by the aggregate
airside/waterside system subject to the building temperature
constraints and other constraints provided by the high-level models
described herein. For example, high-level optimizer 712 can
formulate the high-level optimization problem as:
min x , u , W . peak k = 0 N - 1 c k ( .eta. HVAC Q . HVAC , k +
.eta. air b = 1 n b Q . c , b , k ) .DELTA. + c peak W . peak
##EQU00018##
subject to the following constraints:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00019## ds dt = - .sigma. s + Q . storage ##EQU00019.2## Q .
HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k ##EQU00019.3##
0 .ltoreq. ( .eta. HVAC Q . HVAC , k + .eta. air b = 1 n b Q . c ,
b , k ) .ltoreq. W . peak ##EQU00019.4## W . peak , past .ltoreq. W
. peak ##EQU00019.5## 0 .ltoreq. Q . HVAC , k .ltoreq. Q . HVAC ,
ma x ##EQU00019.6## 0 .ltoreq. s k .ltoreq. s ma x T m i n .ltoreq.
T b .ltoreq. T ma x ##EQU00019.7##
[0168] In some embodiments, high-level optimizer 712 converts one
or more of the above-identified models and/or constraints to
state-space form for use in the high-level optimization problem.
For example, high-level optimizer 712 can convert the preceding
equations into a discretized state-space model of the form:
x.sub.k+1=Ax.sub.k+Bu.sub.k+B.sub.dd.sub.k
y.sub.k=Cx.sub.kDu.sub.k
where x.sub.k is a vector of system states at time step k, u.sub.k
is a vector of system inputs at time step k, y.sub.k is a vector of
measurements or system outputs at time step k, d.sub.k is a vector
of disturbances at time step k, and x.sub.k+1 is a vector of
(predicted) system states at time k+1. The variables included in
each vector can be the same as shown in Table 1 above.
[0169] High-level optimizer 712 can perform an optimization
procedure to determine optimal values for each the input variables
in the vector u at each time step k of the optimization period. For
example, high-level optimizer 712 can determine optimal values for
each of the thermal energy loads {dot over (Q)}.sub.c,b,k allocated
to each building b at each time step k and the thermal energy load
{dot over (Q)}.sub.storage,k allocated to thermal energy storage at
each time step k. Each set of thermal energy loads {dot over
(Q)}.sub.c,b,k with the same building index b forms a load profile
for a particular airside subsystem and includes a load value for
each time step k in the optimization period. Similarly, the set of
TES loads {dot over (Q)}.sub.storage,k forms a load profile for the
TES tanks and includes a load value for each time step k in the
optimization period. High-level optimizer 712 can provide the
airside subsystem load profiles to the low-level airside
controllers 612-616 and can provide the TES load profile to the
low-level waterside controller 618.
[0170] In some embodiments, high-level optimizer 712 generates a
vector of predicted temperature states {circumflex over (T)}.sub.b
for each low-level airside subsystem 632-636. Each vector of
predicted temperature states {circumflex over (T)}.sub.b can
include a predicted building temperature state {circumflex over
(T)}.sub.b,k for each time step k during the optimization period.
Temperature states {circumflex over (T)}.sub.b,k can be predicted
using any of a variety of predictive techniques including, for
example, a Kalman filter as described in U.S. Pat. No. 9,235,657.
High-level optimizer 712 can provide each vector of predicted
temperature states {circumflex over (T)}.sub.b to the low-level
airside controller 612-616 for the corresponding low-level airside
subsystem 632-636. In some embodiments, low-level airside
controllers 612-616 use the predicted temperature states
{circumflex over (T)}.sub.b to generate zone temperature setpoints
that track the predicted temperature states {circumflex over
(T)}.sub.b,k at each time step k.
[0171] In some embodiments, high-level optimizer 712 calculates the
total demand {dot over (Q)}.sub.HVAC,k on waterside system 30 at
each time step k as a summation of the building thermal energy
loads {dot over (Q)}.sub.c,b,k and the TES load {dot over
(Q)}.sub.storage,k at time step k. The set of waterside demand
values forms a demand profile for waterside system 30 and includes
a demand value for each time step k in the optimization period. The
demand value {dot over (Q)}.sub.HVAC,k for a particular time step k
represents the total demand which must be satisfied by waterside
system 30 at that time step k. High-level optimizer 712 can provide
the waterside demand profile to low-level waterside controller
618.
Low-Level Airside Model Predictive Controller
[0172] Referring now to FIG. 8, a block diagram illustrating
low-level model predictive controller (MPC) 612 in greater detail
is shown, according to some embodiments. Although only one
low-level airside MPC 612 is shown in detail, it should be
understood that any other low-level airside MPCs in control system
600 (e.g., low-level airside MPCs 614-616) can include some or all
of the same components as low-level airside MPC 612. Control system
600 can include any number of low-level airside MPCs, each of which
can operate independently to monitor and control a separate
low-level airside subsystem (e.g., airside subsystems 632-636).
[0173] Low-level airside MPC 612 is shown a communications
interface 802 and a processing circuit 804. Communications
interface 802 can include wired or wireless interfaces (e.g.,
jacks, antennas, transmitters, receivers, transceivers, wire
terminals, etc.) for conducting data communications with various
systems, devices, or networks. For example, communications
interface 802 can include an Ethernet card and port for sending and
receiving data via an Ethernet-based communications network and/or
a WiFi transceiver for communicating via a wireless communications
network. Communications interface 802 can be configured to
communicate via local area networks or wide area networks (e.g.,
the Internet, a building WAN, etc.) and may use a variety of
communications protocols (e.g., BACnet, IP, LON, etc.).
[0174] Communications interface 802 can be a network interface
configured to facilitate electronic data communications between
low-level airside MPC 612 and various external systems or devices
(e.g., weather service 604, high-level MPC 608, airside equipment
622, etc.). For example, low-level airside MPC 612 can receive
weather forecasts from weather service 604 and/or load predictions
from load/rate predictor 602. Low-level airside MPC 612 can receive
measurements from the BMS indicating one or more measured states of
the controlled building or campus (e.g., temperature, humidity,
electric loads, etc.) and one or more states of airside subsystem
632 (e.g., equipment status, power consumption, equipment
availability, etc.). Low-level airside MPC 612 can receive
predicted temperature states and/or a load profile from high-level
MPC 608. Low-level airside MPC 612 can use the information received
at communications interface 802 to generate zone temperature
setpoints each zone of low-level airside subsystem 632. Low-level
airside MPC 612 can provide the zone temperature setpoints to
airside equipment 622.
[0175] Processing circuit 804 is shown to include a processor 806
and memory 808. Processor 806 can be a general purpose or specific
purpose processor, an application specific integrated circuit
(ASIC), one or more field programmable gate arrays (FPGAs), a group
of processing components, or other suitable processing components.
Processor 806 can be configured to execute computer code or
instructions stored in memory 808 or received from other computer
readable media (e.g., CDROM, network storage, a remote server,
etc.).
[0176] Memory 808 can include one or more devices (e.g., memory
units, memory devices, storage devices, etc.) for storing data
and/or computer code for completing and/or facilitating the various
processes described in the present disclosure. Memory 808 can
include random access memory (RAM), read-only memory (ROM), hard
drive storage, temporary storage, non-volatile memory, flash
memory, optical memory, or any other suitable memory for storing
software objects and/or computer instructions. Memory 808 can
include database components, object code components, script
components, or any other type of information structure for
supporting the various activities and information structures
described in the present disclosure. Memory 808 can be communicably
connected to processor 806 via processing circuit 804 and can
include computer code for executing (e.g., by processor 806) one or
more processes described herein. When processor 806 executes
instructions stored in memory 808, processor 806 generally
configures low-level airside MPC 612 (and more particularly
processing circuit 804) to complete such activities.
[0177] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a zone disturbance predictor 824. Zone disturbance
predictor 824 can generate a disturbance forecast for each zone i
of airside subsystem 632. Throughout this disclosure, the index i
is used to denote individual zones, where i=1 . . . n.sub.z and
n.sub.z is the total number of zones in a given airside subsystem.
The disturbance forecast for zone i can include a vector of
disturbance values {dot over (Q)}.sub.other,i, where each element
of the vector {dot over (Q)}.sub.other,i includes a predicted
disturbance value {dot over (Q)}.sub.other,i,k for a particular
time step k of the optimization period.
[0178] Zone disturbance predictor 824 is shown receiving weather
forecasts from a weather service 604. In some embodiments, zone
disturbance predictor 824 generates the disturbance forecasts as a
function of the weather forecasts. In some embodiments, zone
disturbance predictor 824 uses feedback from regulatory layer 620
to generate the disturbance forecasts. Feedback from regulatory
layer 620 can include various types of sensory inputs (e.g.,
temperature, flow, humidity, enthalpy, etc.) or other data relating
to the controlled building or campus (e.g., building occupancy
data, building electric load, etc.). In some embodiments, zone
disturbance predictor 824 uses a deterministic plus stochastic
model trained from historical load data to generate the disturbance
forecasts. Zone disturbance predictor 824 can use any of a variety
of prediction methods to generate the disturbance forecasts (e.g.,
linear regression for the deterministic portion and an
autoregressive model for the stochastic portion).
[0179] Zone disturbance predictor 824 can predict one or more
different types of disturbances for each building zone i. For
example, zone disturbance predictor 824 can predict a thermal load
resulting from heat transfer between the air within building zone i
and outside air through the walls of the building. Zone disturbance
predictor 824 can predict a thermal load resulting from internal
heat generation within the building zone (e.g., heat generated by
electronics in the building zone, heat generated by zone occupants,
etc.). In some embodiments, zone disturbance predictor 824 makes
disturbance predictions using the predictive techniques described
in U.S. patent application Ser. No. 14/717,593.
[0180] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a zone temperature modeler 814. Zone temperature
modeler 814 can generate a temperature model for each building zone
i of airside subsystem 632. Airside subsystem 632 can have any
number of zones. In some embodiments, the temperature of each zone
can be independently controlled and/or adjusted. Some building
zones can exchange heat with each other (e.g., if the building
zones are adjacent to one another), whereas other building zones do
not directly exchange energy. In general, zone temperature modeler
814 can generate n.sub.z zone temperature models, where n.sub.z is
the total number of zones in airside subsystem 632.
[0181] In some embodiments, zone temperature modeler 814 models the
temperature of each building zone using a zone heat transfer model.
The dynamics of heating or cooling a single building zone are
described by the energy balance:
C dT dt = - H ( T - T a ) - Q . c + Q . other ##EQU00020##
where C is the thermal capacitance of the building zone, H is the
ambient heat transfer coefficient for the building zone, T is the
temperature of the building zone, T.sub.a is the ambient
temperature outside the building zone (e.g., the outside air
temperature), {dot over (Q)}.sub.c is the amount of cooling applied
to the building zone (i.e., the cooling load), and {dot over
(Q)}.sub.other is the external load, radiation, or other
disturbance experienced by the building zone. In the previous
equation, {dot over (Q)}.sub.c represents heat transfer out of the
building zone (i.e., cooling) by the HVAC system and therefore has
a negative sign. However, if heating is applied to the building
zone rather than cooling, the sign on {dot over (Q)}.sub.c can be
switched to a positive sign such that {dot over (Q)}.sub.c
represents the amount of heating applied to the building zone by
the HVAC system (i.e., the heating load).
[0182] The previous equation combines all mass and air properties
of the building zone into a single zone temperature. Other heat
transfer models which can be used by zone temperature modeler 814
include the following air and mass zone models:
C z dT z dt = H az ( T a - T z ) + H mz ( T m - T z ) - Q . c + Q .
other ##EQU00021## C m dT m dt = H mz ( T z - T m )
##EQU00021.2##
where C.sub.z and T.sub.z are the thermal capacitance and
temperature of the air in the building zone, T.sub.a is the ambient
air temperature, H.sub.az is the heat transfer coefficient between
the air of the building zone and ambient air outside the building
zone (e.g., through external walls of the building zone), C.sub.m
and T.sub.m are the thermal capacitance and temperature of the
non-air mass within the building zone, and H.sub.mz is the heat
transfer coefficient between the air of the building zone and the
non-air mass.
[0183] The previous equation combines all mass properties of the
building zone into a single zone mass. Other heat transfer models
which can be used by zone temperature modeler 814 include the
following air, shallow mass, and deep mass zone models:
C z dT z dt = H az ( T a - T z ) + H sz ( T s - T z ) - Q . c + Q .
other ##EQU00022## C s dT s dt = H sz ( T z - T s ) + H ds ( T d -
T s ) ##EQU00022.2## C d dT d dt = H ds ( T s - T d )
##EQU00022.3##
where C.sub.z and T.sub.z are the thermal capacitance and
temperature of the air in the building zone, T.sub.a is the ambient
air temperature, H.sub.az is the heat transfer coefficient between
the air of the building zone and ambient air outside the building
zone (e.g., through external walls of the building zone), C.sub.s
and T.sub.s are the thermal capacitance and temperature of the
shallow mass within the building zone, H.sub.sz is the heat
transfer coefficient between the air of the building zone and the
shallow mass, C.sub.d and T.sub.d are the thermal capacitance and
temperature of the deep mass within the building zone, and H.sub.ds
is the heat transfer coefficient between the shallow mass and the
deep mass.
[0184] In some embodiments, zone temperature modeler 814 models the
temperature of each building using the following zone temperature
model:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00023##
where C.sub.i and T.sub.i are the thermal capacitance and
temperature of the building zone designated by zone index i,
T.sub.a is the ambient air temperature outside zone i (e.g.,
outside air temperature), H.sub.i is the heat transfer coefficient
between zone i and the ambient air, {dot over (Q)}.sub.c,i is the
amount of cooling applied to the building zone i by MPC system 600
(i.e., the amount of heat removed from the zone), and {dot over
(Q)}.sub.other,i is the external load, radiation, or disturbance
experienced by zone i. If heating is provided to the zone rather
than cooling, the sign on {dot over (Q)}.sub.c,i can be switched
from a negative sign to a positive sign.
[0185] The parameter .beta..sub.ij characterizes the degree of
coupling between zone i and another zone j (e.g., a building zone
adjacent to zone i). If zones i and j are not adjacent and/or do
not directly exchange heat with each other, zone temperature
modeler 814 can set the value of .beta..sub.ij equal to zero. The
zone temperature model can include a summation of the heat
transfers between building zone i and each other building zone
j.noteq.i as a function of the zone temperatures T.sub.i and
T.sub.j and the coupling coefficient .beta..sub.ij. In other
embodiments, heat transfer between zones can be accounted for using
the external disturbance estimate {dot over (Q)}.sub.other,i.
[0186] Zone temperature modeler 814 can use the zone disturbance
estimates received from zone disturbance predictor 824 to identify
appropriate values of the external disturbance {dot over
(Q)}.sub.other,i for each zone i at each time step of the
optimization period. In some embodiments, zone temperature modeler
824 uses the weather forecasts from weather service 604 and/or the
load and rate predictions provided by load/rate predictor 602 to
determine appropriate values for the ambient air temperature
T.sub.a and/or the external disturbance {dot over (Q)}.sub.other,i
for each zone i at each time step of the optimization period.
Values of C.sub.i and H.sub.i can be specified as parameters of the
zone i, received from the BMS that manages the building zone i,
received from a user, retrieved from memory 808, or otherwise
provided to zone temperature modeler 814. Zone temperature modeler
714 can generate a zone temperature model for each zone i, where
i=1 . . . n.sub.z and n.sub.z is the total number of zones.
[0187] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a building load modeler 816. Building load modeler
816 can generate a model of the total amount of thermal energy
delivered to the airside subsystem Q.sub.total (e.g., the total
amount of heating or cooling delivered to the building) as a
function of the individual zone loads {dot over (Q)}.sub.c,i. In
some embodiments, building load modeler 816 models the total
building load using the following equation:
dQ total dt = i = 1 n z Q . c , i ##EQU00024##
where Q.sub.total is the total amount of thermal energy (e.g.,
heating or cooling) delivered to the airside subsystem and {dot
over (Q)}.sub.c,i is the rate at which thermal energy is being
delivered (units of power) of a particular zone i. The building
load model can sum the thermal energy loads {dot over (Q)}.sub.c,i
of each building zone to calculate the total airside subsystem
thermal energy load
dQ total dt , ##EQU00025##
which is the derivative of the total amount of thermal energy
Q.sub.total delivered to the airside subsystem.
[0188] Low-level airside MPC 612 is shown to include a
cooling/heating duty modeler 820. Cooling/heating duty modeler 820
can generate one or more models that define the thermal energy load
{dot over (Q)}.sub.c,i of each building zone as a function of the
zone temperature T.sub.i and the zone temperature setpoint
T.sub.sp,i as shown in the following equation:
{dot over (Q)}.sub.c,i=f(T.sub.i,T.sub.sp,i)
The models generated by cooling/heating duty modeler 820 can be
used as optimization constraints to ensure that the thermal energy
load {dot over (Q)}.sub.c,i is not reduced to a value that would
cause the zone temperature T.sub.i to deviate from an acceptable or
comfortable temperature range.
[0189] In some embodiments, cooling/heating duty modeler 820
relates zone thermal energy load {dot over (Q)}.sub.c,i to the zone
temperature T.sub.i and the zone temperature setpoint T.sub.sp,i
using multiple models. For example, cooling/heating duty modeler
820 can use a model of the zone regulatory controller to determine
the control action performed by the controller as a function of the
zone temperature T.sub.i and the zone temperature setpoint
T.sub.sp,i. An example of such a zone regulatory controller model
is shown in the following equation:
v.sub.air,i=f.sub.1(T.sub.i,T.sub.sp,i)
where v.sub.air,i is the rate of airflow to building zone i (i.e.,
the control action). The function f.sub.1 can be identified from
data. For example, cooling/heating duty modeler 820 can collect
measurements of v.sub.air,i and T.sub.i and identify the
corresponding value of T.sub.sp,i. Cooling/heating duty modeler 820
can perform a system identification process using the collected
values of v.sub.air,i, T.sub.i and T.sub.sp,i as training data to
determine the function f.sub.1 that defines the relationship
between such variables.
[0190] Cooling/heating duty modeler 820 can use an energy balance
model relating the control action v.sub.air,i to the zone thermal
energy load {dot over (Q)}.sub.c,i, as shown in the following
equation:
{dot over (Q)}.sub.c,i=f.sub.2(v.sub.air,i)
where the function f.sub.2 can be identified from training data.
Cooling/heating duty modeler 820 can perform a system
identification process using collected values of v.sub.air,i and
{dot over (Q)}.sub.c,i to determine the function f.sub.2 that
defines the relationship between such variables.
[0191] In some embodiments, a linear relationship exists between
{dot over (Q)}.sub.c,i and v.sub.air,i. Assuming an ideal
proportional-integral (PI) controller and a linear relationship
between {dot over (Q)}.sub.c,i and v.sub.air,i, a simplified linear
controller model can be used to define the thermal energy load {dot
over (Q)}.sub.c,i of each building zone as a function of the zone
temperature T.sub.i and the zone temperature setpoint T.sub.sp,i.
An example of such a model is shown in the following equations:
Q . c , i = Q . ss , i + K c , i [ i + 1 .tau. I , i .intg. 0 t i (
t ' ) dt ' ] ##EQU00026## i = T sp , i - T i ##EQU00026.2##
where {dot over (Q)}.sub.ss,i is the steady-state rate of heating
or cooling rate, K.sub.c,i is the scaled zone PI controller
proportional gain, .tau..sub.I,i is the zone PI controller integral
time, and .epsilon..sub.i is the setpoint error (i.e., the
difference between the zone temperature setpoint T.sub.i,sp and the
zone temperature T.sub.sp). Saturation can be represented by
constraints on {dot over (Q)}.sub.c,i. If a linear model is not
sufficiently accurate to model the PI controller and heat transfer
in the AHU for zone i, a nonlinear heating/cooling duty model can
be used instead.
[0192] Advantageously, modeling the regulatory controllers (e.g.,
zone PI controllers) in the low-level airside optimization problem
allows low-level airside MPC 612 to use the dynamics of the
regulatory controllers when determining the optimal temperature
setpoints. In some embodiments, the responses of the regulatory
controllers can be sluggish. For example, it can take some zones up
to an hour to reach a new temperature setpoint. Using the dynamics
of the regulatory controllers in the low-level MPC problem allows
low-level airside MPC 612 to consider the time between control
action and effect such that optimal temperature setpoints can be
selected in view of time-varying energy prices.
[0193] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a constraints modeler 810. Constraints modeler 810
can generate and impose optimization constraints on the
optimization procedure performed by low-level optimizer 812.
Constraints imposed by constraints modeler 810 can include, for
example, equipment capacity constraints and zone temperature
constraints. In some embodiments, constraints modeler 810 imposes
constraints on the zone temperature T.sub.i. For example,
constraints modeler 810 can constrain the zone temperature T.sub.i
between a minimum temperature T.sub.min and a maximum temperature
T.sub.max as shown in the following equation:
T.sub.min.ltoreq.T.sub.i.ltoreq.T.sub.max
where the values of T.sub.min and T.sub.max can be adjusted based
on the temperature setpoints of the building.
[0194] In some embodiments, constraints modeler 810 automatically
adjusts the values of T.sub.min and T.sub.max based on information
received from the BMS for the building zone. For example,
constraints modeler 810 can use a temperature setpoint schedule
and/or occupancy schedule for the building zone to automatically
adjust the values of T.sub.min and T.sub.max for each time step k.
This allows constraints modeler 810 to use temperature limits based
on the time-varying setpoint temperature range for the zone so that
the zone temperature T.sub.i is maintained within time-appropriate
temperature limits T.sub.min and T.sub.max.
[0195] In some embodiments, constraints modeler 810 imposes a
constraint to ensure that the total airside subsystem load during
any time step k is no greater than the thermal energy load
allocated to the airside subsystem by high-level MPC 608. For
example, constraints modeler 810 can impose the constraint:
Q total , k + 1 - Q total , k .DELTA. .ltoreq. Q . c , b , k
##EQU00027##
where Q.sub.total,k+1 is the total airside subsystem energy
consumed at time step k+1, Q.sub.total,k is the total airside
subsystem energy consumed at time step k, {dot over (Q)}.sub.c,b,k
is the thermal energy load allocated to the airside subsystem b by
high-level MPC 608, and .DELTA. is the duration of each time step.
The left side of the equation represents the airside subsystem
thermal energy load during time step k (i.e., the change in total
thermal energy delivered between consecutive time steps divided by
the time step duration), whereas the right side of the equation
represents the thermal energy load allocated to airside subsystem b
during time step k by high-level MPC 608.
[0196] In some embodiments, constraints modeler 810 imposes an
additional constraint to ensure that the total amount of thermal
energy delivered does not decrease between consecutive time steps,
as shown in the following equation:
Q.sub.total,k+1-Q.sub.total,k.gtoreq.0
Since Q.sub.total,k+1 is a summation of the amount of thermal
energy delivered up to time step k+1, this constraint prevents
low-level optimizer 812 from selecting a negative value for the
thermal energy load {dot over (Q)}.sub.c,i at time step k. In other
words, the rate at which thermal energy is delivered (i.e., {dot
over (Q)}.sub.c,i) can add to the total amount of thermal energy
delivered over the optimization period, but cannot subtract from
the total amount of thermal energy delivered.
[0197] Low-level optimizer 812 can use the zone temperature models,
building load model, cooling/heating duty model, and optimization
constraints to formulate an optimization problem. In some
embodiments, the low-level optimization problem seeks to minimize
the total amount of thermal energy Q.sub.total,N used by the
airside subsystem 632 over the optimization period subject to the
zone temperature constraints and other constraints provided by the
low-level airside models described herein. For example, low-level
optimizer 812 can formulate the low-level optimization problem
as:
min x , u Q total , N ##EQU00028##
subject to the following constraints:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00029## dQ total dt = i = 1 n
z Q . c , i ##EQU00029.2## T m i n .ltoreq. T i .ltoreq. T ma x
##EQU00029.3## Q total , k + 1 - Q total , k .DELTA. .ltoreq. Q . c
, b , k ##EQU00029.4## Q total , k + 1 - Q total , k .gtoreq. 0
##EQU00029.5## Q . c , i = f ( T i , T sp , i ) ##EQU00029.6##
where the function f is defined according to the following
relationship between {dot over (Q)}.sub.c,i, T.sub.i, and
T.sub.i,sp
Q . c , i = Q . ss , i + K c , i [ i + 1 .tau. I , i .intg. 0 t i (
t ' ) dt ' ] ##EQU00030## i = T sp , i - T i ##EQU00030.2##
[0198] In some embodiments, low-level optimizer 812 converts one or
more of the above-identified models and/or constraints to
state-space form for use in the low-level optimization problem. For
example, low-level optimizer 812 can convert the preceding
equations into a discretized state-space model of the form:
x.sub.k+1=Ax.sub.k+Bu.sub.k+B.sub.dd.sub.k
y.sub.k=Cx.sub.k+Du.sub.k
where x.sub.k is a vector of system states at time step k, u.sub.k
is a vector of system inputs at time step k, y.sub.k is a vector of
measurements or system outputs at time step k, d.sub.k is a vector
of disturbances at time step k, and x.sub.k+1 is a vector of
(predicted) system states at time k+1. Table 2 illustrates the
variables that can be included in each of these vectors:
TABLE-US-00002 TABLE 2 Variables in Low-Level Optimization States x
= [T.sub.i .di-elect cons..sub.i Q.sub.total].sup.T n = 2n.sub.z +
1 Inputs u = [T.sub.sp,i].sup.T m = n.sub.z Measurements y =
[T.sub.i Q.sub.total].sup.T p = n.sub.z + 1 Disturbances d =
[T.sub.a {dot over (Q)}.sub.other,i {dot over (Q)}.sub.ss,i].sup.T
n.sub.d = 2n.sub.z + 1
[0199] As shown in Table 2, the system states vector x includes the
zone temperature T.sub.i, the integral of the zone tracking error
.epsilon..sub.i, and the total thermal energy delivered to the
airside subsystem. In some embodiments, the system states vector x
includes a zone temperature T.sub.i and an integrated zone tracking
error .epsilon..sub.i for each of the n.sub.z zones and single
total thermal energy value such that the total number n of
variables in the system states vector x is equal to 2n.sub.z+1. The
inputs vector u can include the temperature setpoint T.sub.sp,i. In
some embodiments, the inputs vector u includes a temperature
setpoint T.sub.sp,i for each of the n.sub.z zones such that the
total number m of variables in the inputs vector u is equal to
n.sub.z.
[0200] In some embodiments, the measurements vector y is the same
as the system states vector x, but without the integrated zone
tracking error .epsilon..sub.i. This indicates that the zone
temperature T.sub.i and the total amount of thermal energy
delivered Q.sub.total are directly measured. The value of the
integrated zone tracking error .epsilon..sub.i can be calculated
from the difference between T.sub.i,sp and T.sub.i. The disturbance
vector d can include the ambient air temperature T.sub.a, the
estimated disturbance {dot over (Q)}.sub.other,i for each zone, and
the steady-state rate of heating/cooling {dot over (Q)}.sub.ss,i
for each zone. In some embodiments, the disturbances vector d
includes an estimated disturbance {dot over (Q)}.sub.other,i and a
steady-state rate of heating/cooling {dot over (Q)}.sub.ss,i for
each of the n.sub.z buildings and a single ambient air temperature
T.sub.a such that the total number n.sub.d of variables in the
disturbances vector d is equal to n.sub.z+1.
[0201] In some embodiments, the system states x can be constructed
or predicted from the measurements y. For example, low-level
airside MPC 612 can use a Kalman filter or other predictive
technique to construct the system states x from the measurements y.
The values of the A, B, C, and D, matrices in the state-space
representation can be identified using a system identification
technique. Examples of state prediction and system identification
techniques which can be used by low-level MPC 612 are described in
detail in U.S. Pat. No. 9,235,657.
[0202] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a model aggregator 818. Model aggregator 818 can
generate aggregate values for various building parameters and/or
variables used in the low-level optimization. For example, model
aggregator 818 can generate an aggregate building temperature
T.sub.b for the low-level airside subsystem by aggregating the
individual zone temperatures T.sub.i of each zone in the building.
In some embodiments, model aggregator 818 generates the aggregate
building temperature T.sub.b using the following equation:
T b = i = 1 n z C i T i i = 1 n z C i ##EQU00031##
where C.sub.i is the thermal capacitance of zone i and T.sub.i is
the temperature of zone i. The numerator of the previous equation
represents the total amount of heat in the building, whereas the
denominator represents the total thermal capacitance of the
building. Both quantities are summed across all building zones i=1
. . . n.sub.z. Model aggregator 818 can divide the total amount of
heat by the total thermal capacitance to estimate an average
building temperature T.sub.b. Model aggregator 818 can calculate an
aggregate building temperature T.sub.b,k for each time step k of
the optimization period.
[0203] Model aggregator 818 can calculate aggregate values for
other building parameters or variables such as the building thermal
capacitance C.sub.b, the building heat transfer coefficient
H.sub.b, and the estimated building disturbance {dot over
(Q)}.sub.other,b. In some embodiments, model aggregator 818
calculates the aggregate values for these variables and parameters
using the following equations:
C b = i = 1 n z C i H b = i = 1 n z H i Q . other , b i = 1 n z Q .
other , i ##EQU00032##
where the building thermal capacitance C.sub.b is the summation of
the zone thermal capacitance C.sub.i values for each building zone,
the building heat transfer coefficient H.sub.b is the summation of
the zone heat transfer coefficients H.sub.i values for each
building zone, and the estimated building disturbance {dot over
(Q)}.sub.other,b is the summation of the estimated building
disturbances {dot over (Q)}.sub.other,i for each building zone.
Model aggregator 818 can calculate aggregate values of C.sub.b,k,
H.sub.b,k, and {dot over (Q)}.sub.other,b.k or each time step k of
the optimization period.
[0204] In some embodiments, model aggregator 818 provides the
aggregate building parameters and variables T.sub.b, C.sub.b,
H.sub.b, and {dot over (Q)}.sub.other,b to high-level MPC 608.
High-level MPC 608 can use such values as inputs to the high-level
models, constraints, and optimization function used in the
high-level optimization. Advantageously, the model aggregation
performed by model aggregator 818 helps to reduce the amount of
information exchanged between each low-level airside MPC 612-616
and high-level MPC 608. For example, each low-level MPC 612-616 can
provide high-level MPC 608 with the aggregate values described
above rather than individual values of such variables and
parameters for each building zone.
[0205] Still referring to FIG. 8, low-level airside MPC 612 is
shown to include a temperature tracker 822. In some embodiments,
temperature tracker 822 performs an alternative optimization which
can supplement or replace the low-level optimization performed by
low-level optimizer 812. Rather than minimizing the total thermal
energy Q.sub.total,N used by the low-level airside subsystem,
temperature tracker 822 can generate zone temperature setpoints
T.sub.sp,i which track the predicted building temperature states
{circumflex over (T)}.sub.b,k generated by high-level MPC 608 as a
result of the high-level optimization. For example, high-level MPC
608 can calculate the building temperature states {circumflex over
(T)}.sub.b,k for each low-level airside subsystem 632-636 predicted
to result from the load profiles generated by high-level MPC 608.
As described above, the predicted temperature states {circumflex
over (T)}.sub.b,k can be calculated using a Kalman filter or any
other type of state prediction technique. High-level MPC 608 can
provide the predicted temperature states {circumflex over
(T)}.sub.b,k to each low-level airside MPC 612-616 for use in the
temperature tracking process.
[0206] Temperature tracker 822 is shown receiving the predicted
temperature states {circumflex over (T)}.sub.b,k via communications
interface 802. Temperature tracker 822 can also receive the
aggregate building temperatures T.sub.b,k generated by model
aggregator 818. Temperature tracker 822 can formulate an objective
function which seeks to minimize the error between the aggregate
building temperatures T.sub.b,k and the predicted temperature
states {circumflex over (T)}.sub.b,k, as shown in the following
equation:
k = 1 N 1 2 T b , k - T ^ b , k 2 + .mu. Q total , N
##EQU00033##
where .mu. is a small penalty factor applied to the total amount of
thermal energy Q.sub.total,N used by the airside subsystem over the
optimization period. The value of .mu. can be adjusted to increase
or decrease the weight assigned to the total amount of thermal
energy Q.sub.total,N relative to the temperature tracking
error.
[0207] Temperature tracker 822 can use the previous equation as the
objective function in an optimization procedure to determine
optimal values for the zone temperature setpoints T.sub.sp,i. The
optimization performed by temperature tracker 822 can be similar to
the optimization performed by low-level optimizer 812, with the
exception that temperature tracker 822 is not constrained by the
load profile provided by high-level MPC 608 and seeks to optimize a
different objective function. For example, temperature tracker 822
can minimize the objective function:
min x , u k = 1 N 1 2 T b , k - T ^ b , k 2 + .mu. Q total , N
##EQU00034##
subject to the following constraints:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00035## dQ total dt = i = 1 n
z Q . c , i ##EQU00035.2## T m i n .ltoreq. T i .ltoreq. T ma x
##EQU00035.3## Q total , k + 1 - Q total , k .gtoreq. 0
##EQU00035.4## Q . c , i = f ( T i , T sp , i ) ##EQU00035.5##
where the function f is defined according to the following
relationship between {dot over (Q)}.sub.c,i, T.sub.i, and
T.sub.i,sp
{dot over (Q)}.sub.c,i={dot over
(Q)}.sub.ss,i+K.sub.c,i[.epsilon..sub.i+1/.tau..sub.I,i.intg..sub.0.sup.t-
.epsilon..sub.i(t')dt']
.epsilon..sub.i=T.sub.sp,i-T.sub.i
[0208] In some embodiments, temperature tracker 822 converts one or
more of the above-identified models and/or constraints to
state-space form for use in the low-level optimization problem. For
example, temperature tracker 822 can convert the preceding
equations into a discretized state-space model of the form:
x.sub.k+1=Ax.sub.k+Bu.sub.k+B.sub.dd.sub.k
y.sub.k=Cx.sub.k+Du.sub.k
where x.sub.k is a vector of system states at time step k, u.sub.k
is a vector of system inputs at time step k, y.sub.k is a vector of
measurements or system outputs at time step k, d.sub.k is a vector
of disturbances at time step k, and x.sub.k+1 is a vector of
(predicted) system states at time k+1. The variables included in
each vector can be the same as shown in Table 2 above.
Simulation Study
[0209] Referring now to FIGS. 9-13, several graphs 900-1350
illustrating the results of a simulation study are shown, according
to some embodiments. The simulation study involved using model
predictive control system 600 to monitor and control a five-zone
building with a large active TES tank. Each of graphs 900-1350
shows a set of values for a particular variable or parameter as a
function of time. Some variables or parameters can be received as
input data to control system 600 (e.g., weather data, utility
rates, etc.), whereas other variables or parameters can be
calculated and/or optimized by control system 600 as previously
described.
[0210] FIG. 9 shows the weather and electricity pricing data for
the duration of an optimization period. Graph 900 illustrates
ambient temperature 902 as a function of time. Ambient temperature
902 can be received as a weather forecast from a weather service
604 and used to determine appropriate values for the variable
T.sub.a in the high-level and low-level optimizations. Graph 950
illustrates electricity pricing 952 as a function of time.
Electricity pricing 954 can be received as an input from utilities
606 and/or predicted by load/rate predictor 602.
[0211] FIG. 10 shows the results of the high-level optimization
performed by high-level MPC 608 when the cost of airside power
consumption is not included in the high-level optimization
function. Graph 1000 illustrates building temperature 1002 (e.g.,
building temperature T.sub.b, building temperature {circumflex over
(T)}.sub.b) as a function of time. Building temperature 1002 can be
measured as an output of the building (e.g., using equipment of
airside subsystem 632) and/or predicted as a result of the
high-level optimization. When airside power consumption is not
included, high-level MPC 608 may choose to keep the building
temperature at the upper bound of the comfort zone (i.e.,
T.sub.max) at all times.
[0212] Graph 1050 illustrates the cooling duty 1052 of airside
subsystem 632 (e.g., {dot over (Q)}.sub.c,b) as a function of time.
Cooling duty 1052 is an example of a load profile which can be
optimized by high-level MPC 608 for each airside subsystem ear and
provided to the low-level airside MPC 612-616 for the airside
subsystem. Cooling duty 1052 can be calculated by high-level MPC
608 as a result of the optimal building temperature 1002. In some
embodiments, high-level MPC 608 does not utilize passive thermal
energy storage when airside power consumption is not included, but
rather only uses active TES (e.g., TES tanks) for shifting the
waterside power load.
[0213] FIG. 11 shows the results of the high-level optimization
performed by high-level MPC 608 when the cost of airside power
consumption is included in the high-level optimization function.
Graph 1100 illustrates building temperature 1102 (e.g., building
temperature T.sub.b, building temperature {circumflex over
(T)}.sub.b) as a function of time. Building temperature 1102 can be
measured as an output of the building (e.g., using equipment of
airside subsystem 632) and/or predicted as a result of the
high-level optimization. When airside power consumption is
included, high-level MPC 608 may choose to precool the building
using passive TES before the peak period when electricity prices
are highest.
[0214] Graph 1150 illustrates the cooling duty 1152 of airside
subsystem 632 (e.g., {dot over (Q)}.sub.c,b) as a function of time.
Cooling duty 1152 is an example of a load profile which can be
optimized by high-level MPC 608 for each airside subsystem ear and
provided to the low-level airside MPC 612-616 for the airside
subsystem. Cooling duty 1152 can be calculated by high-level MPC
608 as a result of the optimal building temperature 1102. In some
embodiments, high-level MPC 608 uses passive thermal energy storage
when airside power consumption is included, which allows high-level
MPC 608 to shift the load from peak to non-peak periods. The flat
portions 1154 of the cooling duty profile can result from
high-level MPC 608 attempting to smooth cooling duty 1152 to reduce
the peak demand charge.
[0215] FIG. 12 shows the results of the low-level airside
optimization performed by low-level airside MPC 612. Graph 1200
illustrates the zone temperatures 1202, 1204, 1206, 1208, and 1210
(e.g., T.sub.i) for several building zones as a function of time.
Zone temperatures 1202-1210 can be measured as an output of the
zones (e.g., using equipment of airside subsystem 632) and/or
predicted as a result of the low-level optimization. When
precooling occurs, the zone temperatures 1202-1210 begin decreasing
at different (e.g., staggered or offset) times to reduce the
overall building load at any given time. This is a result of
low-level airside MPC 612 complying with the cooling duty limit
(e.g., the value of cooling duty 1102 or 1152) received from
high-level MPC 608.
[0216] Graph 1250 illustrates the temperature setpoints 1252, 1254,
1256, 1258, and 1260 (e.g., T.sub.sp,i) for several building zones
as a function of time. Zone temperature setpoints 1252-1260 can be
calculated by low-level airside MPC 612 as a result of the
low-level airside optimization. For example, low-level airside MPC
612 can use the cooling duty model defining a relationship between
{dot over (Q)}.sub.c,i, T.sub.sp,i, and T.sub.i to determine the
appropriate temperature setpoints T.sub.sp,i for each building
zone. In some embodiments, low-level airside MPC 612 causes the
zone temperature setpoints 1252-1260 to begin decreasing at
different (e.g., staggered or offset) times to reduce the overall
building load at any given time and/or to achieve the temperatures
T.sub.i shown in graph 1200.
[0217] FIG. 13 shows the results of the low-level waterside
optimization performed by low-level waterside MPC 618. Graph 1300
illustrates how the demand 1302 from the high-level optimization is
met using a combination of thermal energy production 1304 from
chillers and thermal energy storage 1306 from the TES tank. Thermal
energy storage 1306 can be positive to indicate that the TES tank
is discharging stored thermal energy or negative to indicate that
the TES tank is charging (e.g., filling) using a portion of the
thermal energy production 1304. The unmet load 1308 represents an
amount of the demand profile 1302 not met by either the production
1304 or the storage 1306. Unmet load 1308 can be assigned a penalty
in the waterside optimization function to ensure that unmet loads
do not occur unless the waterside equipment 628 cannot meet the
total demand 1302.
[0218] Graph 1350 illustrates the equipment operating schedules
1352 and 1354 for two chillers used to satisfy the thermal energy
production 1304. The regions in boxes 1356 indicate that the
corresponding chiller is active, whereas the non-boxed regions 1358
indicate that chiller is not active. The loading fraction of each
chiller (e.g., between zero and one) are indicated by load lines
1360 and 1362. With active TES available, the chillers can produce
more chilled water when energy prices are low (e.g., overnight) to
charge the TES tank. The TES tank can then be discharged when
energy prices are high (e.g., during the day) to reduce the overall
cost of electricity consumption.
Flow Diagrams
[0219] Referring now to FIG. 14, a flow diagram 1400 illustrating a
model predictive control technique which can be performed by MPC
system 600 is shown, according to some embodiments. Flow diagram
1400 is shown to include performing a high-level optimization at a
high-level model predictive controller (MPC) to generate an optimal
load profile for each of a plurality of airside subsystems (block
1402). In some embodiments, the high-level optimization is
performed by high-level MPC 608, as described with reference to
FIGS. 6-7. For example, the high-level optimization can include
generating a high-level energy cost function defining the energy
cost as a function of a waterside demand profile {dot over
(Q)}.sub.HVAC. In some embodiments, the waterside demand profile
{dot over (Q)}.sub.HVAC indicates a thermal energy production of
the waterside system at each of a plurality of time steps k in an
optimization period.
[0220] In some embodiments, high-level MPC 608 generates an energy
cost function that accounts for the per-unit costs of energy
consumption in waterside system 30 and the demand charge, but does
not account for energy consumption in airside system 50. An example
of such an energy cost function is shown in the following
equation:
Energy Cost = k = 0 N - 1 c k .eta. tot Q . HVAC , k .DELTA. + c
peak .eta. tot Q . peak ##EQU00036##
[0221] The first term of the energy cost function accounts for the
per-unit costs (e.g., $/kWh) of energy consumed during each time
step k of the optimization period. In some embodiments, c.sub.k is
the cost per unit of energy consumed at time step k to satisfy the
total waterside demand {dot over (Q)}.sub.HVAC,k at time step k,
the parameter .eta..sub.tot is the inverse of the coefficient of
performance of the aggregate airside/waterside system (e.g.,
0.1.ltoreq..eta..sub.tot.ltoreq.0.25), and .DELTA. is the duration
of time step k. Accordingly, the term .eta..sub.tot{dot over
(Q)}.sub.HVAC,k.DELTA. represents the total amount of energy
consumed (e.g., kWh) during time step k to satisfy the waterside
demand {dot over (Q)}.sub.HVAC,k. Multiplying by the cost c.sub.k
per unit energy consumed (e.g., $/kWh) yields the total cost (e.g.,
$) of the energy consumed during time step k. The energy cost
function can include a summation of the energy costs during each
time step k to determine the total cost of energy consumption over
the optimization period.
[0222] The second term of the energy cost function accounts for the
demand charge. In some embodiments, c.sub.p is the demand charge
rate (e.g., $/kW), {dot over (Q)}.sub.peak is the peak waterside
demand during the demand charge period (e.g., the maximum of {dot
over (Q)}.sub.HVAC,k), and .eta..sub.tot is the inverse of the
coefficient of performance of the aggregate airside/waterside
system. Accordingly, the term .eta..sub.tot{dot over (Q)}.sub.peak
represents the peak power consumption to satisfy the peak waterside
demand {dot over (Q)}.sub.peak. Multiplying by the demand charge
rate C.sub.peak yields the total cost (e.g., $) of the demand
charge.
[0223] In some embodiments, high-level MPC 608 generates an energy
cost function that accounts for the per-unit costs of energy
consumption in waterside system 30, the demand charge, and the
energy consumption in airside system 50. An example of such an
energy cost function is shown in the following equation:
Energy Cost = k = 0 N - 1 c k ( .eta. HVAC Q . HVAC , k + .eta. air
b = 1 n b Q . c , b , k ) .DELTA. + c peak W . peak
##EQU00037##
[0224] The first portion of the energy cost function accounts for
the per unit costs (e.g., $/kWh) of energy consumed by waterside
system 30 during each time step k of the optimization period. In
some embodiments, c.sub.k is the cost per unit of energy consumed
at time step k, .DELTA. is the duration of time step k, and
.eta..sub.HVAC is the inverse of the coefficient of performance of
waterside system 30 (e.g., .eta..sub.HVAC.about.0.2). The term
.eta..sub.HVAC{dot over (Q)}.sub.HVAC,k represents the amount of
power consumption (e.g., kW) by waterside system 30 during time
step k to satisfy the waterside demand {dot over (Q)}.sub.HVAC,k.
Multiplying by the cost c.sub.k per unit energy consumed (e.g.,
$/kWh) and the duration .DELTA. (e.g., hours) yields the total cost
(e.g., $) of the energy consumed during time step k by waterside
system 30. The first portion of the energy cost function can be
summed across all time steps k=0 . . . N-1 of the optimization
period to determine the total energy consumed by waterside system
30 over the duration of the optimization period.
[0225] The second portion of the energy cost function accounts for
the per unit costs (e.g., $/kWh) of energy consumed by each airside
subsystem (e.g., each building b) during each time step k of the
optimization period. As described above, .eta..sub.air is the
inverse of the coefficient of performance of the airside subsystems
(e.g., .eta..sub.air.about.0.1) and {dot over (Q)}.sub.c,b,k is the
thermal energy load delivered by the airside subsystem for building
b at time step k. The term .eta..sub.air{dot over (Q)}.sub.c,b,k
represents the power consumption {dot over (W)}.sub.air,b of the
airside equipment for building b. The second portion of the energy
cost function can be summed across all buildings b=1 . . . n.sub.b
and across all time steps k=0 . . . N-1 to determine the total
power consumption of all airside subsystems over the duration of
the optimization period. Multiplying by the cost c.sub.k per unit
energy consumed (e.g., $/kWh) and the duration .DELTA. (e.g.,
hours) yields the total cost (e.g., $) of the energy consumed by
the airside subsystems over the duration of the optimization
period.
[0226] The third portion of the energy cost function accounts for
the demand charge. In some embodiments, c.sub.peak is the demand
charge rate (e.g., $/kW) and {dot over (W)}.sub.peak is the peak
aggregate airside and waterside power consumption during the
applicable demand charge period. Multiplying by the demand charge
rate c.sub.peak yields the total cost (e.g., $) of the demand
charge.
[0227] In some embodiments, performing the high-level optimization
in block 1402 includes using a waterside demand model to define the
waterside demand profile {dot over (Q)}.sub.HVAC as a function of
the plurality of airside subsystem load profiles {dot over
(Q)}.sub.c,b. Each airside subsystem load profile {dot over
(Q)}.sub.c,b can indicate a thermal energy allocation to one of the
airside subsystems at each of the plurality of time steps.
[0228] In some embodiments, the waterside demand model represents
the demand on waterside system 30 as a function of the thermal
energy load {dot over (Q)}.sub.c,b allocated to each airside
subsystem and the amount of thermal energy storage {dot over
(Q)}.sub.storage at each time step of the optimization period. An
example of such a waterside demand model is shown in the following
equation:
Q . HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k
##EQU00038##
where {dot over (Q)}.sub.HVAC,k is the waterside demand at time
step k (e.g., the thermal energy production of waterside system 30
at time step k), {dot over (Q)}.sub.c,b,k is the thermal energy
load allocated to building b at time step k, and {dot over
(Q)}.sub.storage,k is the amount of thermal energy being stored in
the TES tanks during time step k. The previous equation indicates
that the total demand {dot over (Q)}.sub.HVAC,k on the waterside
system 30 is a summation of the thermal energy loads {dot over
(Q)}.sub.c,b,k allocated to each building b and the thermal energy
{dot over (Q)}.sub.storage,k being stored in the TES tanks. This
equation can be used by high-level MPC 608 as an energy balance
constraint to ensure that waterside system 30 generates enough
thermal energy to cover the building loads and the thermal energy
storage at each time step k.
[0229] In some embodiments, the high-level optimization in block
1402 includes generating an airside subsystem temperature model for
each of the plurality of airside subsystems. Each airside subsystem
temperature model can define a relationship between the thermal
energy allocation {dot over (Q)}.sub.c,b to an airside subsystem
and a temperature T.sub.b of the airside subsystem. An example of
such an airside subsystem temperature model is shown in the
following equation:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00039##
where C.sub.b and T.sub.b are the thermal capacitance and
temperature of the airside subsystem designated by index b, T.sub.a
is the ambient air temperature outside airside subsystem b (e.g.,
outside air temperature), H.sub.b is the heat transfer coefficient
between airside subsystem b and the ambient air, {dot over
(Q)}.sub.c,b is the amount of cooling applied to the airside
subsystem by MPC system 600 (i.e., the amount of heat removed from
the airside subsystem), and {dot over (Q)}.sub.other,b is the
external load, radiation, or disturbance experienced by the airside
subsystem b. If heating is provided to the airside subsystem rather
than cooling, the sign on {dot over (Q)}.sub.c,b can be switched
from a negative sign to a positive sign.
[0230] The high-level optimization can use the building disturbance
estimates received from low-level airside controllers 612-616 to
identify appropriate values of the external disturbance {dot over
(Q)}.sub.other,b for each airside subsystem b at each time step of
the optimization period. In some embodiments, the high-level
optimization uses the weather forecasts from weather service 604
and/or the load and rate predictions provided by load/rate
predictor 602 to determine appropriate values for the ambient air
temperature T.sub.a and/or the external disturbance {dot over
(Q)}.sub.other,b for each airside subsystem b at each time step of
the optimization period. Values of C.sub.b and H.sub.b can be
specified as parameters of the airside subsystem b, received from
the low-level airside controller for the airside subsystem b,
received from a user, retrieved from memory, or otherwise provided
to high-level MPC 608. The high-level optimization can include
generating a temperature model for each airside subsystem b, where
b=1 . . . n.sub.b and n.sub.b is the total number of airside
subsystems.
[0231] In some embodiments, performing the high-level optimization
in step 1402 includes optimizing the energy cost and the plurality
of airside subsystem load profiles subject to constraints provided
by the waterside demand model and each airside subsystem
temperature model. The high-level optimization can use the energy
cost model, demand charge model, building temperature model,
thermal energy storage model, waterside demand model, and
optimization constraints to formulate an optimization problem.
[0232] In some embodiments, the high-level optimization seeks to
minimize the total cost of energy consumed by waterside system 30
(i.e., energy cost and demand charge) subject to the building
temperature constraints and other constraints provided by the
high-level models described herein. For example, the high-level
optimization can formulate the high-level optimization problem
as:
min x , u , Q . peak k = 0 N - 1 c k .eta. tot Q . HVAC , k .DELTA.
+ c peak .eta. tot Q . peak ##EQU00040##
subject to the following constraints:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00041## ds dt = - .sigma. s + Q . storage ##EQU00041.2## Q .
HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k ##EQU00041.3##
0 .ltoreq. Q . HVAC , k .ltoreq. Q . peak ##EQU00041.4## Q . peak ,
past .ltoreq. Q . peak .ltoreq. Q . HVAC , max ##EQU00041.5## 0
.ltoreq. s k .ltoreq. s max ##EQU00041.6## T min .ltoreq. T b
.ltoreq. T max ##EQU00041.7##
[0233] In some embodiments, the high-level optimization seeks to
minimize the total cost of energy consumed by the aggregate
airside/waterside system subject to the building temperature
constraints and other constraints provided by the high-level models
described herein. For example, the high-level optimization can
formulate the high-level optimization problem as:
min x , u , W . peak k = 0 N - 1 c k ( .eta. HVAC Q . HVAC , k +
.eta. air b = 1 n b Q . c , b , k ) .DELTA. + c peak W . peak
##EQU00042##
subject to the following constraints:
C b dT b dt = - H b ( T b - T a ) - Q . c , b + Q . other , b
##EQU00043## ds dt = - .sigma. s + Q . storage ##EQU00043.2## Q .
HVAC , k = b = 1 b n Q . c , b , k + Q . storage , k ##EQU00043.3##
0 .ltoreq. ( .eta. HVAC Q . HVAC , k + .eta. air b = 1 n b Q . c ,
b , k ) .ltoreq. W . peak ##EQU00043.4## W . peak , past .ltoreq. W
. peak ##EQU00043.5## 0 .ltoreq. Q . HVAC , k .ltoreq. Q . HVAC ,
max ##EQU00043.6## 0 .ltoreq. s k .ltoreq. s max ##EQU00043.7## T
min .ltoreq. T b .ltoreq. T max ##EQU00043.8##
[0234] Still referring to FIG. 14, flow diagram 1400 is shown to
include providing the optimal airside subsystem load profiles {dot
over (Q)}.sub.c,b from the high-level MPC to a plurality of
low-level MPCs (block 1404). Each load profile {dot over
(Q)}.sub.c,b can be sent from high-level MPC 608 to one of
low-level airside MPCs 612-616, as shown in FIG. 6. In some
embodiments, each low-level airside MPC is configured to monitor
and control a particular airside subsystem. Each low-level airside
MPC can receive the optimal subsystem load profile for the airside
subsystem monitored and controlled by that low-level airside
MPC.
[0235] Flow diagram 1400 is shown to include performing a low-level
optimization at each of the low-level MPCs to generate optimal
temperature setpoints for each of the airside subsystems (block
1406). In some embodiments, the low-level optimization in block
1406 includes generating a zone temperature model for each zone i
of each airside subsystem. The zone temperature model can define a
relationship between the temperature T.sub.i of the zone and the
thermal energy load profile {dot over (Q)}.sub.c,i for the zone. An
example of such a zone temperature model is shown in the following
equation:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00044##
where C.sub.i and T.sub.i are the thermal capacitance and
temperature of the building zone designated by zone index i,
T.sub.a is the ambient air temperature outside zone i (e.g.,
outside air temperature), H.sub.i is the heat transfer coefficient
between zone i and the ambient air, {dot over (Q)}.sub.c,i is the
amount of cooling applied to the building zone i by MPC system 600
(i.e., the amount of heat removed from the zone), and {dot over
(Q)}.sub.other,i is the external load, radiation, or disturbance
experienced by zone i. If heating is provided to the zone rather
than cooling, the sign on {dot over (Q)}.sub.c,i can be switched
from a negative sign to a positive sign.
[0236] The parameter .beta..sub.ij characterizes the degree of
coupling between zone i and another zone j (e.g., a building zone
adjacent to zone i). If zones i and j are not adjacent and/or do
not directly exchange heat with each other, zone temperature
modeler 814 can set the value of .beta..sub.ij equal to zero. The
zone temperature model can include a summation of the heat
transfers between building zone i and each other building zone
j.noteq.i as a function of the zone temperatures T.sub.i and
T.sub.j and the coupling coefficient .beta..sub.ij. In other
embodiments, heat transfer between zones can be accounted for using
the external disturbance estimate {dot over (Q)}.sub.other,i.
[0237] The low-level optimization can include using the zone
disturbance estimates received from zone disturbance predictor 824
to identify appropriate values of the external disturbance {dot
over (Q)}.sub.other,i for each zone i at each time step of the
optimization period. In some embodiments, the low-level
optimization uses the weather forecasts from weather service 604
and/or the load and rate predictions provided by load/rate
predictor 602 to determine appropriate values for the ambient air
temperature T.sub.a and/or the external disturbance {dot over
(Q)}.sub.other,i for each zone i at each time step of the
optimization period. Values of C.sub.i and H.sub.i can be specified
as parameters of the zone i, received from the BMS that manages the
building zone i, received from a user, retrieved from memory 808,
or otherwise provided to zone temperature modeler 814.
[0238] In some embodiments, the low-level optimization in block
1406 includes generating a model of the total amount of thermal
energy delivered to the airside subsystem Q.sub.total (e.g., the
total amount of heating or cooling delivered to the building) as a
function of the individual zone loads {dot over (Q)}.sub.c,i. In
some embodiments, the low-level optimization includes modeling the
total building load using the following equation:
dQ total dt = i = 1 n z Q . c , i ##EQU00045##
where Q.sub.total is the total amount of thermal energy (e.g.,
heating or cooling) delivered to the airside subsystem and {dot
over (Q)}.sub.c,i is the rate at which thermal energy is being
delivered (units of power) of a particular zone i. The building
load model can sum the thermal energy loads {dot over (Q)}.sub.c,i
of each building zone to calculate the total airside subsystem
thermal energy load
dQ total dt , ##EQU00046##
which is the derivative of the total amount of thermal energy
Q.sub.total delivered to the airside subsystem.
[0239] In some embodiments, the low-level optimization includes
generating one or more models that define the thermal energy load
{dot over (Q)}.sub.c,i of each building zone as a function of the
zone temperature T.sub.i and the zone temperature setpoint
T.sub.sp,i as shown in the following equation:
{dot over (Q)}.sub.c,i=f(T.sub.i,T.sub.sp,i)
The models generated by the low-level optimization can be used as
optimization constraints to ensure that the thermal energy load
{dot over (Q)}.sub.c,i is not reduced to a value that would cause
the zone temperature T.sub.i to deviate from an acceptable or
comfortable temperature range.
[0240] In some embodiments, the low-level optimization in block
1406 seeks to minimize the total amount of thermal energy
Q.sub.total,N used by the airside subsystem over the optimization
period subject to the zone temperature constraints and other
constraints provided by the low-level airside models described
herein. For example, the low-level optimization can formulate the
low-level optimization problem as:
min x , u Q total , N ##EQU00047##
subject to the following constraints:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00048## dQ total dt = i = 1 n
z Q . c , i ##EQU00048.2## T min .ltoreq. T i .ltoreq. T max
##EQU00048.3## Q total , k + 1 - Q total , k .DELTA. .ltoreq. Q . c
, b , k ##EQU00048.4## Q total , k + 1 - Q total , k .gtoreq. 0
##EQU00048.5## Q . c , i = f ( T i , T sp , i ) ##EQU00048.6##
where the function f is defined according to the following
relationship between {dot over (Q)}.sub.c,i, T.sub.i, and
T.sub.i,sp
Q . c , i = Q . ss , i + K c , i [ i + 1 .tau. I , i .intg. 0 t i (
t ' ) dt ' ] ##EQU00049## i = T sp , i - T i ##EQU00049.2##
[0241] Still referring to FIG. 14, flow diagram 1400 is shown to
include using the optimal temperature setpoints to operate HVAC
equipment in each of the airside subsystems (block 1408). For
example, each low-level airside MPC 612-616 can operate the airside
HVAC equipment 622-626 of the corresponding airside subsystem
632-636. Airside equipment 622-626 can include some or all of the
equipment of airside system 50, airside system 130, and/or airside
system 300, as described with reference to FIGS. 1A-1B and FIG. 3.
Operating airside equipment 622-626 can include activating or
deactivating the equipment, adjusting an operating setpoint, or
otherwise controlling the airside equipment.
[0242] Referring now to FIG. 15, a flow diagram 1500 illustrating a
model predictive control technique which can be performed by MPC
system 600 is shown, according to some embodiments. Flow diagram
1500 is shown to include performing a high-level optimization at a
high-level model predictive controller (MPC) to generate an optimal
temperature profile for each of a plurality of airside subsystems
(block 1502). In some embodiments, the high-level optimization is
performed by high-level MPC 608, as described with reference to
FIGS. 6-7. The high-level optimization can be the same or similar
to the high-level optimization described with reference to FIG.
14.
[0243] The high-level optimization in block 1502 can generate an
optimal temperature profile {circumflex over (T)}.sub.b for each
airside subsystem. The optimal temperature profile {circumflex over
(T)}.sub.b can include a vector of predicted temperature states
{circumflex over (T)}.sub.b for each low-level airside subsystem
632-636. Each vector of predicted temperature states {circumflex
over (T)}.sub.b can include a predicted building temperature state
{circumflex over (T)}.sub.b,k for each time step k during the
optimization period. Temperature states {circumflex over
(T)}.sub.b,k can be predicted using any of a variety of predictive
techniques including, for example, a Kalman filter as described in
U.S. Pat. No. 9,235,657.
[0244] Flow diagram 1500 is shown to include providing the optimal
airside subsystem temperature profiles {circumflex over (T)}.sub.b
from the high-level MPC to a plurality of low-level MPCs (block
1504). Each subsystem temperature profiles {circumflex over
(T)}.sub.b can be sent from high-level MPC 608 to one of low-level
airside MPCs 612-616. In some embodiments, each low-level airside
MPC is configured to monitor and control a particular airside
subsystem. Each low-level airside MPC can receive the optimal
subsystem temperature profile {circumflex over (T)}.sub.b for the
airside subsystem monitored and controlled by that low-level
airside MPC.
[0245] Flow diagram 1500 is shown to include performing a low-level
optimization at each of the low-level MPCs to generate optimal
temperature setpoints for each of the airside subsystems (block
1506). The low-level optimization in block 1506 can be similar to
the low-level optimization in block 1406. However, the low-level
optimization in block 1506 can formulate the low-level optimization
problem to track the optimal temperatures generated by the
high-level optimization in block 1502 rather than minimizing total
amount of thermal energy used.
[0246] In some embodiments, the low-level optimization in block
1506 can be formulated as:
min x , u k = 1 N T b , k - T ^ b , k 2 + .mu. Q total , N
##EQU00050##
subject to the following constraints:
C i dT i dt = - H i ( T i - T a ) - j .noteq. i .beta. ij ( T i - T
j ) - Q . c , i + Q . other , i ##EQU00051## dQ total dt = i = 1 n
z Q . c , i ##EQU00051.2## T min .ltoreq. T i .ltoreq. T max
##EQU00051.3## Q total , k + 1 - Q total , k .gtoreq. 0
##EQU00051.4## Q . c , i = f ( T i , T sp , i ) ##EQU00051.5##
where the function f is defined according to the following
relationship between {dot over (Q)}.sub.c,i, T.sub.i, and
T.sub.i,sp
Q . c , i = Q . ss , i + K c , i [ i + 1 .tau. I , i .intg. 0 t i (
t ' ) dt ' ] ##EQU00052## i = T sp , i - T i ##EQU00052.2##
[0247] Still referring to FIG. 15, flow diagram 1500 is shown to
include using the optimal temperature setpoints to operate HVAC
equipment in each of the airside subsystems (block 1508). For
example, each low-level airside MPC 612-616 can operate the airside
HVAC equipment 622-626 of the corresponding airside subsystem
632-636. Airside equipment 622-626 can include some or all of the
equipment of airside system 50, airside system 130, and/or airside
system 300, as described with reference to FIGS. 1A-1B and FIG. 3.
Operating airside equipment 622-626 can include activating or
deactivating the equipment, adjusting an operating setpoint, or
otherwise controlling the airside equipment.
Configuration of Exemplary Embodiments
[0248] The construction and arrangement of the systems and methods
as shown in the various exemplary embodiments are illustrative
only. Although only a few embodiments have been described in detail
in this disclosure, many modifications are possible (e.g.,
variations in sizes, dimensions, structures, shapes and proportions
of the various elements, values of parameters, mounting
arrangements, use of materials, colors, orientations, etc.). For
example, the position of elements can be reversed or otherwise
varied and the nature or number of discrete elements or positions
can be altered or varied. Accordingly, all such modifications are
intended to be included within the scope of the present disclosure.
The order or sequence of any process or method steps can be varied
or re-sequenced according to alternative embodiments. Other
substitutions, modifications, changes, and omissions can be made in
the design, operating conditions and arrangement of the exemplary
embodiments without departing from the scope of the present
disclosure.
[0249] The present disclosure contemplates methods, systems and
program products on any machine-readable media for accomplishing
various operations. The embodiments of the present disclosure can
be implemented using existing computer processors, or by a special
purpose computer processor for an appropriate system, incorporated
for this or another purpose, or by a hardwired system. Embodiments
within the scope of the present disclosure include program products
comprising machine-readable media for carrying or having
machine-executable instructions or data structures stored thereon.
Such machine-readable media can be any available media that can be
accessed by a general purpose or special purpose computer or other
machine with a processor. By way of example, such machine-readable
media can comprise RAM, ROM, EPROM, EEPROM, CD-ROM or other optical
disk storage, magnetic disk storage or other magnetic storage
devices, or any other medium which can be used to carry or store
desired program code in the form of machine-executable instructions
or data structures and which can be accessed by a general purpose
or special purpose computer or other machine with a processor.
Combinations of the above are also included within the scope of
machine-readable media. Machine-executable instructions include,
for example, instructions and data which cause a general purpose
computer, special purpose computer, or special purpose processing
machines to perform a certain function or group of functions.
[0250] Although the figures show a specific order of method steps,
the order of the steps may differ from what is depicted. Also two
or more steps can be performed concurrently or with partial
concurrence. Such variation will depend on the software and
hardware systems chosen and on designer choice. All such variations
are within the scope of the disclosure. Likewise, software
implementations could be accomplished with standard programming
techniques with rule based logic and other logic to accomplish the
various connection steps, processing steps, comparison steps and
decision steps.
* * * * *