edterbak / NodeRed_Heishamon_control

a Node Red flow to interact with Heishamon (a panasonic heatpump through an ESP board)
35 stars 6 forks source link

[ENHANCEMENT]: Flexible pumpspeed function #163

Open indicaprichos opened 5 months ago

indicaprichos commented 5 months ago

Good afternoon, I have an Aquarea kit-ADC-16HE5C-CL Generation H with a 100l inertia tank. The issue I'm facing is that the heat pump is too large for my home, resulting in frequent starts and stops. One of the problems is that the water pump in my secondary system has a flow rate of 16l/min, while the Aquarea pump has a minimum of 16.6l/min.

If I limit the pump speed from the start, it takes a long time to reach the Outlet setpoint, and I'm unsure of the flow rate required for defrosts.

I believe one solution would be to adjust the max pump duty when it reaches the outlet setpoint. Another option could be to set the maximum pump duty to decrease over time, for example, from 27l/min (19% in the flow setting) as the maximum configuration to 16.6l/min (8% in the flow setting) as the minimum configuration over 15 minutes.

I don't understand this very well, but I'll leave it here in case someone else is experiencing the same issue, and we can work on a solution together.

geduxas commented 5 months ago

HeatPump will drive it's circulation pump to maintain it's delta_T. Pump compressor can't go slower than 20hz.

Pump stop judgement is by outlet temperature, if it's over by 2° from setpoint for 3min it will stop.

So, there is not much possible to do.. theoretically what could happen next here, it could end in error, it could lead in overpressure in gas pipe, or overheating, because there will not be enough flow to take heat from hex.

indicaprichos commented 5 months ago

The heat pump takes a long time to modulate the flow, causing the temperature to rise too quickly and sometimes stopping before modulating. I have checked the minimum flow rate at which it modulates and I change it from Home-assistant, but I would like to be able to do it with Nodered and automate it, not do it manually.

geduxas commented 5 months ago

Try to set quaet mode lvl 3, it will not jump so rapid.. I think it's best form possible solutions, also remember to switch ot off in dhw.

indicaprichos commented 5 months ago

My machine always works quiet mode 3 in all modes. It is a 16kw heat pump and the maximum I have needed is about 7-8kw... I made a mistake when hiring an installer

geduxas commented 5 months ago

Oh, that's a lot. I am with 12kW pump, after renovation it become 2-3kW over..

Have you tried demand control?

indicaprichos commented 5 months ago

I haven't tried demand control, but I don't think it's the solution.
I need the heat pump to work at minimum power, at 19-20hz with a flow rate of 16.7l/min and still have enough to stop and start. It is only capable of modulating when the outside temperature is below 4º

WP-Rue commented 5 months ago

Have you tried Soft-Start? Thats for reducing the start power by automatically lowering the setpoint during the start phase after a pause...

geduxas commented 5 months ago

Have you tried Soft-Start? Thats for reducing the start power by automatically lowering the setpoint during the start phase after a pause...

I thought that soft start will help me to, but don't know why, but on my 12kW T-Cap with heat shift, and didn't notice any change in compressor frequency.

indicaprichos commented 5 months ago

Have you tried Soft-Start? Thats for reducing the start power by automatically lowering the setpoint during the start phase after a pause...

Yes, I have it activated, and I manage to reduce consumption, with the heat pump at the minimum power and 19Hz after 30 minutes. However, the system remains too powerful, and I need it to also regulate the flow rate to the minimum. I was thinking of implementing such automation in Home Assistant.

service: number.set_value target: entity_id: number.panasonic_heat_pump_main_max_pump_duty data_template: value: |- {% if states('sensor.ae_delta')|float(3) <= 3 and is_state('climate.panasonic_heat_pump_main_z1_temp', 'heat') and is_state('binary_sensor.panasonic_heat_pump_main_defrosting_state', 'off') and is_state('sensor.panasonic_heat_pump_main_threeway_valve_state', 'Room')%} 80 {% elif states('sensor.ae_delta')|float(3) > 3 and is_state('climate.panasonic_heat_pump_main_z1_temp', 'heat') and is_state('binary_sensor.panasonic_heat_pump_main_defrosting_state', 'off') and is_state('sensor.panasonic_heat_pump_main_threeway_valve_state', 'Room')%} {{ (100-80)/(5-3)*(states('sensor.ae_delta')|float -3) + 80 }} {% elif states('sensor.ae_delta')|float(3) >= 5 and is_state('climate.panasonic_heat_pump_main_z1_temp', 'heat') and is_state('binary_sensor.panasonic_heat_pump_main_defrosting_state', 'off') and is_state('sensor.panasonic_heat_pump_main_threeway_valve_state', 'Room')%} 100 {% else %} 100 {% endif %}

edterbak commented 5 months ago

