edterbak / NodeRed_Heishamon_control

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

dashboard and pump work according to custom room temperature sensor #134

Closed omenukas closed 10 months ago

omenukas commented 11 months ago

I am using Dashboard version V23.09. In the heat pump, the work is set according to the curve. In the dashboard, the WAR function is disabled, RTC is enabled. In the flow window of WP Control, my zigbee temperature sensor is connected to "CONNECT>>Custom sensor-livingroom temperature". Everything worked fine last winter and I was happy. But now, when the outside temperature fluctuates between 5-15 degrees Celsius, the heat pump turns on/off very often, even though the temperature in the room is significantly higher than the RTC set. It seems to me that the pump used to have a curve correction based on the room temperature, but now even though the RTC shows a -3 C correction, the pump still has a 0 C correction. Is it possible to set up the pump and dashboard so that the pump runs on room temperature (not on the curve) and takes room temperature data from my zigbee temperature sensor? If possible, what should be set in the pump and what in the NR dashboard, because I tried everything, but I can't get it.

edterbak commented 11 months ago

I think your heatpump is in direct sunlight at certain moments. Can you confirm this?

Be cause; based on what you describe I think what is happening: The pump catches sunlight. The sensor gets warmer than actual outside-temperature, example 22C. Which is high enough to turn off. When the sun goes away again, the sensor detects the actual temperature again ~10C

This is also what happens with my heatpump. It is on the roof and it catches sunlight. I have an external sensor (source = OpenWeatherMap) and use that as sensor for the outside temperature.

Today is see this: image

You see there are a lot of moments where the gap between temperature REAL (2) vs SEEN (1) is 10-15C.

This is why I created my custom WAR function, which basically copies the function of the compensation curve, but is able to use any custom sensor instead of the built-in version.

You can also solve this by buying an external panasonic sensor and connect it to the pump. It has connections for that.

omenukas commented 11 months ago

Everything is fine with the outdoor temperature sensor - I'm using an external Panasonic temperature sensor, which is on the north side of the house and the sun doesn't shine on it. My questions about the other one:

  1. if the RTC is set to 20C in the living room, and the real room temperature is 22C, why does the heat pump still heat? According to the temperature curve of the pump, it is 33C and although the RTC correction shows -3C, the temperature shift in the pump is still set to 0C and 33C is supplied to the radiators. Shouldn't it be 30C? Am I not understanding something?
  2. Another question - Is it possible for the pump to work not according to the curve but according to the room temperature and the room temperature sensor is my individual temperature sensor and not the Panasonic panel or the Panasonic external room thermostat? p.s. I can't show you my graphs now because it was warm outside these days and I had the heating turned off at the pump.
omenukas commented 11 months ago

I turned on the heating today and specifically lowered the room temperature setting. Is everything okay here? It seems to me that a lower temperature should be applied to the radiators. image image image

edterbak commented 11 months ago

Ah. So direct sunlight is not it.

Are you using the pump in compensation curve mode? I think so judging from the screenshot.

And can you check in heishamon if the dashboard sp corresponds with it? It might be a incorrect visual value, while the actual value used by the pump is correct. This could be the case. I hear more about this recently. Need to fix that.

Also you can check what is in the log of the dashboard. What does it show.

1: you are correct. The corrected sp should be 30, or if you are using the c- curve mode, -3. And not 0.

2: i think i understand you. Yes. It should. If you disable the Panasonic compensation curve mode. (set to direct) This is why i created the rtc function. You can use any custom sensor as long as you have the measurement entering node red.

Are you using version 23.09? If so. I am about to release v23.10 which brings a better and easier access to connect external sensor.

A short note: I am concluding the flow does not yet work wel with the pump in compensation curve. After v23.10, i will start working on it to make it stable for c-curve.

omenukas commented 11 months ago

Yes, the pump works according to the curve. I am using version 23.09. I don't really understand what parameters I should compare, but I can confirm that WAR=33C has not changed since last week and it doesn't matter what the temperature is outside. Also, "shift curve=0C" does not change either on the dashboard or on the pump panel. Although the room is warmer than set, the pump still heats. image image image

edterbak commented 11 months ago

Okay,

This proves the flow is not working yet corretly in compensation curve mode. Can you set it up to Direct mode, do a restart of the flow.

I am going to try to fix the issue this week. It will require me to do some serious debugging. The more because I do not have a external thermostat, which is also another variation to the mix.

But, best is to have it working stable, with direct mode (heat+cool). Hopefully it will be a week at most, where after you can maybe help me to test this if it is working propperly after the work.

edterbak commented 11 months ago

But information for you on a slightly different topic.

The compensation-curve is the Panasonic version of the WAR-function in the NodeRed-flow. Only limitation the panasonic CC has, is that is is hardwired to use the panasonic outside temperature measurement. inbuilt-or separate thermocouple.

But, long story short. If you have the Panasonic CC-mode enabled, the flow will detect it and automatically disable the WAR function.

Before you change to direct mode (if you are..) please press the IMPORT button on the WAR-function tab. It could be help to correct the read-out in the dashboard.

But do note that you will never get the WAR function from Node Red working/enabled. It will auto-disable in a short while.

omenukas commented 11 months ago

Of course I will be able to test the patched version. Regarding the Direct mode....I have never used this mode and I have no idea what value the water temperature should be set to

edterbak commented 11 months ago

Of course I will be able to test the patched version. Regarding the Direct mode....I have never used this mode and I have no idea what value the water temperature should be set to

πŸ˜ƒ You currently have the panasonic CC function running right? Are you happy with those temperature settings? Do you experience discomfort? to hot/cold at times? If you are happy with it, you can just use this setting.

