1 Introduction

Large-scale integration of intermittent renewable energy resources has revived interest in developing energy storage technologies [14], which traditionally have been used mainly as backup resources. Energy storage technologies include various kinds of batteries, flywheels, compressed air energy storage, pumped-hydro power plants, and thermal energy storage (TES). Among these, TES technology [5] is attracting increasing attention because of its low cost, technological maturity, and relatively easy grid integration process. So far, TES development has been focused on stand-alone thermal storage units that consume electricity and store thermal energy for later use, such as ice, molten salt, and chilled water storage systems.

What has not been considered is a TES system that aggregates distributed electric load with thermal storage capability for electricity storage. Extensive studies have been done for directly and indirectly controlled demand response (DR) programs using thermostatically controlled appliances (TCAs) for energy [613] and ancillary [1418] services. In the past, DR programs were used to control TCA loads such as water heaters or air conditioning units, mainly for peak shaving, load shifting, or emergency load shedding. The control commands were sent to each unit via one-way communication networks and were open-loop control by nature. There was no resource optimization to minimize the impact on user comfort and equipment lifetime. As a result, the efficiency, availability, observability, and controllability of such DR programs are poor, greatly limiting the use of the TES capability of the TCA units. Recent deployments of the smart grid two-way communication network have enabled close-loop direct load control applications that require sending control signals to and receiving status from end devices. Recent studies [1618] have demonstrated that, if properly controlled, aggregated distributed electric-thermal loads function as well as a bulk energy storage device such as battery or flywheel energy storage, broadening their applications to services that previously could only be provided by generators. However, these studies focused on DR with little consideration of treating the operation of the distributed TCA resources as an energy storage system. As a result, the controller design and operation do not take a uniform approach, limiting the TCA’s potential for providing multiple services and requiring different controller designs for providing different services.

This paper presents the concept of controlling distributed electric loads with TES as a passive electric energy storage system (PEESS). Fig. 1 shows an example of the PEESS configuration.

Fig. 1
figure 1

Configuration of a thermal PEESS

Loads with thermal storage capability include different types of TCAs such as hot water heaters, air conditioners (a/c), and refrigerators. Each TCA is a thermal cell that converts electricity into thermal energy controlled by an operating temperature range, similar to the high and low water levels in a reservoir. A centralized controller controls the timing (when and for how long) of each thermal cell’s electrical energy consumption. Note that unlike battery energy storage with bi-directional energy conversion devices, the thermal energy stored in the PEESS cannot be converted back to electricity. Instead, the PEESS varies its electricity consumption against a baseline to release power to or absorb power from the grid. Thus, when the aggregated consumption is higher than the baseline, the PESSS is charging; when the consumption is lower than the baseline, the PEESS is discharging. As a result, the overall performance of the PEESS is equivalent to that of a battery energy storage device.

The PEESS technology has several advantages [2] over active energy storage technologies:

  1. 1)

    No additional storage media are needed and there is no need for energy conversion devices to convert thermal energy back to electric energy, resulting in fewer conversion losses and fewer spatial, disposal, and maintenance requirements.

  2. 2)

    The PEESS is flexible; it can be resized or regrouped by committing or de-committing TCA units in different control groups and located in different locations.

  3. 3)

    The PEESS offers robust performance (individual cell failures will not significantly impact the overall performance).

The disadvantages of the PEESS are as follows:

  1. 1)

    The PEESS is not an active power source and cannot supply electricity when the power grid is down.

  2. 2)

    The PEESS requires a two-way communication network.

  3. 3)

    The PEESS requires retrofits or new-designs of the TCA loads so that the loads can be controlled and monitored remotely.

  4. 4)

    PEESS implementation requires consumer permission and acceptance.

Potential applications of the PEESS range from energy intensive services (such as load shifting, peaking shaving, and wind/solar leveling) to power intensive applications (such as emergency load shedding, regulation, load following, and frequency regulation). Major control and design considerations for implementing PEESS are consumer comfort and safety and sufficient economic incentives.

This paper is organized as follows. The modeling of the PEESS and thermal cells is presented in Sect. 2, and the control algorithm of the PEESS is illustrated in Sect. 3. The modeling results are discussed in Sect. 4. The conclusions and future work are summarized in Sect. 5.

2 Modeling of the PEESS

This section discusses the modeling methodologies and parameters of thermal cells and the PEESS.

