Repository navigation
Ground Source Heat Pump + Underfloor Heating/Cooling as Thermal Battery #978
Replies: 12 comments 4 replies
|
Hi, That looks very nice! Don't you run into infeasible sometimes when min_temp is reached? My experiments with a simple DHW waterpumpboiler Buderus WPT 200.4 AS I run into infeasible when using the thermal_battery and min_temp is approached/reached. I added extra sensors to the boiler as well plus the existing sensor connected to the gasboiler gives me at least a nice temperature profile. |
|
Hi, My DHW optimization now shows this:
I loosely based it on the described section in the EMHASS docs https://emhass.readthedocs.io/en/latest/study_cases/dhw_walkthrough.html, let's see if it will run into infeasible at some point. I want to use thermal_battery as I want to use the heat_topology for heating the water with the heatpomp or the gasboiler. I struggle with this because in heat topology p_deferrable0 and p_deferrable1 are reserved for this heat topology setup. I am looking for a way to combine this with normal deferrables. |
|
Hi, Option A — Recommended: two EMHASS runs One EMHASS run for his thermal topology: run 1: p_deferrable0 = heat pump And a second EMHASS run for regular deferrables: run 2: p_deferrable0 = dishwasher Then he must work with different publish_prefixes, for example: thermal_p_deferrable0 normal_p_deferrable0 This way the names do not clash. Option B — Everything in one run, but strictly reserve numbers Then it must accept: p_deferrable0 = heat pump And thus give all lists exactly the same order: def_total_hours But this is more prone to errors. Option C — Keep gas boiler outside EMHASS If the gas boiler is primarily a backup, I would not optimize it as a deferrable load. Then it lets EMHASS only schedule the heat pump, and Home Assistant decides: if heat pump not enough / too expensive / temperature too low That is more robust. |
|
Hi, My installation is a ground source heat pump with underfloor heating and passive cooling (Thermia Calibra Cool). Unlike a DHW tank, I think my system actually contains two different thermal storage masses: The floor slab (screed + underfloor heating loops), which reacts relatively quickly and stores/release heat or cooling over a few hours. The energy flow is therefore something like: At the moment I use:
This works, but it makes me wonder if I am modelling the system correctly. **My question is: Would heat_topology eventually allow modelling multiple thermal masses (floor + building), or is the intended approach to keep the floor logic outside EMHASS (for example in Home Assistant) and let EMHASS optimize only the building thermal mass?** In the future I will also install sensors for:
Those measurements would allow estimating the thermal state of the floor independently from the indoor air temperature. I'm interested in understanding what the long-term architecture of EMHASS is intended to be for this type of installation. Thanks! |
|
Additional context after further testing: My system is a ground-source heat pump with underfloor heating and passive cooling. Physically it is one shared thermal mass: the same floor loops and building buffer are used for both heating and passive cooling. I tested two modelling approaches:
This second approach currently works better, but it does not really model one shared floor/building thermal state. Heating and cooling are treated as two separate virtual thermal models. Related issues/PRs seem relevant:
My main question is: Can EMHASS currently model one physical underfloor heating/cooling system as one shared thermal state that can both heat and cool? Or is the recommended pattern to model heating and cooling as two virtual deferrable loads and merge them later in Home Assistant? |
|
Hi, a short update after further testing on EMHASS 0.18.3. I am now collecting real measurements from my Thermia ground-source heat pump and the building. One behaviour is becoming very clear. On sunny days the indoor temperature can already be at or above the 23.0°C target and rising because of solar gains, while This raises two questions:
A related question from my earlier posts remains: can heating and passive cooling of the same underfloor system share one thermal state, or are two independent thermal models still the recommended approach? I can provide plots comparing |
Update: automatic thermal learning from Home Assistant measurementsI have continued working on the calibration problem for my Thermia Calibra ground-source heat pump with underfloor heating and passive cooling. Instead of manually guessing thermal parameters, I am now collecting real measurements in Home Assistant first. The learning system separates three operating states:
For each measurement window I record indoor temperature, outdoor temperature, duration, indoor temperature change, and the relevant system state. Interrupted or low-quality windows are rejected before they enter the learning archive. I also changed my PV measurement setup. The PV installation is now split according to the real roof orientations and microinverter groups:
Both real PV powers are recorded separately during every thermal measurement. This is important in my house because solar gain is significant due to large east- and south-facing glazing. The east side is also affected by tree shading, especially in autumn and winter. The current learning chain is: measure -> classify -> quality filter -> learn natural building response and solar influence -> isolate heating/cooling effect -> validate -> derive EMHASS thermal parameters There is also a persistent learning archive and a model monitor. The idea is that individual measurements should not immediately change anything. Measurements are stored, checked, compared over time, and only later used to derive candidate parameters. For clarity: nothing is currently written automatically back to EMHASS or to the heat pump. This is still observation and calibration work only. A few first usable examples from the archive:
These are individual observations, not calibrated parameters yet. They are useful because they show that passive cooling periods and free-response periods can be separated and compared, but I still need more data before deriving stable values for EMHASS. The longer-term goal is to learn the natural building response first, including outdoor temperature and solar influence, and only then isolate the actual effect of active heating or passive cooling. After validation, this should hopefully give better estimates for parameters such as heating rate, cooling response and heat loss behaviour for a slow underfloor heating/cooling system. I would be very interested to hear from other EMHASS users who have tried to calibrate thermal parameters from real Home Assistant data. In particular:
Any experience or comparison from similar slow thermal-mass systems would be very useful. |
|
Small update on the thermal model: excess solar/internal gains being lost from the predicted indoor temperature calculation have been reproduced locally on EMHASS 0.18.5. A proposed fix with regression tests is available in draft PR #1193, related to issue #1139. The relevant local tests pass, but the change has not been applied to my live installation and is awaiting review. |






Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Hi all,
I would like to share my current EMHASS setup and some initial results using the new thermal battery model.
My goal is to use the thermal mass of the screed and building as an energy storage system instead of only relying on electrical battery storage.
System
Thermal Battery Setup
The heat pump is configured as Deferrable Load 0 using the thermal battery model.
Current comfort settings:
The objective is to:
Initial Results
After upgrading to EMHASS 0.17.7 and correcting my configuration, both Day-Ahead and MPC optimization are now working correctly.
EMHASS is successfully publishing:
The resulting behavior is exactly what I was hoping for:
The predicted temperature curve looks realistic and stays within the configured comfort boundaries.
Questions
Current thermal model:
The house has:
The objective is not only to minimize cost, but also to use the building itself as a thermal battery and shift heat pump operation towards periods with high solar production.
My geothermal heat pump is coupled to 160 m² of underfloor heating embedded in a 7 cm concrete screed. Rather than using a dedicated thermal storage tank, I leverage the thermal inertia of the floor slab and the building envelope as a distributed thermal battery. EMHASS optimizes heating schedules using PV forecasts, dynamic electricity prices, and indoor comfort limits. Excess solar production can therefore be converted into stored thermal energy, reducing grid imports while maintaining occupant comfort.
Next Steps and Future Measurements
Based on the observations so far, I will not immediately modify the EMHASS thermal model further. Instead, I want to improve the available measurements and compare model predictions with real thermal storage behaviour.
Sensors being installed
I have already purchased three additional temperature sensors:
The living room was chosen because it is the reference zone for comfort control and receives the highest solar gains.
What will be monitored
Floor thermal storage
The floor temperature sensor will allow me to observe:
Collector performance
With supply and return temperatures I can calculate:
ΔT (supply-return)
This will indicate:
New monitoring indicators
I plan to create Home Assistant sensors for:
Initially these sensors will be used only for monitoring and trend analysis.
No control actions will be based on them yet.
Validation of the EMHASS thermal model
The main objective is to compare:
This should help determine whether the current thermal model accurately represents the behaviour of a geothermal building with:
Possible future integration with EMHASS
If the measurements prove useful, future control logic could take into account:
Heating
Cooling
This would effectively use the measured floor thermal state as an additional indicator of available thermal storage.
Current strategy
For now:
The goal is to move from a purely theoretical thermal model towards a model supported by real measurements of the floor, which is likely the largest thermal battery in this type of geothermal installation.
All reactions