BenPru / luxtronik

Luxtronik integration for Home Assistant
MIT License
80 stars 30 forks source link

Optimize power usage #21

Open BenPru opened 2 years ago

BenPru commented 2 years ago

Yesterday I activated my heatpump for the heating season. And now I read out the power usage of my heatpump with ha glow. I found out today that it has a big impact between heating "off" and "automatic" without running. The standby power usage in heating mode "off" is about ~13 Watt. In automatic mode the standby power usage is about 83 Watt and every 20 minutes it is ~150 Watt! Every 20 minutes the heatpump runs in mode "pump forerun" without doing something productive! In the past I thought this is a display bug in luxtronik but the usage show a real impact. My luxtronik version is V2.86.0 (Novelan LD7).

Has anyone something like this?

rhammen commented 2 years ago

I have an Alpha-Innotec Brine/Water heatpump. I do not have a separate electricity meter, so I cannot really judge the heating=off power usage. But I do not see periodic spikes in the energy usage that I could relate to the heatpump status. Electricity usage really only goes up when the heatpump is running.

scaronni commented 2 years ago

I'm installing a Shelly 3EM soon on all the 3 phase connections of the heat pump to do some monitoring, it seems to me my usage is crazy high but I have no way to do proper measurements.

I have a constant load of ~600/700 watts for home server/computer usage, so I can't really tell if the heating pump consumes too much when idle until i've installed those.

Crashman1983 commented 2 years ago

High standby power consumption is caused by Heatpump electronics, oil heating and circulation pump. Alpha Innotec do consume a hefty amount of energy during standby - you cannot change that.

Kars-de-Jong commented 2 years ago

It is caused by the circulation pump (HUP). It needs to run in order to measure the actual return temperature of the heating circuit. If this is not done the measured return temperature is not reliable (especially not right after a hot water run).

You can influence it by enabling "Pump optimization", it will then (depending on the difference between actual and wanted return temperature) either run for 5 minutes every 30 minutes, or continuously when the difference between wanted and actual return temperature is small.

Energy usage also depends on whether your circulation pump can be controlled by a PWM signal.

On my Alpha Innotec the standby usage with heating set to off is about 11 W, when set to automatic it is 25 W when the HUP runs at 50%. I did limit the maximum speed of the HUP to 50% because I found the Delta T for supply and return temperature too small otherwise.

To get an energy usage of 150 W both BOSUP and HUP have to run. I have no idea why your system runs the BOSUP too, mine doesn't do that.

I have firmware version V3.85.9.

BenPru commented 2 years ago

@Kars-de-Jong Thanks for your explanation.

enabling "Pump optimization"

Is this a luxtronik parameter?

I did limit the maximum speed of the HUP to 50%

Is this also a luxtronik parameter?

Kars-de-Jong commented 2 years ago

@BenPru Yes.