2.1 PEESS and thermal cell models

A PEESS consists of many distributed electric loads with thermal storage energy capability. Each load is viewed as a thermal cell that converts electricity into thermal energy by maintaining its operating temperature within a temperature band. For example, a space heating (SP) load controlled by a fixed thermostat will turn on when the house temperature drops below 21 °C and turn off when the house temperature rises above 23 °C, as shown in Fig. 2. If the SP load is remotely controlled by the PEESS controller so the SP unit can be turned on/off at any time within the temperature band (21–23 °C), the SP unit is converted into a thermal cell that can store electricity as thermal energy whenever needed. Note that the customer can set a local override temperature band, e.g., (20–24 °C), so that the SP unit will be forced to turn on when the house temperature drops below 20 °C and turn off when the house temperature rises above 24 °C.

Fig. 2
figure 2

Space heating unit as a thermal cell

At time t, the power of a PEESS, \( P_{\text{PEESS}} \), is calculated as

$$ P_{\text{PEESS}} (t) = \sum\limits_{i = 1}^{N} {u_{i} (t)P_{i} } $$
(1)

During a time period, τ, the energy storage of the ith thermal cell, \( E_{i} \), and the PEESS, \( E_{\text{PEESS}}^{{}} \), are calculated as

$$ \begin{aligned} \left\{\begin{array}{l}E_{i} = P_{i} \tau \left( {\frac{{\tau_{i}^{\text{on}} }}{{\tau_{i}^{\text{on}} + \tau_{i}^{\text{off}} }}} \right) \\ E_{\text{PEESS}} (t) = \sum\limits_{i = 1}^{N} {E_{i} = \sum\limits_{i = 1}^{N} {P_{i} \tau \left( {\frac{{\tau_{i}^{\text{on}} }}{{\tau_{i}^{\text{on}} + \tau_{i}^{\text{off}} }}} \right)} } \end{array}\right. \end{aligned} $$
(2)

The operating temperature and on/off status of each thermal cell can be predicted by

$$ \left\{\begin{array}{l} {{\text{if}}\quad u_{i} (t) = 1\quad T_{i} (t) = T_{i} (t - 1) + \Updelta T_{i}^{\text{on}} (t)\Updelta t} \hfill \\ {{\text{if}}\quad u_{i} (t) = 0\quad T_{i} (t) = T_{i} (t - 1) + \Updelta T_{i}^{\text{off}} (t)\Updelta t} \hfill \\ {u_{i} (t + 1) = u_{i} (t)} \hfill \\ {{\text{if}}\quad T_{i} (t) = T_{i}^{\text{on}} \quad {\text{and}}\quad u_{i} (t) = 0\quad u_{i} (t + 1) = 1} \hfill \\ {{\text{if}}\quad T_{i} (t) = T_{i}^{\text{off}} \quad {\text{and }}\quad u_{i} (t) = 1\quad u_{i} (t + 1) = 0} \hfill \\ {T_{i}^{\text{Deadband}} = \left| {T_{i}^{\text{on}} - T_{i}^{\text{off}} } \right|} \hfill \\ {T_{i}^{\text{Lowlim }} \le T_{i} (t) \le T_{i}^{\text{Highlim }} } \hfill \\ {\Updelta T_{i}^{\text{on}} = \frac{{T_{i}^{\text{Deadband}} }}{{\tau_{i}^{\text{on}} }}\quad \Updelta T_{i}^{\text{off}} = \frac{{T_{i}^{\text{Deadband}} }}{{\tau_{i}^{\text{off}} }}} \hfill \\ \end{array} \right.$$
(3)

where \( N \) is the total number of cells; \( P_{i} \) is the rated power of the ith cell (kW); \( u_{i} (t) \) is the status of the ith cell at time \( t \) (1-on, 0-off); \( T_{i} (t) \) is the operating temperature of the ith cell (°C); \( \Updelta t \) is the time step (s); \( \Updelta T_{i}^{\text{on}} (t) \) is the temperature change rate when the cell is on (°C/s); \( \Updelta T_{i}^{\text{off}} (t) \) is the temperature change rate when the cell is off (°C/s); \( T_{i}^{\text{on}} \) is the turn on temperature threshold of the ith cell (°C); \( T_{i}^{\text{off}} \) is the turn off temperature threshold of the ith cell (°C); \( \tau_{i}^{\text{on}} \) is the estimated turn on duration of the ith cell in τ (s); \( \tau_{i}^{\text{off}} \) is the estimated turn off duration of the ith cell in τ (s); \( T_{i}^{\text{Highlim }} \) is the user defined maximum temperature of the ith cell (°C); \( T_{i}^{\text{Lowlim }} \) is the user defined minimum temperature of the ith cell (°C) and \( T_{i}^{\text{Deadband}} \) is the temperature band between \( T_{i}^{\text{on}} \) and \( T_{i}^{\text{off}} \) (°C).

2.2 Charging and discharging a PEESS

The charging and discharging processes of different thermal cells are shown in Fig. 3.

Fig. 3
figure 3

Illustration of thermal cell settings

The PEESS is not an active energy source because it has no electricity conversion device to convert thermal energy back to electricity. The charging or discharging of the PEESS relies on setting a baseline energy consumption, \( P_{\text{PEESS}}^{\text{Baseline}} \). Then, when the grid needs to deposit electricity in the PEESS, thermal cells are turned “on” to increase power consumption above \( P_{\text{PEESS}}^{\text{Baseline}} \). In this state, the PEESS is charging. When the grid needs to withdraw power from the PEESS, thermal cells are turned “off” to reduce the power consumption below \( P_{\text{PEESS}}^{\text{Baseline}} \). In this state, the PESSS is discharging. Thus, the performance of a PEESS is equivalent to that of a battery energy storage device.

Theoretically, \( P_{\text{PEESS}}^{\text{Baseline}} \) can be any value between the maximum (\( P_{\text{PEESS}}^{\text{Baseline}} \)) and the minimum (\( P_{\text{PEESS}}^{\text{Min}} \)) power consumption. The charging and discharging power, \( P_{\text{PEESS}}^{\text{MaxCharge}} \) and \( P_{\text{PEESS}}^{\text{MaxDischarge}} \), are calculated as

$$ \left\{\begin{array}{l} {P_{\text{PEESS}}^{\text{Max}} = \sum\limits_{i = 1}^{{N_{\text{max{-}on}} }} {P_{i} } \quad P_{\text{PEESS}}^{\text{Min}} = \sum\limits_{i = 1}^{{N_{\text{must{-}on}} }} {P_{i}^{{}} } } \hfill \\ {P_{\text{PEESS}}^{\text{MaxCharge}} = P_{\text{PEESS}}^{\text{Max}} - P_{\text{PEESS}}^{\text{Baseline}} } \hfill \\ {P_{\text{PEESS}}^{\text{MaxDischarge}} = P_{\text{PEESS}}^{\text{Baseline}} - P_{\text{PEESS}}^{\text{Min}} } \hfill \\ \end{array}\right. $$
(4)

where \( N_{\text{max{-}on}} \) is the maximum number of cells that can be turned on and \( N_{\text{must{-}on}} \) is the number of cells that must be on to meet their thermal storage constraints. Ideally, \( N_{\text{max{-}on}} = N \) and \( N_{\text{must{-}on}} = 0 \).

As shown in Fig. 3, the state of charge (SOC) of the PEESS is related to the TES capability left in each cell and is calculated as

$$ SOC = \frac{{\sum\nolimits_{i = 1}^{N} {\left[ {P_{i} \tau \left( {\frac{{\tau_{i}^{\text{on}} }}{{\tau_{i}^{\text{on}} + \tau_{i}^{\text{off}} }}} \right)\left( {\left| {T_{i} - T_{i}^{\text{on}} } \right|/T_{i}^{\text{Deadband}} } \right)} \right]} }}{{\sum\nolimits_{i = 1}^{N} {\left[ {P_{i} \tau \left( {\frac{{\tau_{i}^{\text{on}} }}{{\tau_{i}^{\text{on}} + \tau_{i}^{\text{off}} }}} \right)} \right]} }} $$
(5)

As an illustration, assume that a PEESS consists of two thermal cells, both rated at 4.5 kW. One cell is a water heater at 57.5 °C with an operating temperature between 50 and 60 °C. Another cell is an a/c in its cooling mode that has its room temperature measured at 21 °C and a thermostat setting between 20 and 22 °C. The “on” time of the water heater is 15 min and the “off” time is 60 min, and the a/c “on” time is 15 min and “off” time is 30 min. For this PEESS, \( E_{\text{PEESS}} \) is 2.4 kWh (normalized to an hour) and the SOC is 59.4%. If the \( P_{\text{PEESS}}^{\text{Baseline}} \) is set at 0 kW (\( u_{1} = u_{2} = 0 \)), the \( P_{\text{PEESS}}^{\text{Charge}} \) is 9 kW and \( P_{\text{PEESS}}^{\text{discharge}} \) is 0 kW. If the \( P_{\text{PEESS}}^{\text{Baseline}} \) is set at 4.5 kW (\( u_{1} = 1, \, u_{2} = 0 \) or \( u_{1} = 0,\quad u_{2} = 1 \)), the \( P_{\text{PEESS}}^{\text{Charge}} \) is 4.5 kW and \( P_{\text{PEESS}}^{\text{discharge}} \) is 4.5 kW. If the \( P_{\text{PEESS}}^{\text{Baseline}} \) is set at 9 kW (\( u_{1} = u_{2} = 1 \)), \( P_{\text{PEESS}}^{\text{Charge}} \) is 0 kW and \( P_{\text{PEESS}}^{\text{discharge}} \) is 9 kW.

2.3 Metrics to evaluate the performance of the thermal cells

Because each thermal cell is an appliance, its operation is limited by both technical constraints and user comfort constraints.

2.3.1 Number of switching cycles

Normally, an appliance operates up to a certain number of switching cycles in its lifetime. Therefore, the number of switching cycles, \( S_{i} \), can be a measure of the thermal cell lifetime, similar to the way battery lifetime can be measured by the number of battery cycles. To avoid overuse of any individual cell, a cell can be relieved from duty if its daily maximum number of switch cycles limit, \( S_{i}^{\text{Highlim}} \), is reached.

2.3.2 Temperature override

The consumer can set maximum and minimum operating temperatures, \( T_{i}^{\text{Highlim}} \) and \( T_{i}^{\text{Lowlim}} \), locally as hard operation constraints. Once the operating temperature violates \( T_{i}^{\text{Highlim}} \) or \( T_{i}^{\text{Lowlim}} \), the appliance is forced to turn on/off regardless of the remote control commands to meet the consumer comfort and safety constraints. Note that to function as a thermal cell, [\( T_{i}^{\text{Lowlim}} \)\( T_{i}^{\text{Highlim}} \)] must enclose [\( T_{i}^{\text{on}} \)\( T_{i}^{\text{off}} \)] (sort constraints set at the central PEESS controller), as shown in Fig. 4.

Fig. 4
figure 4

Local and central controller temperature settings

2.3.3 Response delay

The response delay, \( T_{i}^{{\text{ResDelay}}} \), can be defined as the time between when the central controller sends a command and when a thermal cell executes the command. Response delay is determined by communication delays, \( T_{i}^{\text{ComDelay}} \), and control delays, \(T_{i}^{\text{ContrlDelay}}.\)

$$T_{i}^{{\text{ResDelay}}} = T_{i}^{\text{ComDelay}} + T_{i}^{\text{ContrlDelay}} $$
(6)

2.3.4 Denial of services

The thermal cell may not respond to a command for a number of reasons: 1) customer override, 2) communication errors or delays, or 3) violation of \( T_{i}^{\text{Highlim }} \) or \( T_{i}^{\text{Lowlim }} \).

