Booster Heat Pump

Note

A booster heat pump consists of an element and a controller. The element defines it’s physical parameters, while the controller governs the operational logic.

The create_controlled function creates both and connects them.

Create Controlled Function

pandaprosumer.create_controlled_booster_heat_pump(prosumer, hp_type, name=None, index=None, in_service=True, level=0, order=0, period=0, **kwargs)[source]

Creates a BHP element in prosumer[“booster_heat_pump”] and a BHP controller

INPUT:

prosumer - The prosumer within this booster_heat_pump should be created

hp_type (string) - BHP’s type. Possible values are “water-water1”, “water-water2”, “air-water”

OPTIONAL:

name (string, default None) - The name of the BHP instance

index (int, default None) - Force a specified ID if it is available. If None, the index one higher than the highest already existing index is selected.

in_service (boolean, default True) - True for in_service or False for out of service

level (int, default 0) - The level of the controller

order (int, default 0) - The order of the controller

period (int, default 0) - Index of the period, default is 0

OUTPUT:

index (int) - The unique ID of the created BHP

EXAMPLE:

create_controlled_booster_heat_pump(prosumer, ‘water-water1’, ‘example_bhp’)

Controller

Booster Heat Pump Controller logic

Input Static Data

Parameter

Description

Unit

name

Custom name for the Booster heat pump

N/A

hp_type

Type of heat pump

N/A

in_service

Indicates if the Booster heat pump is in service

N/A

Input Time Series

Parameter

Description

Unit

name

Custom name for the Booster heat pump

N/A

hp_type

Type of heat pump

N/A

in_service

Indicates if the Booster heat pump is in service

N/A

Output Time Series

Parameter

Description

Unit

cop_floor

Coefficient of performance for floor heating

N/A

cop_radiator

Coefficient of performance for radiator heating

N/A

p_el_floor

Electrical power for floor heating

kW

p_el_radiator

Electrical power for radiator heating

kW

q_remain

Remaining heat power

kW

q_floor

Heat power delivered to the floor

kW

q_radiator

Heat power delivered to the radiator

kW

Mapping

The Booster Heat Pump model uses Generic Mapping Scheme.

Model

class pandaprosumer.controller.models.BoosterHeatPumpController(prosumer, heat_pump_object, order, level, in_service=True, index=None, **kwargs)[source]

Controller for heat pumps.

The main inputs of the Booster Heat Pump (BHP) are a range of source temperatures \(T_s\) and an operational mode. Creating a Booster Heat Pump element also requires specifying the type of heat pump to be used. Available options are air-to-water (air-water with maximum source temperature of 318 K) and two types of water-to-water heat pumps (water-water1, with a maximum source temperature of 298 K, and water-water2, with a maximum source temperature of 318 K). The water-to-water heat pumps also differ in their maximum available heat and the temperature dependency of the \(COP\).

control_step(prosumer)[source]

Executes the control step for the controller.

Parameters:

prosumer – The prosumer object

first_mode_calc(q_kw, demand_kw, p_el_kw, q_max_kw, t_sink_floor_heating_k, t_sink_radiator_heating_k, t_source_k, cop_coeff)[source]

Calculation of quantities for the mode 1 of the heat pump. Booster heat pump in mode 1 takes the inputted heat and electricity from external source and boosts heat for the floor and radiator heating. Mode 1 also calculates the COP for the floor and radiator heating that is dependent on the temperature of the heat source and heat sink.

Parameters:
  • q_kw – Inputted heat in kW

  • demand_kw – Demand of heat in kW

  • p_el_kw – Electrical power in kW

  • q_max_kw – Maximum heat in kW

  • t_sink_floor_heating_k – Temperature of the floor heating sink in K

  • t_sink_radiator_heating_k – Temperature of the radiator heating sink in K

  • t_source_k – Temperature of the heat source in K

  • cop_coeff – Coefficients for the COP calculation

Returns:

  • q_remain_kw - Remaining heat in kW

  • q_floor_kw - Heat for the floor heating in kW

  • q_radiator_kw - Heat for the radiator heating in kW

  • cop_floor - COP for the floor heating

  • cop_radiator - COP for the radiator heating

p_to_receive_kw(prosumer)[source]

Calculates the power to receive in kW.

Parameters:

prosumer – The prosumer object