Befor you change to direct mode, make a screenshot of the settings with your phone. The settings in the controller of the curve. Then in the node red flow, do the IMPORT in the WAR menu tab. Then change the pump to direct mode The settings should not have changed in the node red dashboard.

This should do it and you are using the Node Red WAR function if you enable it.

If your not happy with the node red implementation or run into issues. You can always go back in the controller, set it back to CC and enter the temperature again as you had them. THats why making a photo of the controller us usefull..

omenukas commented 11 months ago

Ok, I switched to Direct mode. What does this "Water temp." parameter? image image

edterbak commented 11 months ago

Water temperature, you can set. If you do not use any of the functions, this will be the setpoint. Once you enable WAR, it will overwrite the given [water temp] with the calculated one. If you enable RTC, it will correct the setpoint from WAR/Water temp. etc.

Read it from top down. πŸ˜„

omenukas commented 11 months ago

I thought so. Just showing the same 33 degrees as in curve mode :) Ok, I'll wait for the new version for testing, because I briefly ran the Beta version last week, I didn't understand anything about the sensors and went back to the stable version :)

edterbak commented 11 months ago

Sounds like a good action. Ghehe... It is indeed still in beta. First i want to have the logic/design and function in order, then I will start working on the help text etc.

The design/function seems to be going well now, but still not good enough for new users.

edterbak commented 11 months ago

I thought so. Just showing the same 33 degrees as in curve mode :) On that note: I can maybe think of making the 'Water temp' option grey out if the WAR function is enabled. What do you think?

omenukas commented 11 months ago

Oh, when WAR is disabled, then "water temp." becomes active again? Maybe it's logical

edterbak commented 11 months ago

Sounds like a plan. I will take this onboard. Thanks

omenukas commented 11 months ago

It has been noticed that when the pump is set to run in curve mode and Softstart is enabled then it works correctly and the correction changes work. (in Beta version)

edterbak commented 11 months ago

Hi,

Can you confirm that this is with: TOP76 = 0 (Heating_Mode) TOP111 = 0 (Z1_Sensor_Settings)

IF it is different, i would like to know.

omenukas commented 11 months ago

The beta version is not with me, but with a colleague. He confirmed that yes - both parameters are "0".

geduxas commented 10 months ago

Hi @edterbak i think i am in same problem right now. RTC not working as expected. Tried to play around, and RTC reports +4 in shift but set command didn't went to heishamon.

here is breaf output from log

image

from log it's clearly declares new shift to +4, but there is no command in log that actual do it.. (should i see it?) after that i have made some changes for DHW and log was filled with change commands immediately.

edterbak commented 10 months ago

The last update (flows 23.10 beta31.json) is a major one. Can you test if the issue you are seeing is still present?

PS. The grey-out of WAR is not an easy option I am afraid. This element does not easily allow change of text colors. I need to write it in a class for that, which takes some work. First I want to get stuff working propperly befor I do the window dressing :)

omenukas commented 10 months ago

In the beta version, I don't understand how to connect the custom room temperature sensor. System ->Sensors is empty, there is no selection and nothing can be recorded. I tried to pin to Room temperature link-in, but then all Node Red broke and I did a restore to version 23.09.

edterbak commented 10 months ago

Yes. In the flow (not dashboard) go to page [WP Input] there you need to connect the incoming data nodes to.

it should be clear which one belongs where.

If you have done that. then in the dashboard (settings > sensors) you need to wait until all values have been populated in the dropdown menus. This can take a while. After that you can select in the drop down which value you need. This one will be used from then on.

edterbak commented 10 months ago

this is why it is a beta. no propper documentation yet .. sorry for that.

omenukas commented 10 months ago

I tried curve mode. T shift works correctly - it also changes in the pump. However, I ran into another problem: I have a script that finds the lowest temperature of all 4 rooms and gives it to the pump as the room temperature. Temperatures.json

In this Beta version, as I understand it, in SYSTEM->Sensors I have to select a single room temperature sensor, which value will not necessarily always be the lowest. Is there any way to resolve this issue?

edterbak commented 10 months ago

In the tab WP Input, you can feed any signal to the Temperature link-in node. If you have the script to calculate the measured value, you can feed that to the link-in node. The flow does not need to know the different source of temperature. just a temperature. :)

Aditionally, in that tab you can also link in the room target temperature for RTC function.

geduxas commented 10 months ago

@omenukas sorry for taking this topic, also i am new to node-red, but your script should work fine, your script just get's all temp, and passes only lowest value.. so input should receive single lowest value. One thing that i am missing i'ts payload topic. Don't know if flow is looking for topic, but i use almost same for myself.. and after that just compile one payload with my custom topic name, and everything works fine.

omenukas commented 10 months ago

@geduxas Oooh, yes. You were right. How did I not realize this myself. Everything is fine now.

edterbak commented 10 months ago

@omenukas sorry for taking this topic, also i am new to node-red, but your script should work fine, your script just get's all temp, and passes only lowest value.. so input should receive single lowest value. One thing that i am missing i'ts payload topic. Don't know if flow is looking for topic, but i use almost same for myself.. and after that just compile one payload with my custom topic name, and everything works fine.

Yes, the default is that 1 topic contains one value. Or multiple key/value pairs. The drop down selected 1 topic Indeed. So you are right with your solution. Combine to calculate 1 value and set the topic manually.

omenukas commented 10 months ago

@edterbak Can we close this issue?

edterbak commented 10 months ago

Sure. If your issue is solved. You can do the honour. πŸ‘