2.3.5 Minimum off/on time

Some appliances require a minimum on time, \( \tau_{i}^{\hbox{minon}} \), or minimum off time, \( \tau_{i}^{\hbox{minoff}} \), to avoid damage to their parts. For example, some single-phase compressor motors in a/c units need to stay off for a few minutes before they can be turned on again.

2.4 Metrics to evaluate the performance of the PEESS

The PEESS is a system that consists of hundreds of thousands of distributed thermal cells. Therefore, the performance of the PEESS relies on the communication and control network settings.

2.4.1 Communication network requirements

To function similar to a bulk energy storage device, each thermal cell in a PEESS must be able to communicate its operating status to the central controller and receive commands from the central controller to provide the required power output while meeting its own operational constraints. Therefore, a two-way communication network between the central controller and each thermal cell is required. Depending on control mechanisms and communication network constraints, one can pick from the following options:

  1. 1)

    Broadcast control commands to each thermal cell every time step

  2. 2)

    Send switching commands only to the requested cells

  3. 3)

    Receive a status report from each thermal cell at every time step

  4. 4)

    Receive a status report from each thermal cell at every k time steps

A forecaster located at the central controller of the PEESS can calculate the temperature change rates \( \Updelta \tau_{i}^{\text{on}} (t) \) and \( \Updelta \tau_{i}^{\text{off}} (t) \) for each cell to predict its operating status based on (3). Thus, the need for communication will be significantly reduced without diminishing overall system performance, as demonstrated in [18].

