Compute the thermal characteristics of your house
Moderator: leecollings
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Compute the thermal characteristics of your house
Hello,
By using two temperature sensors (indoor and outdoor) and an energy usage sensor, you can calculate with Domoticz the thermal mass (C), the thermal loss (H) and the cooling / heating rate (k) of your House. Such project is embedded in my home automation project http://www.domoticz.com/forum/viewtopic ... 38&t=17032.
Once you have calculated such constants, you can answer questions like:
- 1 / If I stop heating now, how many hours / days before the indoor temperature reaches the outside temperature?
- 2 / If I start heating now, how many hours / days before the indoor temperature reaches the setpoint?
- 3 / How much energy I will use to heat my house the next hour?
- 4 / Is it true I always make money when I stop heating, even for a short period of time?
- ...
Thermal modeling of buildings is not really easy to understand (at least for me). There is a whitepaper here: http://www.mdpi.com/1996-1073/10/9/1358 . You do not need to read the entire whitepaper, but focus on chapters 3 and 4 which provide the theoretical context.
Using Domoticz, the H calculation is really simple, I use a virtual sensor and divide the total energy used during a day by the number of Degrees.Day of the day. This must be done when heating is on with a constant indoor temperature (i.e. steady phase with an indoor temperature equal to the setpoint).
I found k a little bit more complicated to calculate. I use also virtual sensor and moving average (4 hours with temperature readings every 5 minutes) to smooth out the ratio (indoor temp - indoor temp 5 mn ago) / (indoor temp 5 mn ago - outside temp 5 mn ago) variations. This should be measured when the heating is off and the indoor temperature decreasing (i.e. the outdoor temperature is below the indoor temperature).
Then, C (thermal mass) is also easy to calculate (H / k).
Now, you can answer to the questions (Tout is outdoor temp, Tsp is setpoint, To is your initial indoor temp and P the Power of your Heating Appliance) :
Question 1 : 1/k days,
Question 2 : ∆t in days = ( C * (Tsp - To ) ) / ( P - H * ( (To+Tsp)/2 - Tout ) )
Question 3 : assuming your indoor temp is at the setpoint (steady phase), E(W.h) is H * (Tsp - Tout)
This is more for now an on-going project. My end goal is to build a heating optimizer for my house not only based on schedule (like it is today) but enough smart to use such constants and be more aggressive in the optimization process.
Any comment/help is welcome
By using two temperature sensors (indoor and outdoor) and an energy usage sensor, you can calculate with Domoticz the thermal mass (C), the thermal loss (H) and the cooling / heating rate (k) of your House. Such project is embedded in my home automation project http://www.domoticz.com/forum/viewtopic ... 38&t=17032.
Once you have calculated such constants, you can answer questions like:
- 1 / If I stop heating now, how many hours / days before the indoor temperature reaches the outside temperature?
- 2 / If I start heating now, how many hours / days before the indoor temperature reaches the setpoint?
- 3 / How much energy I will use to heat my house the next hour?
- 4 / Is it true I always make money when I stop heating, even for a short period of time?
- ...
Thermal modeling of buildings is not really easy to understand (at least for me). There is a whitepaper here: http://www.mdpi.com/1996-1073/10/9/1358 . You do not need to read the entire whitepaper, but focus on chapters 3 and 4 which provide the theoretical context.
Using Domoticz, the H calculation is really simple, I use a virtual sensor and divide the total energy used during a day by the number of Degrees.Day of the day. This must be done when heating is on with a constant indoor temperature (i.e. steady phase with an indoor temperature equal to the setpoint).
I found k a little bit more complicated to calculate. I use also virtual sensor and moving average (4 hours with temperature readings every 5 minutes) to smooth out the ratio (indoor temp - indoor temp 5 mn ago) / (indoor temp 5 mn ago - outside temp 5 mn ago) variations. This should be measured when the heating is off and the indoor temperature decreasing (i.e. the outdoor temperature is below the indoor temperature).
Then, C (thermal mass) is also easy to calculate (H / k).
Now, you can answer to the questions (Tout is outdoor temp, Tsp is setpoint, To is your initial indoor temp and P the Power of your Heating Appliance) :
Question 1 : 1/k days,
Question 2 : ∆t in days = ( C * (Tsp - To ) ) / ( P - H * ( (To+Tsp)/2 - Tout ) )
Question 3 : assuming your indoor temp is at the setpoint (steady phase), E(W.h) is H * (Tsp - Tout)
This is more for now an on-going project. My end goal is to build a heating optimizer for my house not only based on schedule (like it is today) but enough smart to use such constants and be more aggressive in the optimization process.
Any comment/help is welcome
- Attachments
-
- k.JPG (93.78 KiB) Viewed 5058 times
-
- k.JPG (93.78 KiB) Viewed 5059 times
Last edited by Antori91 on Saturday 30 June 2018 8:27, edited 11 times in total.
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Theory and calculations:
- Attachments
-
- Indoor_Outdoor_Temp.JPG (58.7 KiB) Viewed 5067 times
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
-
kimhav
- Posts: 154
- Joined: Tuesday 01 October 2013 8:31
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2023.2
- Location: Sweden
- Contact:
Re: Compute the thermal characteristics of your house
Nice project! Going to totally look into this over the next couple of weeks.
-
jake
- Posts: 753
- Joined: Saturday 30 May 2015 22:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: beta
- Contact:
Re: Compute the thermal characteristics of your house
Do you assume that all heat in the house is generated by a measurable energy source? In my case, with a very large window on south-west orientation, we benefit a lot of the sunshine in early spring and fall. Therefore a calculation will quite often not be fair. On other days the temperature in the living room will increase by using the oven to do some baking, while the actual heating of the house takes place by natural gas (and wood stove, to complicate matters
)
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
My house has also large windows on south-west orientation and benefit too from sunshine. So yes, using data from a Solar Radiation sensor in the heating optimizer would be nice. Currently, I have more modest goals : compute/validate my house thermal parameters and understand how my house works from a thermal perspective. The thermal loss, cooling rate and thermal mass are computed all day long, so the averages given by Domoticz are quite accurate (transient phenomenons as sunshine smoothed). For example, you can see on a graph above that the average heat loss of my house is about 6 kWh per day and degree of heating (heating period from December 2017 to April 2018). This is also the value that I obtained by a theoretical calculation based on the materials used to build my house and the thickness of these materials.jake wrote: Sunday 14 October 2018 22:58 Do you assume that all heat in the house is generated by a measurable energy source? In my case, with a very large window on south-west orientation, we benefit a lot of the sunshine in early spring and fall. Therefore a calculation will quite often not be fair. On other days the temperature in the living room will increase by using the oven to do some baking, while the actual heating of the house takes place by natural gas (and wood stove, to complicate matters)
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
-
jake
- Posts: 753
- Joined: Saturday 30 May 2015 22:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: beta
- Contact:
Re: Compute the thermal characteristics of your house
Very interesting! Since last winter I use the Python software virtual thermostat SVT from the forum. There where the physical iSense thermostat gives quite long temperature dips, the SVT gives a nice temperature slope towards setpoint and stays there. It also calculates with a self learning heat loss.
Are you able to share your code?
Are you able to share your code?
- sincze
- Posts: 1302
- Joined: Monday 02 June 2014 22:46
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2024.4
- Location: Netherlands / Breda Area
- Contact:
Re: Compute the thermal characteristics of your house
Interesting indeed. Seems i Have a new project. Tnx.
Pass2php
LAN: RFLink, P1, OTGW, MySensors
USB: RFXCom, ZWave, Sonoff 3
MQTT: ZIgbee2MQTT,
ZWAVE: Zwave-JS-UI
WIFI: Mi-light, Tasmota, Xiaomi Shelly
Solar: Omnik, PVOutput
Video: Kodi, Harmony HUB, Chromecast
Sensors: You name it I got 1.
LAN: RFLink, P1, OTGW, MySensors
USB: RFXCom, ZWave, Sonoff 3
MQTT: ZIgbee2MQTT,
ZWAVE: Zwave-JS-UI
WIFI: Mi-light, Tasmota, Xiaomi Shelly
Solar: Omnik, PVOutput
Video: Kodi, Harmony HUB, Chromecast
Sensors: You name it I got 1.
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
All the code I've written and currently using is shared (cf. github url below). But I'm not sure that it is easily reusable because :jake wrote: Monday 15 October 2018 13:25 Very interesting! Since last winter I use the Python software virtual thermostat SVT from the forum. There where the physical iSense thermostat gives quite long temperature dips, the SVT gives a nice temperature slope towards setpoint and stays there. It also calculates with a self learning heat loss.
Are you able to share your code?
- It is very dedicated to my environment,
- coded using Node.js and not Domoticz dzVents/Lua standard (and even less plugin oriented).
Anyway, if you want to take a look, the module which computes the thermal ratios is https://github.com/Antori91/Home_Automa ... _ACS712.js
The corresponding lines are between 180 and 230.
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
-
Logread
- Posts: 229
- Joined: Sunday 28 August 2016 7:48
- Target OS: Raspberry Pi / ODroid
- Domoticz version:
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
@Antori91,
Are you the same Antor who developped the Smart Virtual Thermostat plugin for Vera quite a few years ago ?
If indeed it is you, the SVT plugin that @jake refers to is a port to domoticz of your original Vera plugin that I wrote when I switched from Vera to domoticz. May be there is an opportunity to further enhance its logic if you made progress since then ? Code is at https://github.com/999LV/SmartVirtualThermostat
Are you the same Antor who developped the Smart Virtual Thermostat plugin for Vera quite a few years ago ?
If indeed it is you, the SVT plugin that @jake refers to is a port to domoticz of your original Vera plugin that I wrote when I switched from Vera to domoticz. May be there is an opportunity to further enhance its logic if you made progress since then ? Code is at https://github.com/999LV/SmartVirtualThermostat
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Hello,Logread wrote: Monday 15 October 2018 19:31 @Antori91,
Are you the same Antor who developped the Smart Virtual Thermostat plugin for Vera quite a few years ago ?
No, I'm not this Antor Guy.
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
-
TSkar
- Posts: 29
- Joined: Wednesday 20 June 2018 16:47
- Target OS: Linux
- Domoticz version: 2.13055
- Location: Stavanger, Norway
- Contact:
Re: Compute the thermal characteristics of your house
Thanks for sharing, its a interesting project!
Any thoughts on how to calculate/estimate how much wind, the buildings thermal inertia, and sunshine affects the building?
Any thoughts on how to calculate/estimate how much wind, the buildings thermal inertia, and sunshine affects the building?
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Hello,
Here is three graphs. The first one is the sunshine over a year for my house location. You can see it's very weak values during heating period except for March/April for my house location. The second and third graphs are solar radiation (Rayonnement Solaire) and heating/cooling ratio (VitesseJour Gain/Perte Temp) for the last 24 hours. So today, solar doesn't seem to have any impact (but it wasn't really a sunny day !).
The drop then peak in Heating/cooling ratio was before sunshine and happened because I've stopped the heating during part of the night...For now, I'm still in the process to verify if you really ALWAYS make money when you stop your heating during a period of the day/night.
Here is three graphs. The first one is the sunshine over a year for my house location. You can see it's very weak values during heating period except for March/April for my house location. The second and third graphs are solar radiation (Rayonnement Solaire) and heating/cooling ratio (VitesseJour Gain/Perte Temp) for the last 24 hours. So today, solar doesn't seem to have any impact (but it wasn't really a sunny day !).
The drop then peak in Heating/cooling ratio was before sunshine and happened because I've stopped the heating during part of the night...For now, I'm still in the process to verify if you really ALWAYS make money when you stop your heating during a period of the day/night.
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Hello,
This is actually my first winter with Domoticz managing my home heating. I'm playing a lot with START/STOP heating schedule to demonstrate myself what you can read on the web : you always make money when you stop heating even for a short period.
Here is an example where I stop heating at 22:00 PM, restart it at 04:30 AM and then new heating steady phase is reached at 08:00 AM. Domoticz computation shows a gain around 30% of energy consumption from 22:00 to 08:00. This is of course interesting even if you can see you burn a lot of energy to "reheat" (the gain was around 70% at 04:30 AM just before restarting the heating).
This is actually my first winter with Domoticz managing my home heating. I'm playing a lot with START/STOP heating schedule to demonstrate myself what you can read on the web : you always make money when you stop heating even for a short period.
Here is an example where I stop heating at 22:00 PM, restart it at 04:30 AM and then new heating steady phase is reached at 08:00 AM. Domoticz computation shows a gain around 30% of energy consumption from 22:00 to 08:00. This is of course interesting even if you can see you burn a lot of energy to "reheat" (the gain was around 70% at 04:30 AM just before restarting the heating).
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Even better today.
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
- Antori91
- Posts: 136
- Joined: Sunday 12 February 2017 17:12
- Target OS: NAS (Synology & others)
- Domoticz version: 4.10717
- Location: France
- Contact:
Re: Compute the thermal characteristics of your house
Values computed by Domoticz about my house :
H=258 W/°C, k=-0.025 1/h and C = 10333 W.h/°C
H=258 W/°C, k=-0.025 1/h and C = 10333 W.h/°C
Domoticz High Availability Cluster: Synology Dz V4.10693 (Main) - Raspberry Dz V4.10717 (Backup) - Scripts Node.js
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation
Alarm server: Raspberry - motionEye - iot_ALARM-SVR Node.js
Sensors/Actuators: ESP8266-Arduino
https://github.com/Antori91/Home_Automation