Returns:

Power to receive in kW

q_requested_kw(prosumer)[source]

Calculates the heat to deliver in kW.

Parameters:

prosumer – The prosumer object

Returns:

Heat to deliver in kW

q_to_receive_kw(prosumer)[source]

Calculates the heat to receive in kW.

Parameters:

prosumer – The prosumer object

Returns:

Heat to receive in kW

second_mode_calc(demand_kw, p_el_kw, q_max_kw, t_sink_floor_heating_k, t_sink_radiator_heating_k, t_source_k, cop_coeff)[source]

Calculation of quantities for the mode 2 of the heat pump. Booster heat pump in mode 2 takes the inputted electricity from external source and produces heat for the floor and radiator heating. Mode 2 also calculates the COP for the floor and radiator heating that is dependent on the temperature of the heat source and heat sink.

Parameters:
  • demand_kw – Demand of heat in kW

  • p_el_kw – Electrical power in kW

  • q_max_kw – Maximum heat in kW

  • t_sink_floor_heating_k – Temperature of the floor heating sink in K

  • t_sink_radiator_heating_k – Temperature of the radiator heating sink in K

  • t_source_k – Temperature of the heat source in K

  • cop_coeff – Coefficients for the COP calculation

Returns:

  • q_remain_kw - Remaining heat in kW

  • q_floor_kw - Heat for the floor heating in kW

  • q_radiator_kw - Heat for the radiator heating in kW

  • cop_floor - COP for the floor heating

  • cop_radiator - COP for the radiator heating

third_mode_calc(demand_kw, q_max_kw, t_sink_floor_heating_k, t_sink_radiator_heating_k, t_source_k, cop_coeff)[source]

Calculation of quantities for the mode 3 of the heat pump. Mode 3 calculates the inputted electricity from infinite source (grid etc.) based on the heat demand and produces heat for the floor and radiator heating. Mode 3 also calculates the COP for the floor and radiator heating that is dependent on the temperature of the heat source and heat sink.

Parameters:
  • demand_kw – Demand of heat in kW

  • q_max_kw – Maximum heat in kW

  • t_sink_floor_heating_k – Temperature of the floor heating sink in K

  • t_sink_radiator_heating_k – Temperature of the radiator heating sink in K

  • t_source_k – Temperature of the heat source in K

  • cop_coeff – Coefficients for the COP calculation

Returns:

  • q_remain_kw - Remaining heat in kW

  • cop_floor - COP for the floor heating

  • cop_radiator - COP for the radiator heating

  • pel_floor_kw - Electrical power needed for the floor heating in kW

  • pel_radiator_kw - Electrical power needed for the radiator heating in kW

  • q_floor_kw - Heat for the floor heating in kW

  • q_radiator_kw - Heat for the radiator heating in kW

Depending on the selected operational mode, different calculations are performed:

  • Mode 1 is used when the BHP receives electrical energy from a well-defined source, such as a CHP unit, and also receives heat from the same source. It is defined by the following equation:

    \[\dot{Q}_{out} = P_{in} \cdot COP + \dot{Q}_{in},\]

    where \(\dot{Q}_{out}\) is the output heat, \(P_{in}\) is the input electrical power, \(COP\) is the coefficient of performance of the booster heat pump, and \(\dot{Q}_{in}\) is the input heat.

  • Mode 2 is used when the BHP receives only electricity. It is defined by the equation:

    \[\dot{Q}_{out} = P_{in} \cdot COP.\]
  • Mode 3 assumes an infinite electrical source that provides electrical power, and the calculation is based on the following equation:

    \[P_{in} = \frac{\dot{Q}_{dem}}{COP},\]

    where \(\dot{Q}_{dem}\) is the heat demand.

The calculation of \(COP\) is based on the following expression:

\[COP = a_0 + a_1 \Delta T + a_2 \Delta T^2,\]

where \(a_0\), \(a_1\), and \(a_2\) are predefined coefficients, and \(\Delta T\) is the temperature difference between the source and the sink. Sink temperatures are calculated using heating curves.

The final important quantity is the maximum available heat that the booster heat pump can provide. It is calculated using the following equation:

\[\dot{Q}_{max} = c_1 + c_2 \cdot T_s,\]

where \(c_1\) and \(c_2\) are predefined coefficients.