2.4.2 Control time step

The control time step, \( \Updelta t \), is determined by the communication network bandwidth, the kind of service the PEESS provides, and the allowable temperature overshoots in thermal cells. Because of the distributed nature of a PEESS, the minimum \( \Updelta t \) is normally determined by the speed at which the communication network can pass the signal from the central controller to each thermal cell. A control time step of 1-min is normally selected for energy and load balancing services. Assuming that each thermal cell in a PEESS has a \( \hbox{min} (\tau_{i}^{\text{on}} ,\tau_{i}^{\text{off}} ) \) longer than 20-min, the temperature overshoot in a thermal cell caused by the control time step setting is approximately 5% \( T_{i}^{\text{Deadband}} .\)

2.4.3 Control target

If there is a control signal, \( P_{\text{Sig}} \), that a PEESS must follow, the target output of the PEESS, \( P_{\text{PEESS}}^{\text{Target}} \), is calculated as

$$ P_{\text{PEESS}}^{\text{Target}} = P_{\text{PEESS}}^{\text{Baseline}} + P_{\text{Sig}} $$
(7)

2.4.4 Ramp rate

The PEESS ramp rate is mainly determined by response delays, \( T_{i}^{{\text{ResDelay}}} \). By design, \( T_{i}^{{\text{ResDelay}}} \) should be less than \( \Updelta t \) such that each thermal cell of the PEESS will execute the on/off command sent by the central controller within \( \Updelta t \). Thus, the PEESS can ramp up or down to any capacity in \( \Updelta t \) as long as the distribution networks connecting all these thermal cells are uncongested. For example, if the PEESS control is on a 1-min basis, the control delays should be within 1 min for the PEESS to ramp up and down to any control target in 1 min.