Just to note: Be carefull with HA + Node Red control together. They might want to compete at some point. If you see a COMMAND sending spam in the logs, it is an indication this is happening. I dont think this will be an issue with pumpspeed though, but just a reminder.

geduxas commented 5 months ago

@edterbak don't know exactly how soft start works, but maybe it's possible implement this like rule in node-red

https://github.com/Egyras/HeishaMon/issues/465#issuecomment-1925786908

To prevent start/stop count node red should drive pump near it's stop condition..

WP-Rue commented 5 months ago

image

geduxas commented 5 months ago

image

Thank you @edterbak, tried to understand logic from help page, so it will reduce compressor frequency according to inlet temperature? Don't know why exactly this behavior is chosen, but pump working conditions are monitoring on outlet (most of time) let me explain a little bit logic (maybe it's all known) So inlet temperature is controlled by circulating pump and flow sensor to maintain it's set delta_T. Higher difference from supply temperature -Delta_t higher flow rate will be used..

So outlet temperature which should be monitored to reduce compressor rate, lowest possible compressor frequency is 19-20Hz. And for start/stop reduction it could be possible to drive outlet temperature neat pump off limit. Pump off judgement is by outlet temperature is higher by 2° for last 3min period.. so slightly increasing it's setpoint while compressor in its lowest speed it's possible to prolong it's runtime.. (that's exactly what try to do with rules)

As for temperature setpoints in 2 zone systems, target outlet temperature will be chosen by highest setpoint value of individual zone.. so if zone2 target is highet than zone1, zone2 temperature will be picket as main target setpoint. And if buffer tank is used, you will need to select delta for buffer tank.. and with highest set point will add delta of buffer tank. For example if z1 set as 32°, z2 to 37°, and buffer tank delta set to 3°, main target temperature will be 37+3, 40°.

WP-Rue commented 5 months ago

Softstart has been implemented by edterbak to reduce the outlet setpoint during switching on the heatpump and to drive this setpoint (which drives the compressor frequency) at a low value, increasing in e.g 30 min to the choosen setpoint... so my point of understanding.. and it works!

geduxas commented 5 months ago

Softstart has been implemented by edterbak to reduce the outlet setpoint during switching on the heatpump and to drive this setpoint (which drives the compressor frequency) at a low value, increasing in e.g 30 min to the choosen setpoint... so my point of understanding.. and it works!

Oh, i have confused you with @edterbak :D Sorry.

geduxas commented 5 months ago

Yes in some cases time will work, but for optimized work it should drive outlet setpoint.. and it might not work with 2 zone systems...

edterbak commented 5 months ago

@geduxas You are right, it 'might'.. you can replace that with it 'will'...

When I began to build this for myself, I built is for 1zone setup only. This is because I did not know better and I was building this form myself only.

Now the scenario has changed a little. I know a little bit better now, I am not the only one using this flow, and there are more than 1 zones. But, this does not help much. It only means that a major rewrite is required to make softstart possible for z1 and/or z2.

