Skip to content

Algorithms

Detailed specification of aedifion.dynamics algorithms.

Standard .dynamics apps

Standard .dynamics apps are based directly on standard component models.

The .dynamics apps can be tested without writing directly to the building by using a dryrun variation. In this case, a virtual data point with the calculated setpoints is generated and stored (similar to a VDP - virtual data point) to investigate the behavior of a .dynamics app. The dryrun variation only contains the observation part of a .dynamics app, so its required pins and attributes can differ from the productive variations.

🦎 Spot-based HVAC Air Pressure & Temperature (SHAPE)

In buildings where electricity is purchased via dynamic tariffs, the electricity costs of air handling units depend on when their fans run and when cooling is drawn from the chiller supplying their cooling coils. Without a price signal, fans and cooling coils run on fixed setpoints regardless of the electricity price, even though a lower duct pressure or a slightly warmer supply air is acceptable during expensive periods.

The SHAPE closes this gap by adjusting the supply air temperature setpoint and the supply and return air duct pressure setpoints of an air handling unit based on day-ahead spot market electricity prices. Prices are analyzed on a daily basis: every 15 minutes, the SHAPE rates the current price between the lowest and the highest price of the day between 5:00 and 18:00.

For the supply air temperature setpoint, the SHAPE uses the setpoint calculated by the HERO as its baseline. The HERO already determines the most efficient supply air temperature that keeps the building within the comfortable range, making full use of the heat recovery and avoiding counterproductive heating and cooling. Building on it means the price-based offset is applied to an already efficient setpoint instead of a fixed one. In cooling mode, the SHAPE raises this setpoint during the expensive periods of the day, increasing the offset continuously with the price up to a maximum of 1 K. The offset never raises the setpoint above the current outside air temperature, so the SHAPE writes the HERO setpoint unchanged while the outside air is not warmer than it. Outside cooling mode, the SHAPE writes the HERO setpoint unchanged as well.

For the supply and return air duct pressure setpoints, the SHAPE keeps the maximum pressure while the current price is below the median price of the day between 5:00 and 18:00. At or above the median price, SHAPE lowers the pressure setpoint once the price reaches the upper part of the price range. It then reduces the setpoint linearly toward the minimum pressure as the price reaches its maximum. The pressure setpoints always stay between the configured minimum and maximum.

SHAPE duct pressure and supply air temperature setpoints over a day with dynamic electricity prices

SHAPE behavior over an example day: the duct pressure setpoints stay at the maximum while the price is low and drop toward the minimum as the price rises. In cooling mode, the supply air temperature setpoint is raised above the HERO baseline during expensive periods, but never above the outside air temperature.

Choosing the duct pressure limits

The maximum pressure should be the duct pressure setpoint the building uses in standard operation, so the SHAPE never runs the fans harder than usual. The minimum pressure should be chosen as low as possible to save energy and costs, while still providing sufficient air flow to maintain comfort.

Best Practices

The SHAPE is particularly well-suited to buildings whose electricity price has a dynamic part, e.g., a dynamic tariff based on spot market prices, and to air handling units with variable-speed fans and cooling coils supplied by an electrically driven chiller, where a lower duct pressure or a slightly warmer supply air can be tolerated during expensive periods. Before implementing the SHAPE, ensure that the supply air temperature setpoint and the supply and return air duct pressure setpoints can be written and that the duct pressure setpoint attributes are configured: the maximum as the standard operating setpoint of the building, the minimum as the lowest setpoint that still maintains comfort. The SHAPE includes the HERO calculation, so the best practices of the HERO apply as well. Do not run a separate HERO on the same air handling unit, since both write the supply air temperature setpoint.

Components

Air handling unit

Default

Variation parameter: None

Pin Required pin_alphanumeric_id Input/Output
Return air temperature Yes EXH_T_AIR Input
Outside air temperature (AHU) Yes* T_AIR_ODA_AHU Input
Air cooler - valve - position Yes* C_CM+C_CRC+VAL_POS Input
Supply air temperature setpoint Yes SUP_T_AIR_SP Output
Supply air duct pressure setpoint Yes SUP_P_DIF_SP Output
Return air duct pressure setpoint Yes EXH_P_DIF_SP Output
Heat recovery system - position No* HRCS+UTIL_LEV Input
Air heater - valve - position No* H_CM+H_CRC+VAL_POS Input
Air re-heater - valve - position No* H_CM.RE+H_CRC+VAL_POS Input
Supply air fan - operating message No* FAN.SUP+MSG_OPR Input