2.4.5 Fade time

If all the thermal cells reach their thermal storage limits or deplete their thermal storage, the PEESS can no longer follow the charging or discharging command. The period during which the PEESS can no longer follow the command, \( T_{\text{Fade}} \), is called fade time, and can be used to evaluate the control performance of the PEESS.

2.4.6 Control errors

When some cells fail to respond to the control command because of communication errors, consumer override, or operational constraints, the \( P_{\text{PEESS}} \) will not produce a desired output. The control error is calculated as

$$ \Updelta P = P_{\text{PEESS}} - P_{\text{PEESS}}^{\text{Target}} $$
(8)

3 Controller design of the PEESS

The control logic of a PEESS is shown in Fig. 5. At each time step, the centralized controller receives a control signal, \( P_{\text{Sig}} \) and superimposes it on \( P_{\text{PEESS}}^{\text{Baseline}} \) to get a target power output, \( P_{\text{PEESS}}^{\text{Target}} \), at time t. The thermal cell forecaster will forecast the cell operating temperature, \( T_{i}^{\text{Forecast}} \), and determine the cell on/off status, \( u_{i}^{\text{Forecast}} \). Then, the forecaster will calculate the forecast power output, \( P_{\text{PEESS}}^{\text{Forecast}} \), at t. The difference between \( P_{\text{PEESS}}^{\text{Target}} \) and \( P_{\text{PEESS}}^{\text{Forecast}} \) will determine how many additional cells will need to be turned on or off based on a priority list to make \( P_{\text{PEESS}} = P_{\text{PEESS}}^{\text{Target}} \) and adjust \( u_{i}^{\text{Forecast}} \) to \( u_{i} \). The forecaster will adjust its forecasts based on real measurements received from each thermal cell every k time steps.

Fig. 5
figure 5

Flow chart of the central controller control logic

3.1 Prioritization of thermal cells

An important method for optimizing the use of thermal cells is to rank them based on the switching index, I, which determines how close the cell is to being fully charged or depleted.

