modelGeothermalHeatPump
Example of a geothermal heat pump system
Extends from Modelica.Icons.Example (Icon for runnable examples), AixLib.Fluid.Examples.GeothermalHeatPump.BaseClasses.GeothermalHeatPumpControlledBase (Example of a geothermal heat pump system with controllers).
Information
Simple stand-alone model of a combined heat and cold supply system. The geothermal heat pump can either transport heat
- from the cold to the heat storage
- from the cold storage to the geothermal field (heat storage disconnected)
- from the geothermal field to the heat storage
In the flow line of the heating circuit a boiler is connected as a peak load device. Consumers are modeled as sinks are sources with a constant temperature.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow_nominal_layer (from GeothermalHeatPumpBase) | 0.5 | Nominal mass flow rate in layers of storages |
| Modelica.Units.SI.MassFlowRate | m_flow_nominal_HE (from GeothermalHeatPumpBase) | 0.5 | Nominal mass flow rate of heat exchanger layers of storages |
| Modelica.Units.SI.Temperature | T_start_cold (from GeothermalHeatPumpBase) | 300 | Initial temperature of cold components |
| Modelica.Units.SI.Temperature | T_start_hot (from GeothermalHeatPumpBase) | 300 | Initial temperature of warm components |
| Dynamics | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from GeothermalHeatPumpBase) | Modelica.Fluid.Types.Dynamics.FixedInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| HeatPumps.ModularReversible.BaseClasses.RefrigerantMachineControlBus | heatPumpControlBus (from GeothermalHeatPumpBase) | ||
| Modelica.Blocks.Interfaces.RealOutput | coldStorageTemperature (from GeothermalHeatPumpControlledBase) | Temperature in the cold storage | |
| Modelica.Blocks.Interfaces.RealOutput | heatStorageTemperature (from GeothermalHeatPumpControlledBase) | Temperature in the heat storage | |
| Modelica.Blocks.Interfaces.RealOutput | chemicalEnergyFlowRate (from GeothermalHeatPumpControlledBase) | Flow of primary (chemical) energy into boiler | |
| Modelica.Blocks.Interfaces.RealOutput | heatPumpPower (from GeothermalHeatPumpControlledBase) | Electrical power of the heat pump |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| PeakLoadDeviceModel | peaLoaDev (from GeothermalHeatPumpBase) | ||
| Storage.StorageDetailed | coldStorage (from GeothermalHeatPumpBase) | Storage tank for buffering cold demand | |
| FixedResistances.PressureDrop | resistanceColdStorage (from GeothermalHeatPumpBase) | Resistance in evaporator circuit | |
| AixLib.Fluid.Sources.Boundary_pT | geothFieldSource (from GeothermalHeatPumpBase) | Source representing geothermal field | |
| FixedResistances.PressureDrop | resistanceGeothermalSource (from GeothermalHeatPumpBase) | Resistance in geothermal field circuit | |
| FixedResistances.PressureDrop | resistanceColdConsumerFlow (from GeothermalHeatPumpBase) | Resistance in cold consumer flow line | |
| Actuators.Valves.TwoWayQuickOpening | valveHeatSink (from GeothermalHeatPumpBase) | Valve connecting geothermal field to the condenser of the heat pump | |
| Actuators.Valves.TwoWayQuickOpening | valveHeatSource (from GeothermalHeatPumpBase) | Valve connecting geothermal field to the evaporator of the heat pump | |
| AixLib.Fluid.Storage.StorageDetailed | heatStorage (from GeothermalHeatPumpBase) | Storage tank for buffering heat demand | |
| AixLib.Fluid.FixedResistances.PressureDrop | resistanceHeatStorage (from GeothermalHeatPumpBase) | Resistance in condenser circuit | |
| AixLib.Fluid.Sources.Boundary_pT | geothField_sink1 (from GeothermalHeatPumpBase) | One of two sinks representing geothermal field | |
| AixLib.Fluid.FixedResistances.PressureDrop | resistanceHeatConsumerFlow (from GeothermalHeatPumpBase) | Resistance in heat consumer flow line | |
| AixLib.Fluid.Actuators.Valves.TwoWayQuickOpening | valveColdStorage (from GeothermalHeatPumpBase) | Valve connecting cold storage to the evaporator of the heat pump | |
| AixLib.Fluid.Actuators.Valves.TwoWayQuickOpening | valveHeatStorage (from GeothermalHeatPumpBase) | Valve connecting heat storage to the condenser of the heat pump | |
| AixLib.Fluid.Movers.FlowControlled_dp | pumpColdConsumer (from GeothermalHeatPumpBase) | Pump moving fluid from storage tank to cold consumers | |
| AixLib.Fluid.Movers.FlowControlled_dp | pumpHeatConsumer (from GeothermalHeatPumpBase) | Pump moving fluid from storage tank to heat consumers | |
| AixLib.Fluid.FixedResistances.PressureDrop | resistanceColdConsumerReturn (from GeothermalHeatPumpBase) | Resistance in cold consumer return line | |
| AixLib.Fluid.FixedResistances.PressureDrop | resistanceHeatConsumerReturn (from GeothermalHeatPumpBase) | Resistance in heat consumer return line | |
| AixLib.Fluid.Movers.FlowControlled_dp | pumpCondenser (from GeothermalHeatPumpBase) | Pump moving fluid from storage tank to condenser of heat pump | |
| AixLib.Fluid.Movers.FlowControlled_dp | pumpEvaporator (from GeothermalHeatPumpBase) | Pump moving fluid from storage tank to evaporator of heat pump | |
| AixLib.Fluid.Movers.FlowControlled_dp | pumpGeothermalSource (from GeothermalHeatPumpBase) | Pump moving fluid from geothermal source into system | |
| AixLib.Fluid.HeatPumps.ModularReversible.Modular | heatPump (from GeothermalHeatPumpBase) | ||
| Modelica.Blocks.Sources.RealExpression | getTStorageUpper (from GeothermalHeatPumpControlledBase) | Gets the temperature of upper heat storage layer | |
| Modelica.Blocks.Sources.RealExpression | getTStorageLower (from GeothermalHeatPumpControlledBase) | Gets the temperature of lower cold storage layer | |
| Modelica.Fluid.System | system (from GeothermalHeatPumpControlledBase) | ||
| Sources.Boundary_pT | coldConsumerFlow | ||
| Sources.Boundary_pT | heatConsumerFlow | Sink representing heat consumer | |
| Sources.Boundary_pT | heatConsumerReturn | Source representing heat consumer | |
| Sources.Boundary_pT | coldConsumerReturn | Source representing cold consumer | |
| Modelica.Blocks.Sources.Constant | pressureDifference | Pressure difference used for all pumps | |
| Controls.HeatPump.TwoPointControlledHP | twoPointControlledHP | Controls the temperature in the heat storage by switching the heat pump on or off | |
| Modelica.Blocks.Sources.Constant | TStorageSet | Set point of upper heat storage temperature | |
| Control.geothermalFieldController | geothermalFieldControllerCold | Controls the heat exchange with the geothermal field and the heat storage | |
| Control.geothermalFieldController | geothermalFieldControllerHeat | Controls the heat exchange with the geothermal field and the heat storage | |
| Modelica.Blocks.Sources.BooleanConstant | mode | Dummy signal for unit mode, true: heat pump, false: chiller |
Revisions
-
May 5, 2021 by Fabian Wüllhorst:
Use new heat pump model and add simulate and plot script. (see issue #1093) - May 19, 2017, by Marc Baranski:
First implementation.