Not fond of that right now. :( Sorry. Although I am sometimes laying the foundation for an easy transition.. already naming stuff with z1 in it...

edterbak commented 5 months ago

Good afternoon, I have an Aquarea kit-ADC-16HE5C-CL Generation H with a 100l inertia tank. The issue I'm facing is that the heat pump is too large for my home, resulting in frequent starts and stops. One of the problems is that the water pump in my secondary system has a flow rate of 16l/min, while the Aquarea pump has a minimum of 16.6l/min.

If I limit the pump speed from the start, it takes a long time to reach the Outlet setpoint, and I'm unsure of the flow rate required for defrosts.

I believe one solution would be to adjust the max pump duty when it reaches the outlet setpoint. Another option could be to set the maximum pump duty to decrease over time, for example, from 27l/min (19% in the flow setting) as the maximum configuration to 16.6l/min (8% in the flow setting) as the minimum configuration over 15 minutes.

I don't understand this very well, but I'll leave it here in case someone else is experiencing the same issue, and we can work on a solution together.

I am not fully sure I understand your issue, and what the hardware setup exaclty is. Maybe you can explain that with some extra words. Zone 1 + buffertank? How is the water in primairy system connected to secondairy system? heat exchanger between them? Or just a waterpump which taps directly from the piping of the primairy flow?

But keep in mind that we are playing with a heat-balance. We can play as much as we want with the settings, but the main judge is the panasonic.

**Compressor on:**
Main inlet 4 degrees lower than setpoint
Formula:    [TOP5] <= [TOP27] - 4;
                [TOP5]  Main inlet
                [TOP27] Setpoint (in direct mode)

**Compressor off:**
Main outlet temperature is 2 degrees higher than setpoint, for 3 minutes
Formula:    [TOP6] + 2 >= [TOP27]
                [TOP6]  Main outlet
                [TOP27] Setpoint (in direct mode)

The things we can play with:

Your suggestion to start doing someting when the target temperature has been reached, is a path that will result in a lot of compressor stop/starts. A heatpump is most efficient if it can continue running for long periods. So reaching a target temperature fast, and then do something to reduce things, is not a correct approach I believe.

indicaprichos commented 5 months ago

Good afternoon, I have an Aquarea kit-ADC-16HE5C-CL Generation H with a 100l inertia tank. The issue I'm facing is that the heat pump is too large for my home, resulting in frequent starts and stops. One of the problems is that the water pump in my secondary system has a flow rate of 16l/min, while the Aquarea pump has a minimum of 16.6l/min. If I limit the pump speed from the start, it takes a long time to reach the Outlet setpoint, and I'm unsure of the flow rate required for defrosts. I believe one solution would be to adjust the max pump duty when it reaches the outlet setpoint. Another option could be to set the maximum pump duty to decrease over time, for example, from 27l/min (19% in the flow setting) as the maximum configuration to 16.6l/min (8% in the flow setting) as the minimum configuration over 15 minutes. I don't understand this very well, but I'll leave it here in case someone else is experiencing the same issue, and we can work on a solution together.

I am not fully sure I understand your issue, and what the hardware setup exaclty is. Maybe you can explain that with some extra words. Zone 1 + buffertank? How is the water in primairy system connected to secondairy system? heat exchanger between them? Or just a waterpump which taps directly from the piping of the primairy flow?

But keep in mind that we are playing with a heat-balance. We can play as much as we want with the settings, but the main judge is the panasonic.

**Compressor on:**
Main inlet 4 degrees lower than setpoint
Formula:    [TOP5] <= [TOP27] - 4;
                [TOP5]  Main inlet
                [TOP27] Setpoint (in direct mode)

**Compressor off:**
Main outlet temperature is 2 degrees higher than setpoint, for 3 minutes
Formula:    [TOP6] + 2 >= [TOP27]
                [TOP6]  Main outlet
                [TOP27] Setpoint (in direct mode)

The things we can play with:

  • Water flow
  • Heat Delta
  • QuietMode

Your suggestion to start doing someting when the target temperature has been reached, is a path that will result in a lot of compressor stop/starts. A heatpump is most efficient if it can continue running for long periods. So reaching a target temperature fast, and then do something to reduce things, is not a correct approach I believe.

I have zone 1 + buffertank. From the heatpump indoor unit, water flows to the buffertank where it mixes and returns to the indoor unit. The secondary waterpump moves this same water mixed in the buffertank. I agree that the heat pump always operates in ‘Quiet mode 3,’ directly and with the temperature stop automation by the thermostat in your Node-RED flow. I am testing the ‘SoftStart’ function to quickly reduce power. However, even with this, it still has too much power, resulting in hourly stops without reaching the thermostat’s target temperature. Perhaps something mentioned here could help. https://github.com/Egyras/HeishaMon/issues/465#issuecomment-1925786908

Alternatively, by experimenting with your suggestions:

How can I implement these rules in your flow? What recommendations do you have for reducing starts/stops?"

edterbak commented 5 months ago

what is the target temperature for you? the setpoint. My experience is that at 27C it is in a situation where it can have long runs. 26C means runs of 1 hour at the most.

What is the HeatDelta you use in the settings? If you reduce it to 2 (I use 2), the temp difference between in<>out is influenced. This is what my manual says about it. image

your link to the post. I have read it. Softstart makes use of option no 2. That is already working. It might be with a slight twist here or there, but the idea is roughly the same.

I still need to investigate option 1 how to implement that and use it to our benefit. This is on the to do list.

edterbak commented 5 months ago

I have no technical knowledge about z1 + a buffer tank. How does the water mix? is it just one big jug of water, like a tank. How well is the mixing in this case?

There is no heat exchanger inside? (I think not, but I like this confirmed.)

indicaprichos commented 5 months ago

what is the target temperature for you? the setpoint. My experience is that at 27C it is in a situation where it can have long runs. 26C means runs of 1 hour at the most.

What is the HeatDelta you use in the settings? If you reduce it to 2 (I use 2), the temp difference between in<>out is influenced. This is what my manual says about it. image

your link to the post. I have read it. Softstart makes use of option no 2. That is already working. It might be with a slight twist here or there, but the idea is roughly the same.

I still need to investigate option 1 how to implement that and use it to our benefit. This is on the to do list.

I have a radiator installation, my target is 40ºC and a heatdelta of 4ºC. The buffertank is just one big jug of water, there is no heat exchanger. I believe that the performance and operation would be much better without it, but with such a powerful system, if I were to remove it, I doubt the machine wouldn't be constantly starting and stopping or that the house temperature would rise well above comfort. That's why if the machine stops due to the delta or impulsion temperature, I would be interested in the water pump stopping to avoid it starting again a few minutes later and to prevent water from recirculating. Today, I increased the upper limit correction to 4ºC.