$$ \left\{\begin{array}{l} I_{i}^{\text{off}} = \left| {T_{i} - T_{i}^{\text{off}} } \right|/T_{i}^{\text{Deadband}} \\ I_{i}^{\text{on}} = \left| {T_{i} - T_{i}^{\text{on}} } \right|/T_{i}^{\text{Deadband}} \hfill \\ \end{array} \right. $$
(9)

The smaller the value, the higher the priority the cell is to be turned on/off.

In the example given in Sect. 2.2, the water heater and a/c switching indexes are calculated as

$$ \left\{\begin{array}{ll} {I_{{{\text{WH}}}}^{{{\text{off}}}} = \frac{{\left| {135 - 140} \right|}}{{140 - 120}} = 0.25} \hfill \\ {I_{{{\text{WH}}}}^{{{\text{on}}}} = \frac{{\left| {135 - 120} \right|}}{{140 - 120}} = 0.75} \hfill \\ {I_{{{\text{AC}}}}^{{{\text{off}}}} = \frac{{\left| {70 - 69} \right|}}{{71 - 69}} = 0.5} \hfill \\ {I_{{{\text{AC}}}}^{{{\text{on}}}} = \frac{{\left| {70 - 71} \right|}}{{71 - 69}} = 0.5} \hfill \\ \end{array} \right. $$
(10)

Therefore, if both devices are “on,” the water heater will have the priority to be turned “off”; if both devices are “off,” the a/c will have the priority to be turned “on.”

3.2 Thermal cell forecaster

There are two general methods to forecast the thermal cell temperature changes. One is to use thermal equivalent models introduced in [18] and another is to use measurement data to calculate the temperature change rate for each cell using (3). Simulation results in the following sections demonstrate that the second method is sufficient as long as the forecaster can receive field measurements in an interval that is short enough to capture the cycling behavior (preferably, shorter than \( 0.5\,\hbox{min} \, (\tau_{i}^{\text{on}} ,\tau_{i}^{\text{off}} ) \)).

3.3 Local controller

The local thermal cell can be controlled by a circuit as shown in Fig. 6.

Fig. 6
figure 6

Flow chart of the local controller control logic

If a consumer wants to make sure comfort will not be compromised, the consumer can make the central control settings [\( T_{i}^{\text{on}} \)\( T_{i}^{\text{off}} \)] or [\( T_{i}^{\text{off}} \)\( T_{i}^{\text{on}} \)], depending on whether the appliance is in heating or cooling mode, within [\( T_{i}^{\text{Lowlim }} \)\( T_{i}^{\text{Highlim }} \)]. An override button can also disable the remote control of the thermal cell. When communication with the central controller fails, a cell will retain its previous switching status until the local setting, [\( T_{i}^{\text{Lowlim }} \)\( T_{i}^{\text{Highlim }} \)], is violated.

4 Modeling results

In the rest of this paper, 1,000 SP units (rated at 6 kW) in their heating modes are modeled to illustrate the thermal PEESS control mechanism. Set \( T^{ + } \) to be 23 °C and \( T^{ - } \) to be 19 °C, then, Tdeadband is 4 °C. Consumer thermostat thresholds, [\( T_{i}^{\text{Lowlim }} \)\( T_{i}^{\text{Highlim }} \)], are set at (17–25 °C). Mean values of thermal capacitances, C, thermal resistances, R, and heat gains, Q, of the SP model used in this simulation are set to 3,599.3 J/°C, 0.1208 °C/W, and 400 W, respectively. The R, C, and Q parameters are randomized for different HVAC units to create load diversity. For more details about the SP thermal model, please refer to [18]. Ideally, this PEESS system has a maximum power output of 6 MW and minimum power output of 0 MW. The TES capability of each thermal cell (each household) varies with respect to outdoor temperatures and the thermal characteristics of the house. Assuming an average \( \tau_{i}^{\text{on}} \) of 30 min and \( \tau_{i}^{\text{off}} \) of 45 min, the storage capacity of the PEESS is approximately \( 6 \times 1{,}000 \times 30/75 = 2{,}400\,{\text{kWh}}\). The central controller broadcasts a control command every 1 min (\( \Updelta t = 1\,{\text{min}})\) and receives a status update every 15 min (k = 15). Assume no communication delays and a random 4% communication outage rate. The minimum turn off time is 5 min for each SP unit.

4.1 Baseline

An aggregated baseline output of the PEESS, \( P_{\text{PEESS}}^{\text{Baseline}} \), must be provided too so that deviations from the baseline output can be defined as charging or discharging power from the PEESS.

One way to create a baseline load is to model all participating SP units in an uncontrolled mode using the next-day outdoor temperature forecast. In an uncontrolled mode, each SP unit cycles based on \( T_{i}^{\text{on}} \) and \( T_{i}^{\text{off}} \) without being re-sequenced by the PEESS controller. The obtained aggregated HVAC power output is averaged to an hourly \( P_{\text{PEESS}}^{\text{Baseline}} \), as shown in Fig. 7. Note that the baseline load profile varies with respect to outdoor temperatures, \( T_{i}^{\text{Deadband}} \), and the number of SP units. In general, more SP units and wider \( T_{i}^{\text{Deadband}} \) provide greater storage capacity and charging and discharging power range. Please refer to [18] for more details on setting up a baseline load.

Fig. 7
figure 7

Create a baseline load

The advantage of having a baseline load is that it allows the service provided by the PEESS to be measurable. Thus, one can bid \( P_{\text{PEESS}}^{\text{Baseline}} \) into the energy market and provide load balancing services by varying its output against \( P_{\text{PEESS}}^{\text{Baseline}} \). One can set up different baseline loads to achieve preferred control objectives. For example, if more regulation up services are expected from 1 a.m. to 5 a.m., \( P_{\text{PEESS}}^{\text{Baseline}} \) can be set at a lower value, e.g., 2,500 kW; if more regulation down services are expected, \( P_{\text{PEESS}}^{\text{Baseline}} \) can be set at a higher value, e.g., 3,000 kW.

4.2 Charging and discharging

A PEESS is charged and discharged by varying the aggregated output against the baseline output. As shown in Fig. 8, the PEESS charges for an hour (\( P_{\text{PEESS}} = 1\,{\text{MW}}),\) then discharges for an hour (\( P_{\text{PEESS}} \) = −1 MW). The temperatures of the thermal cells will rise when the PEESS is charging and drop when discharging. Because the central controller forecasts each cell’s operating temperature and then determines the on/off status of each cell using (3), the actual operating temperatures of the cells may exceed the upper or lower bounds of the operating temperature range, as shown in Fig. 9.

Fig. 8
figure 8

Charging and discharging of a PEESS

Fig. 9
figure 9

Temperature profiles of thermal cells in a PEESS during charging and discharging

Real measurements are used to update the forecasted temperatures every 15 min in this case so that the forecast errors will remain tolerable. As shown in Fig. 10, at 825 min, the forecasted temperature deviates from the actual temperature by 0.4 °C and is corrected by measurements. Similarly, updates also happen at 810, 840, 855, 870, etc.

Fig. 10
figure 10

Using measured cell temperatures to update the forecasted cell temperatures

One can update the forecaster more often if the control performance deteriorates. As introduced in Sect. 2.3, a pair of local temperature thresholds, [\( T_{i}^{\text{Lowlim }} \)\( T_{i}^{\text{Highlim }} \)], which enclose [\( T_{i}^{\text{on}} \)\( T_{i}^{\text{off}} \)] (as shown in Fig. 4), are set to guarantee that the user comfort and safety constraints are maintained. Figure 11a shows the SOC of the PEESS during the charging and discharging and Fig. 11b shows that the number of times each cell switches will increase when the charging power increases. This shows how the charging and discharging services will influence the appliance lifetime.

Fig. 11
figure 11

SOC of the PEESS and number of times per day the 1,000 SP units switch

4.3 Load balancing

In this case, the control signal, \( P_{\text{Sig}} \), is the load following signal, which is scaled to 1-min signals and normalized to ±1 MW. Please refer to [1] for the definition of load following signals. The target control signal, \( P_{\text{PEESS}}^{\text{Target}} \) (as shown in Fig. 12), is calculated using (7).

Fig. 12
figure 12

Baseline loads and control signal

The following observations are made from simulation results:

  1. 1)

    The PEESS load profile, \( P_{\text{PEESS}} \) , follows the target output, \( P_{\text{PEESS}}^{\text{Target}} \), very well, as shown in subplot 1, Fig. 13.

    Fig. 13
    figure 13

    Performance of the PEESS for load balancing service

  2. 2)

    As shown in subplot 2, Fig. 13, indoor temperatures of each cell are kept within the high and low limits set by customers.

  3. 3)

    Each SP unit is switched on/off approximately 14–20 times per day in the “Baseline” case. To provide the ±1 MW load following service, each SP unit will be switched 10 more times on average, as shown in subplot 3, Fig. 13.