*: If T_AIR_ODA_AHU is not mapped, T_AIR_ODA is used instead. If a position pin is not mapped, the corresponding setpoint pin (C_CM+C_CRC+VAL_POS_SP, HRCS+UTIL_LEV_SP, H_CM+H_CRC+VAL_POS_SP, H_CM.RE+H_CRC+VAL_POS_SP) is used instead. If FAN.SUP+MSG_OPR is not mapped, FAN.EXH+MSG_OPR, MSG_OPR or COM_SWI_MN is used instead (in this order).

Attribute Required Info
Supply air duct pressure setpoint minimum Yes Lowest supply air duct pressure setpoint, applied at the highest prices
Supply air duct pressure setpoint maximum Yes Highest supply air duct pressure setpoint, applied while the price is below the median price between 5:00 and 18:00
Return air duct pressure setpoint minimum Yes Lowest return air duct pressure setpoint, applied at the highest prices
Return air duct pressure setpoint maximum Yes Highest return air duct pressure setpoint, applied while the price is below the median price between 5:00 and 18:00
Supply air temperature setpoint upper limit No Maximum allowed supply air temperature setpoint
Supply air temperature setpoint lower limit No Minimum allowed supply air temperature setpoint
Return air temperature setpoint deviation tolerance No Allowed return air temperature above and below the ideal indoor air temperature (ideal indoor air temperature is 22°C in Winter)
Return air temperature setpoint maximum No Upper limit of the return air temperature setpoint (independent of the ideal indoor air temperature)
Return air temperature setpoint minimum No Lower limit of the return air temperature setpoint (independent of the ideal indoor air temperature)
Supply air fan - temperature increase No Supply air temperature increase due to the waste heat of the fan
Heat recovery system efficiency No Maximum efficiency of the heat recovery system
Heat recovery system active during cooling No True, if the internal control of the ahu uses the heat recovery for cooling
Adapt HERO parameters No True, if the hero is allowed to learn parameters based on the ahu behavior

🦥 Slope Optimization for Thermal Heat Transfer (SLOTH)

In buildings supplied by heat pumps or district heating, the supply temperature setpoint is adjusted to meet the required heating power demand. In the morning, when occupancy begins, the setpoint is typically raised in a single step from night setback to the full daytime value. This step change causes a thermal power peak as the entire building must be reheated. For heat pumps, this results in expensive electrical load peaks; for district heating connections, the contracted thermal capacity can be exceeded — both leading to avoidable costs.

SLOTH closes this gap by ramping up the supply temperature setpoint gradually along a defined slope instead of raising it in a single step. This spreads the thermal power demand over time, reducing peak loads (peak shaving).

SLOTH determines a target supply temperature using a heating curve whenever the outdoor temperature used by the heating curve changes (the outdoor temperature is refreshed every 15 minutes). The heating curve relates outdoor temperature to the required supply temperature, configured via base points. To avoid overheating when outdoor temperatures rise during the day, the heating curve uses the maximum of the current outdoor temperature and the forecasted mean temperature between 8:00 and 18:00. This anticipates daytime warming and reduces unnecessary morning heating. During unoccupied periods, the target supply temperature is automatically reduced by a configurable nighttime setback.

Rather than raising the supply temperature setpoint straight to the target supply temperature defined by the heating curve, SLOTH approaches it step by step: the applied setpoint is constrained to rise by no more than 5 K per 15-minute interval above the currently measured supply temperature. This turns what would otherwise be an abrupt jump into a ramp. Once the measured supply temperature has caught up with the target supply temperature, the setpoint simply follows the target directly. The maximum increase of 5 K is a default value and can be adjusted via the "Supply temperature setpoint maximum increase per 15 min" attribute for each heating circuit.

SLOTH ramp behavior during morning heat-up

SLOTH ramp behavior: instead of raising the supply temperature setpoint to the heating curve target in a single step, SLOTH caps each 15-minute increment 5 K (default value, configurable) above the measured supply temperature, creating a gradual slope that distributes the heating power demand over time and reduces the peak load.

Caution