"Pump optimization" is parameter ID_Einst_Popt_akt of type Bool, default is 1, "Pump optimization time" is parameter ID_Einst_Popt_Nachlauf_akt of type Minutes (which doesn't exist yet), default is 180, and maximum circulation pump speed for heating is ID_Einst_P155_PumpHeat_Max of type Percent2, default is 100. That last parameter can only be set when access level is installer.

Crashman1983 commented 2 years ago

Important: when pump optimization is 1 (true), modern inverter based pumps use variable circulation speeds. IMHO ID_Einst_P155_PumpHeat_Max of type Percent2, default is 100 should not be changed then.

Am 18.11.2022 um 10:42 schrieb Kars de Jong @.***>:

@BenPruhttps://github.com/BenPru Yes.

"Pump optimization" is parameter ID_Einst_Popt_akt of type Bool, default is 1, "Pump optimisation time" is parameter ID_Einst_Popt_Nachlauf_akt of type Minutes (which doesn't exist yet), default is 180, and maximum circulation pump speed for heating is ID_Einst_P155_PumpHeat_Max of type Percent2, default is 100.

— Reply to this email directly, view it on GitHubhttps://github.com/BenPru/luxtronik/issues/21#issuecomment-1319763905, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABAAC4AWXG6ANF5ZHZEOOXTWI5FOZANCNFSM6AAAAAASBAH77Q. You are receiving this because you commented.Message ID: @.***>

Kars-de-Jong commented 2 years ago

@Crashman1983 True, but I noticed the heat pump has a rather "conservative" ΔT between supply and return flow of the heating system of 4 K. My house is designed for a ΔT of 10 K, which can't be reached with the pump running at 100%. So I limited the maximum speed. I would much rather be able to change the ΔT of 4 K the heat pump uses, but that doesn't seem to be a user configurable parameter.

Crashman1983 commented 2 years ago

Are you using underfloor heating? Maybe you could trie to set the circulation pump settings to Radiator. I can imagine, that this has influence to ΔT (only a guess!) because I would suspect radiators to have a higher difference between supply and return flow.

For underfloor heating 10K difference would be really much!

Kars-de-Jong commented 2 years ago

Yes, underfloor heating, design temperature 30 °C, ΔT 10 K, very low flows (highest flow through a loop of 115 m is 39 l/h). If you then have a circulation pump that runs at 2000 l/h that seems a bit silly.

BenPru commented 2 years ago

Thanks for your informations. ID_Einst_Popt_akt is 1, ID_Einst_Popt_Nachlauf_akt is 180 but ID_Einst_P155_PumpHeat_Max is 0. Any ideas why ID_Einst_P155_PumpHeat_Max is zero?

Can you see when the HUP is running? Exists a flag like the solar pump?

Kars-de-Jong commented 2 years ago

What is your ID_Einst_P155_PumpHeatCtrl set to? Mine is set to 1, which displays as "Automatic" on the heat pump display.

Yes, there is a boolean for the HUP: ID_WEB_HUPout. You can also see the current control percentage, it's in Circulation_Pump.

BenPru commented 2 years ago

ID_Einst_P155_PumpHeatCtrl is 0. Should I activate it? All ID_Einst_P155_* params are 0.

ID_WEB_HUPout seems to work --> True/False changing. Circulation_Pump is always None.

Kars-de-Jong commented 2 years ago

If it is None it means this value is not present in your firmware version. It probably also depends on your heatpump type.

Kars-de-Jong commented 2 years ago

Some of these parameters can only be set when logged in as installer by the way.

pluskal commented 2 years ago

@Kars-de-Jong, @BenPru this is extremely interesting conversation for me. Could you recommend some resources to read?

I have very poor heating project that is missing parameters like ΔT. My guess is that current ΔT is around 3 - 5 K.

My goal is to further optimize my Alpha Innotec unit. It seems to me that is behaving very strangely.

The compressor is running on 20%. Is that healthy for the compressor to run for like 70-80% of the day? Or, during colder time periods to run non-stop on 20%? The high peeks around 12pm are hot water heating.

Screenshot 2022-11-20 at 11 15 33 AM

Each time the heating starts, pump is running for around 50% and than it slightly slows to 20%.

Screenshot 2022-11-20 at 11 18 08 AM

Additional very strange thing I have noticed is the speed of water circulation in the floor heating during the time that the heat pump is idle. It hits 1500-2000 l/h almost constantly.

Screenshot 2022-11-20 at 11 22 00 AM

It would be very interesting for me to see if the pump behaves similar for you as well, or if it is different to hear your thoughts on the topic.

MSW2-6S by Alpha Innotec Firmware: V3.87.0

rhammen commented 2 years ago

I'd say it looks pretty good! My (porbably oversimplified, but still) view:

My Alpha Innotec MSW4-16 behaves similarly, with yours still show more 'constant' behavior:

Screenshot 2022-11-20 at 13-59-02 History – Home Assistant

BenPru commented 2 years ago

@rhammen Yes I agree with you. Before I controlled my luxtronik with home assistant my heatpump starts about 25 times per (cold) day and ran only 15 minutes every time. My passive house (is this right in english? - Passivhaus in german) needs only 12-15 kWh/m²/year and the underfloor heating says after a short time "enough". The 15 minutes of heating was 5 minutes pump forerun, 5 minutes heating and 5 minutes pump forerun. Very inefficient. With ha I detect the heatpump start and I increase the target correction to ensure a mininum of runtime. Today I have normally only 2-4 impulses per day.

In the last days (~8 C° outside) I have a COP between 4,5-5. Today (~0 C° outside) only 3,2. Novelan LAD7 from 2014.

pluskal commented 2 years ago

Thanks @rhammen and @BenPru for the explanation.

I am still missing power measurement on the heat pump input so I am unable to compute COP. My current approximation is around 7.5 which seems to be a bit off to me.

My current settings are following:

Screenshot 2022-11-20 at 6 10 23 PM

I am not sure about hysteresis, but unless I lowered it down to 1.5K the temperature inside was oscillating a lot. My goal is to have as constant temperature inside as possible.

My current temperatures are following:

Screenshot 2022-11-20 at 6 15 46 PM

Is there a setting that allows to decrease flow temperature? To my best understanding, changing the heat curve sets the return target, so I tried to lower and flatten it which based on my observation prolonged the heating time and decreased frequency.

Screenshot 2022-11-20 at 6 19 52 PM

What is the minimal frequency your heat pump lowers to? If I remember correctly, with the previous firmware it was 15%, now the minimum seems to be 20%. I am thinking about updating to V3.87.1-8454.

BenPru commented 2 years ago

I am still missing power measurement on the heat pump input so I am unable to compute COP.

As far as I know, Luxtronik only has an energy measurement for the output by default, but not for the input. I use ha glow to measure the input consumption at the utility electricity meter.

Kars-de-Jong commented 2 years ago

Haven’t seen it go below 20%, firmware version V3.85.9.

At 20% my compressor produced 1875 W thermal power today, and consumed 180 W electric power (compressor only) with the heat source coming in at 11,5 °C. Power for pumps and the controller was 43 W. So COP at that time was > 8.

rhammen commented 2 years ago

Is there a setting that allows to decrease flow temperature? To my best understanding, changing the heat curve sets the return target, so I tried to lower and flatten it which based on my observation prolonged the heating time and decreased frequency.

Screenshot 2022-11-20 at 6 19 52 PM

@pluskal Wow, that is a really flat heating curve! I'd say you must have a very well insulated home for this to work when it is cold outside! On https://mnemotron.de/lux/heatcurve.html you can visualize the heating curve based on your settings. The diagram will show you on the Y-axis the target return temperature as a function of the outdoor temperature (X-axis). Your heatcurve is really flat: at -20 C outside you set a target return temperature of 24.5 C, which is only about 1 degree higher than at 0 C outside. If a house is less well isolated, it will loose significantly more energy at -20 C than at 0 C, so you then need a significantly higher return temperature when it is cold outside.

I do not really understand why you set parameter 12 to 21.5 C if your home is well insulated. 21.5 degrees means that at outside temperature of +20C , you still want a return temperature of 21.5 C. I'd set parameter 12 to 18 C (or even lower if your house keeps its temperature at an outside temperature of 10-15 degrees. And then set parameter 11 to the lowest value that keeps your home "warm". ("warm" meaning: room temperature remains constant regardless of outside temperature) Note that if you change parameter 12 by -3.5 C, you must increase parameter 11 by approx. +3.5 C to keep the endpoint the same. (in your case thus from 23.5 --> 27 C)

Note: for comparison, my heatcurve uses 18C and 33C. I did not really spend time optimizing it.

pluskal commented 2 years ago

@rhammen, thanks for the detailed explanation! I really appreciate it!

I'd say you must have a very well insulated home for this to work when it is cold outside!

It is hard to estimate precisely, but according to the project, my house should need less than 20 kWh/m²/year for heating. The house is well insulated but has a huge thermal capacity, so it reacts very slowly to outside temperature changes.

I do not really understand why you set parameter 12 to 21.5 C if your home is well-insulated.

The reason is that the return temperature to drop below 20Crequires the room temperature to be less than21C. My optimal room temperature is22.5C`. Based on empirical observation, it seemed like an appropriate setting, and the heating behaved desirably.

Because of the thermal capacity, it is not optimal to so heavily on the outside temperature. It is helpful to increase when the outside temperature is like -20-10C for a few days, but apart from that, I tried to have as low a heating temperature as possible to maximize COP. Moreover, it seemed better to have a meager and constant heat input that seemed to stabilize the inner room temperature.

The result is the following. The peek in 1NP (1 floor) happened because I ran a microwave to cook pizza for the launch. Also, the temperature stability is due to the low solar gain because there was a fog for almost a whole day.

Screenshot 2022-11-22 at 6 30 14 PM

Is there a better way to achieve this?

Perhaps, I could flatten it even more to reduce the pump's time.

Kars-de-Jong commented 2 years ago

Found another source of electricity usage through the auxiliary power connection: the compressor heating.

It seems it turns on when the compressor temperature is below 20 degrees, and then heats it up to 25 degrees. Instantaneous power used by this is about 26 W.

I suppose this is meant to keep the oil warm enough for a compressor start.

Kars-de-Jong commented 2 years ago

Can be monitored by: calculations.ID_WEB_LIN_VDH (compressor heating current temperature) calculations.ID_WEB_LIN_VDH_out (True when compressor heating is on).

BenPru commented 2 years ago

It seems it turns on when the compressor temperature is below 20 degrees, and then heats it up to 25 degrees. Instantaneous power used by this is about 26 W.

In my case it starts on <= 37 C° and stops >=39 C° every 15 minutes for 4 minutes and consumes about 65 W. Any ideas how to stop this?

And the HUP calculations.ID_WEB_HUPout runs about 22 hours a day. The manual explains that it should only run if the outdoor temp < heating_threshold_temperature, but changing it has no effect since 8 hours... How can I force it to stop?

Crashman1983 commented 2 years ago

Not possible. Needed to keep oil in liquid state.

Von meinem iPhone gesendet

Am 24.11.2022 um 17:17 schrieb BenPru @.***>:



It seems it turns on when the compressor temperature is below 20 degrees, and then heats it up to 25 degrees. Instantaneous power used by this is about 26 W.

In my case it starts on <= 37 C° and stops >=39 C° every 15 minutes for 4 minutes and consumes about 65 W. Any ideas howto stop this?

— Reply to this email directly, view it on GitHubhttps://github.com/BenPru/luxtronik/issues/21#issuecomment-1326647396, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABAAC4CFNQJ2MUMNKL7JL2TWJ6IHVANCNFSM6AAAAAASBAH77Q. You are receiving this because you were mentioned.Message ID: @.***>

BenPru commented 2 years ago

But can I optimize it? Your working range is 20-25 C ° and my 37-39. Why?

Crashman1983 commented 2 years ago

I am using a AI LWDV - Air/Water Compressor and when it's cold outside it often shows me the message "heating up compressor". During this time (a few minutes each) the power consumption increases from 20W to about 45W.

As far as I know this is normal behavior to protect the compressor and cannot be changed. But I think the high standby power consumption as well as power consumption for deicing is one of the main downsides of Alpha Innotec heat pumps.

While during operation COP was about 5.7 - 6.0 today (at around 7°C), average COP (whole day, includes deicing) was only 4.6 (heat output per day / power consumption per day).

image
Kars-de-Jong commented 2 years ago

But can I optimize it? Your working range is 20-25 C ° and my 37-39. Why?

Different compressor, different requirements? I have a WZSV 62K3M brine/water heat pump which uses R407C refrigerant.

My COP is a lot better (no deicing needed of course), past few days between 5,44 and 6,41 with average outside temperature between -1,4 and 8,4 degrees.

BenPru commented 2 years ago

high standby power consumption

:-( In this heating period, my heat pump has only completed 18 impulses so far. For example today I have 0 impulses and 48 minutes solar pump but 2,4 kWh power consumption!

The circulation pump heating is running the hole day for nothing... Also the compressor heater with 96 runs and about 6,5 hours runtime.

I'm considering creating a support ticket with Novelan or Alpha Innotec to clarify whether there isn't an optimization setting after all.

pluskal commented 2 years ago

I'm considering creating a support ticket with Novelan or Alpha Innotec to clarify whether there isn't an optimization setting after all.

I am very curious about how that will go. I tried to reach out to Alpha Innotec through their service partner in Czechia regarding a GDPR and the insecurity of their firmware... but no response at all.

BenPru commented 1 year ago

I am very curious about how that will go. I tried to reach out to Alpha Innotec through their service partner in Czechia regarding a GDPR and the insecurity of their firmware... but no response at all.

My E-Mail to support@ait-deutschland.eu was answered one day ago. Unfortunately, this did not bring any optimization approach. Only now I know that the heating circulation pump also goes out in the heating off mode. If the outside temperature is below 5 C°, it stays on permanently.

dickdahm commented 1 year ago

ID_Einst_P155_PumpHeatCtrl is 0. Should I activate it? All ID_Einst_P155_* params are 0.

ID_WEB_HUPout seems to work --> True/False changing. Circulation_Pump is always None.

Does anybody know what "P155_PumpHeatCtrl" does? Did not see this before...

dickdahm commented 1 year ago

Yesterday I activated my heatpump for the heating season. And now I read out the power usage of my heatpump with ha glow. I found out today that it has a big impact between heating "off" and "automatic" without running. The standby power usage in heating mode "off" is about ~13 Watt. In automatic mode the standby power usage is about 83 Watt and every 20 minutes it is ~150 Watt! Every 20 minutes the heatpump runs in mode "pump forerun" without doing something productive! In the past I thought this is a display bug in luxtronik but the usage show a real impact. My luxtronik version is V2.86.0 (Novelan LD7).

Has anyone something like this?

I just noticed a similar behaviour. The compressor heater (Verdichter Heizung) is turning on several times a day. Maybe 20 times for exactly 5 minutes. The times when this happens is totally random. Because of your interessting discussion here, I tried to disable pump optimazation, which if I understood you correctly, is responsible for this behaviour. The odd thing about this, is that this happens in summer at 35°C outside today, and domestic water and heating turned off...

Crashman1983 commented 1 year ago

The compressor heater is heating oil. This needs to be at above 40 degree Celsius afaik.

Power consumption is rising to 45W/h in this case. Without, standby power for luxtronik and everything else is about 20W/h.

this is as designed and cannot be changed. Unfortunately it is too much.

BenPru commented 1 year ago

Power consumption is rising to 45W/h in this case. Without, standby power for luxtronik and everything else is about 20W/h.

Yes, this is not very good. What happens if the power is down for hours or days? In my case the normal consumption is 12W/h and with Compressor heater about 85W/h! And my heatpump has 3/4 the year only to control the solarpump! My heatpump needs about 1,2 kW/h per day without solarpump or heating something!