A more detailed analysis of using TCAs to provide load balancing services can be found in [18].

4.4 Load balancing

In this case, the goal is to balance a feeder load profile. If a load serving entity (LSE) can control its hourly consumption precisely, the LSE can bid a baseline load, \( P_{f}^{\text{Baseline}} \), into the day-ahead market. This will eliminate its demand bid uncertainties in load scheduling and allow the LSE to hedge the price volatilities in the real-time market. In addition, any consumption that the LSE can manage to reduce or increase against the baseline consumption can be used to provide energy or ancillary services. If a feeder is connected to distributed renewable energy resources (RES), the load-balancing algorithm can also be used to smooth the RES outputs.

Three cases are modeled. In the first case, the feeder hourly load profile, \( P_{f}^{\text{Baseline}} \), is calculated as the actual hourly mean of the feeder load, \( P_{f} \), to simulate a perfect-forecast case. In the other two cases, the \( P_{f}^{\text{Baseline}} \) is calculated by adding or subtracting 5% random forecast errors from the perfect-forecast \( P_{f}^{\text{Baseline}} \) to represent the over-forecast and the under-forecast cases, as shown in Fig. 14. The control signal for the PEESS loads is calculated as

Fig. 14
figure 14

Hourly baseline loads

$$ P_{\text{Sig}} = P_{f} - P_{f}^{\text{Baseline}} $$
(11)