If an error occurs or the connection to the building is lost for longer than the alive timeout, the edge device writes the configured reset value to the supply temperature setpoint. There is no preset reset value — it must be configured explicitly, and a reset value of 30°C is highly recommended: with a high reset value, an unstable internet connection can cause the supply temperature setpoint to jump to that value in a single step, producing exactly the load peaks after the nighttime setback that SLOTH is designed to avoid.

Best Practices

SLOTH is particularly well-suited to heating circuits supplied by heat pumps or district heating connections, where load peaks at the start of the occupancy period translate directly into costs. Before implementing SLOTH:

  • The supply temperature setpoint is writable
  • The heating curve reference points are tuned to the building's actual heating behavior
  • The occupancy schedule allows sufficient lead time for the gradual ramp-up, so comfort is achieved when occupants arrive
  • A reset value is configured for the supply temperature setpoint — 30°C is highly recommended (see the caution above)

Components

Heating Circuit

Default

Variation parameter: None

Pins Required pin_alphanumeric_id Input/Output
Supply temperature Yes T_IN Input
Supply temperature setpoint Yes T_IN_SP Output
Attributes Required Info
Schedule Yes Regular schedule that is repeated every week, used to determine the occupancy period and apply the nighttime reduction outside of it.
Base points Yes The heating curve base points for the calculation. Must be given as pairs of outside air temperature/supply temperature, e.g. -12,90;20,50
Night time reduction Yes Value (in K) subtracted from the heating curve target outside the occupancy period
Schedule Timezone No Defaults to Europe/Berlin
Supply temperature setpoint maximum increase per 15 min No Defaults to 5 K supply temperature increase per 15-minute interval

🐆 Spot Market Price Based Setpoint Interpolation (SPOT)

In buildings where electricity is purchased via dynamic tariffs, power purchase agreements with dynamics share, or sourced from on-site PV generation, the final electricity bill and the CO2 intensity of the electricity used depend on when electricity is consumed. SPOT applies wherever such time-varying electricity prices or CO2 signals are available and the building has cooling capacity that can be shifted in time.

Electricity prices follow a daily pattern, typically peaking during morning and evening hours and having low prices in between and at night. The price spread between the cheapest and most expensive periods throughout the day can be substantial. Buildings with flexible cooling systems supplied via electricity-driven compression chillers can exploit this by pre-cooling during low-price periods and reducing cooling activity when prices are high. Without price signal integration, cooling operates on a fixed schedule and this cost-saving and CO2 emission reduction potential remains unrealized.

The SPOT algorithm closes this gap by adjusting cooling temperature setpoints based on spot market electricity prices. Prices are analyzed on a daily basis and cooling loads are shifted toward lower-cost periods, enabling systematic electricity cost reduction without compromising comfort or building operation. To achieve this, the SPOT adjusts the cooling setpoints between the minimum and the maximum supply temperature setpoints of the controlled components and selects the setpoint in order to increase cooling in cheap periods. To avoid sustained under- or over-cooling, the algorithm uses the daily median price as a midpoint reference: when the current price is below the median, the setpoint is biased toward the lower (colder) half of the range; when the price is above the median, the setpoint is biased toward the upper half. Further, in order to protect systems where the dew point of the surrounding air is relevant, the minimum setpoint can be limited by the current dew point plus a safety margin.

Best Practices

The SPOT is particularly well-suited to buildings with thermally flexible cooling systems, where pre-cooling and reduced cooling activity can be tolerated without compromising comfort. Before implementing the SPOT, ensure that the supply temperature setpoint of the cooling circuit can be written and that the minimum and maximum supply temperature setpoint attributes are configured to reflect the operational limits of the system.

Components

Cooling Circuit

Default

Variation parameter: None

Pins Required pin_alphanumeric_id Input/Output
Supply temperature setpoint Yes T_IN_SP Output
Attributes Required Info
Supply temperature setpoint minimum No* Setpoint for the minimum supply temperature
Supply temperature setpoint maximum No* Setpoint for the maximum supply temperature
Dew point protection enabled No Enables dew point protection to prevent surface condensation. Values: 0 = disabled (default), 1 = enabled
Dew point safety margin No Safety margin (in K) added to the dew point when protection is enabled. Default: 1.5 K

*: These are the attributes C_T_OUT_SP_MIN and C_T_OUT_SP_MAX of the cooling circuit, not the pins T_IN_SP_MIN and T_IN_SP_MAX of the same name.