The modeling results are shown in Figs. 15 to 17. The following observations are made from the simulation results:

Fig. 15
figure 15

Feeder load profiles for the three cases

  1. 1)

    As shown in subplot 1, Fig. 15, in the perfect-forecast case, the PEESS can compensate for the feeder load fluctuations well (with one overshoot at 13.8) without being turned on and off very frequently (as shown in Fig. 17). The room temperatures are maintained within the desired range (subplot 1, Fig. 16).

    Fig. 16
    figure 16

    Impact of different forecasting accuracies of the feeder baseline load on room temperature profiles

  2. 2)

    As shown in subplots 2 and 3, Fig. 15, in the over-forecast or under-forecast cases, the PEESS has multiple overshoots or undershoots from \( P_{f}^{\text{Baseline}} \) in hour 13. This is because the maximum aggregated power of the PEESS is only 6 MW. Assuming that the “on” duration is 30 min and “off” duration is 45 min, the PEESS acts similarly to a 2.4 MWh battery energy storage device. The PEESS thermal storage capacity is depleted once house temperatures reach their upper or lower bounds (subplots 2 and 3, Fig. 16). The number of switches of the under- and over-forecast cases is also too high compared with the perfect-forecast case, as shown in Fig. 17.

    Fig. 17
    figure 17

    Impact of providing load-balancing on the thermal cell daily cycles and SOCs of the PEESS

  3. 3)

    As shown in Fig. 17, the SOCs of the PEESS can go beyond 0 and 1. This is because the \( T_{i}^{\text{off}} \) and \( T_{i}^{\text{on}} \) are only a pair of soft constraints in the PEESS controller; the hard constraints are \( T_{i}^{\text{Lowlim }} \) and \( T_{i}^{\text{Highlim }} \) and are set by the consumers. The results show that, when providing load balancing services, it is essential to use a shorter forecasting window (a couple of hours) so that the \( P_{f}^{\text{Baseline}} \) will be adjusted to maintain the SOC of the PEESS within a desired range. Note that this consideration is universal for any energy storage system that has a storage limitation.

5 Conclusions

This paper presents the concept of controlling distributed electric loads with thermal energy storage capability as a PEESS. The results demonstrate the feasibility of using advanced control and communication technology to implement a PEESS that schedules and dispatches distributed electro-thermal loads as well as active energy storage devices such as batteries. The number of loads needed for a PEESS can be 5%–10% of the total loads, but the influence on flexible grid operation can be significant. By deploying PEESSs in different locations, the LSEs and grid operators not only eliminate the uncertainties introduced by DR programs, but also can control load variations to compensate for the variation introduced by intermittent energy resources such as wind or solar. Our future work will focus on sizing different types of TCA loads for PEESS applications and integrating active energy storage such as battery systems to provide robust, reliable, high-quality, and low-cost energy and ancillary services.