Acties:
  • 0 Henk 'm!

  • deWit
  • Registratie: November 2004
  • Laatst online: 22:05

deWit

Niet goed, geld toch kwijt!

Topicstarter
Mede-auteur:
  • KappuhH
  • Registratie: Augustus 2004
  • Niet online

KappuhH

Zoals velen heb ik een combinatie in huis van een Panasonic Monobloc warmtepomp in combinatie met een Heishamon printplaat voor uitlezing en aansturing en heb ik Home Assistant draaien voor huis automatisering.

Het mooie van de warmtepomp is dat deze behoorlijk te tweaken is om hem te laten doen wat je wil, en 1 van die dingen is het draaien op een zo laag mogelijk vermogen voor een zo lang mogelijke tijd. Daar zijn trucjes voor die al prima beschreven staan in bijvoobeeld het Panasonic Optimalisatie topic

Ik heb een scriptje gemaakt om vanuit HA elke minuut het setpoint te optimaliseren van de warmtepomp om op lage frequentie te blijven draaien, maar ook met de optie om bij een lagere buientemperatuur naar een WAR achtige regeling. Dat script heb ik eens gedeeld in het HA topic en sindsdien heb ik er de nodige vragen over gekregen maar ook de nodige updates aan gedaan.

Het orginele script:
Het script maakt gebruik van twee opties, een 'WAR' achtige regeling als de buitentemperatuur onder een bepaalde waarde komt of een regeling die gaat proberen een zo laag mogelijke frequentie te krijgen door de gevraagde temperatuur aan te passen naar de huidige geleverde temperatuur -1. Omdat ik er nog geen noodzaak tot heb gehad is de WAR regeling nu eigenlijk nog niet echt ingebouwd. 'climate.panasonic_wp' is een generic thermostat in HA die eigenlijk niets anders doet dan een temperatuur instellen die ik als gewenste ruimtetemperatuur gebruik.


YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
alias: Panasonic optimizer
description: Script draait elke minuut en past dynamisch setpoint van WP aan
trigger:
  - platform: time_pattern
    minutes: /1
condition: []
action:
  - service: mqtt.publish
    data_template:
      topic: panasonic_heat_pump/commands/SetZ1HeatRequestTemperature
      retain: false
      payload_template: >
        {% set outputtemp = states('sensor.aquarea_outlet_temperature') | float %} 
        {% set targettemp =  states('sensor.aquarea_outlet_target_temperature') | float %} 
        {% set frequency = states('sensor.aquarea_compressor_frequency') | float %}  
        {% set setpoint = state_attr('climate.panasonic_wp', 'temperature') | float %} 
        {% set roomTemperature = states('sensor.temperatuur_keuken') | float %} 
        {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %} 
        {% set deltaT = setpoint - roomTemperature %}   
        {% set WARBasetemp = 28 %}   
        {% set shift = 0 %} 
        {% set hystOff = 0.5 %}   
        {% set lowpowerlimittemp = 3 %}   
        {% set newtarget = targettemp %}  

        {% set WARsetpoint = WARBasetemp - outsideTemp %} 
        {% if WARsetpoint < 35 %} 
          {% set WARsetpoint = 35 %} 
        {% endif %}

        {% if roomTemperature < (setpoint - 1.5) %} 
          {% set shift=3%} 
        {% elif roomTemperature < (setpoint -1 ) %} 
          {% set shift=2%} 
        {% elif roomTemperature < (setpoint - 0.5)%} 
          {% set shift=1%} 
        {% elif roomTemperature < (setpoint + 0.0)%} 
          {% set shift = 0%} 
        {% elif roomTemperature < (setpoint + 0.2)%} 
          {% set shift = -1%} 
        {% elif roomTemperature < (setpoint + 0.4)%} 
          {% set shift = -2%} 
        {% elif roomTemperature < (setpoint + 0.6)%} 
          {% set shift = -3%} 
        {% endif %}

        {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint-1) %} 
          {% set newtarget = outputtemp - 1%}

        {% else %} 
          {% set newtarget = WARBasetemp + shift%} 
        {% endif %}

        {% if roomTemperature < (setpoint + hystOff ) %}
          {% set newtarget = newtarget %}
          {% if frequency == 0 and roomTemperature < setpoint %}
            {% set newtarget = outputtemp + 4 %}
          {% endif %}
          {% if frequency > 0 and outputtemp < 24 %}
            {% set newtarget = outputtemp + 2%}
          {% endif %}
        {% else %}
            {% set newtarget = outputtemp -3 %}

        {% endif %}

        {% if newtarget < 20 %} {% set newtarget = 20 %} {% endif %}

        {% if newtarget == targettemp %} {{ "%.0f" % (newtarget | int) }} {%
        else %}   {{ "%.0f" % (newtarget | int) }} {% endif %}
mode: single


Die is vervolgens aangepast om alleen naar de warmtepomp te schrijven bij aanpassing van 1 van de temperaturen:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
alias: Panasonic optimizer
description: Setpoint WP aanpassen
variables:
  newtarget: >
    {% set outputtemp = states('sensor.aquarea_outlet_temperature') | float %}
    {% set targettemp = states('sensor.aquarea_outlet_target_temperature') | float %}
    {% set frequency = states('sensor.aquarea_compressor_frequency') | float %}
    {% set setpoint = state_attr('climate.panasonic_wp', 'temperature') | float %}
    {% set roomTemperature = states('sensor.temperatuur_keuken') | float %}
    {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %}
    {% set deltaT = setpoint - roomTemperature %}
    {% set WARBasetemp = 28 %}
    {% set shift = 0 %}
    {% set hystOff = 0.5 %}
    {% set lowpowerlimittemp = 3 %}
    {% set newtarget = targettemp %}
    {% set WARsetpoint = [35, WARBasetemp - outsideTemp] | max %} 

    {% if roomTemperature < (setpoint - 1.5) %} 
      {% set shift = 3 %} 
    {% elif roomTemperature < (setpoint -1 ) %}
      {% set shift = 2 %} 
    {% elif roomTemperature < (setpoint - 0.5) %} 
      {% set shift = 1 %} 
    {% elif roomTemperature < (setpoint + 0.0 )%}
      {% set shift = 0 %} 
    {% elif roomTemperature < (setpoint + 0.2) %}
      {% set shift = -1 %} 
    {% elif roomTemperature < (setpoint + 0.4) %} 
      {% set shift = -2 %} 
    {% elif roomTemperature < (setpoint + 0.6 )%}
      {% set shift = -3 %} 
    {% endif %}

    {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint - 1) %} 
      {% set newtarget = outputtemp - 1 %}
    {% else %} 
      {% set newtarget = WARBasetemp + shift %}
    {% endif %}

    {% if roomTemperature < (setpoint + hystOff ) %}
      {% if frequency == 0 and roomTemperature < setpoint %}
        {% set newtarget = outputtemp + 4 %}
      {% endif %}
      {% if frequency > 0 and outputtemp < 24 %}
        {% set newtarget = outputtemp + 2 %}
      {% endif %}
    {% else %}
      {% set newtarget = outputtemp -3 %}
    {% endif %}
    {{ [20, newtarget] | max }}
trigger:
  - platform: template
    value_template: "{{ newtarget != states('sensor.aquarea_outlet_target_temperature') | float }}"
condition: []
action:
  - service: mqtt.publish
    data_template:
      topic: panasonic_heat_pump/commands/SetZ1HeatRequestTemperature
      retain: false
      payload_template: "{{ target_temp }}"
mode: single


Het doel van dit topic is ervaringen delen en kijken of we dit kunnen uitbouwen naar iets wat beter, slimmer en netter werkt.


Ja maar, het werkt niet
  • Dit scriptje gaat er vanuit dat je de Heishamon hebt toegevoegd aan Home Assistant volgens deze methode.
  • Verder, het gaat er vanuit dat je de WP een directe watertemperatuur geeft. Alleen in die stand kun je door middel van het SetZ1HeatRequestTemperature topic een gewenste temperatuur opgeven in plaats van een temperatuurshift.
  • Waar kan ik de meest recente versie vinden? Mijn versie staat hier https://github.com/patrickdewitNL/HA-Heisha-Pana (in theorie, ik ben geen held met GitHub)

Acties:
  • 0 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
Hallo Patrick,

Wat goed dat je hier er een topic van maakt.

Ik draai de eerste versie en hier zijn mijn aanpassingen
van de automations.yaml

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
alias: Panasonic optimizer
description: Script draait elke minuut en past dynamisch setpoint van WP aan
trigger:
  - platform: time_pattern
    minutes: /1
condition: []
action:
  - service: mqtt.publish
    data_template:
      topic: panasonic_heat_pump/commands/SetZ1HeatRequestTemperature
      retain: false
      payload_template: >
        {% set outputtemp = states('sensor.aquarea_outlet_temperature') | float %}
        {% set targettemp = states('sensor.aquarea_outlet_target_temperature') | float %}
        {% set frequency = states('sensor.aquarea_compressor_frequency') | float %} 
        {% set setpoint = state_attr('climate.toon_thermostat', 'temperature') | float %}
        {% set roomTemperature = states('sensor.toon_temperatuur') | float %}
        {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %}
        {% set WARBasetemp = 28 %}
        {% set shift = 0 %}
        {% set hystOff = 0.5 %}
        {% set lowpowerlimittemp = 3 %}
        {% set newtarget = targettemp %}

        {% set WARsetpoint = WARBasetemp - outsideTemp %}

        {% if WARsetpoint < 28 %}
        {% set WARsetpoint = 28 %}
        {% endif %}

        {% if roomTemperature < (setpoint - 1.5) %}
          {% set shift=3%}
        {% elif roomTemperature < (setpoint -1 ) %}
          {% set shift=2%}
        {% elif roomTemperature < (setpoint - 0.5)%}
          {% set shift=1%}
        {% elif roomTemperature < (setpoint + 0.0)%}
          {% set shift = 0%}
        {% elif roomTemperature < (setpoint + 0.2)%}
          {% set shift = -1%}
        {% elif roomTemperature < (setpoint + 0.4)%}
          {% set shift = -2%}
        {% elif roomTemperature < (setpoint + 0.6)%}
          {% set shift = -3%}
        {% endif %}


        {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint -1) %}
          {% set newtarget = outputtemp - 1%}
        {% else %}
          {% set newtarget = WARBasetemp + shift%}
        {% endif %}

        {% if roomTemperature < (setpoint + hystOff ) %}
          {% set newtarget = newtarget %}
          {% if frequency == 0 and roomTemperature < setpoint %}
            {% set newtarget = outputtemp + 4 %}
          {% endif %}
          {% if frequency > 0 and outputtemp < 24 %}
            {% set newtarget = outputtemp + 2%}
          {% endif %}
        {% else %}
            {% set newtarget = outputtemp -3 %}

        {% endif %}

        {% if newtarget < 20 %}
          {% set newtarget = 20 %}
        {% endif %}

        {% if newtarget == targettemp %}
          {{ "%.0f" % (newtarget | int) }}
        {% else %}
          {{ "%.0f" % (newtarget | int) }}
        {% endif %}
mode: single


zoals je ziet gebruik ik de Toon als thermostaat en de Toon temperatuur meter ,wij hadden al eerder via PM contact en ik draai nu de Panasonic in direct mode ipv WAR.
even kijken hoe en of dat beter gaat.

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


Acties:
  • 0 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
het zal mijn onkunde wel zijn met HA maar via direct of WAR mode kom ik nog steeds deze error tegen

code:
1
Error while executing automation automation.set_heatshift_selector: Invalid value for input_number.heishamon_heatshift: 28.0 (range -5.0 - 5.0)


Ik laat het even zo voor wat het is .

eerst maar eens kijken waar deze error nou vandaan komt en hoe ik ervan af kom.

Het huis koelde af dus er werd door de vrouw al dan niet terecht gemopperd

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


Acties:
  • +1 Henk 'm!

  • Jesse-
  • Registratie: Oktober 2015
  • Laatst online: 20:11
Balans schreef op vrijdag 10 december 2021 @ 13:37:
het zal mijn onkunde wel zijn met HA maar via direct of WAR mode kom ik nog steeds deze error tegen

code:
1
Error while executing automation automation.set_heatshift_selector: Invalid value for input_number.heishamon_heatshift: 28.0 (range -5.0 - 5.0)


Ik laat het even zo voor wat het is .

eerst maar eens kijken waar deze error nou vandaan komt en hoe ik ervan af kom.

Het huis koelde af dus er werd door de vrouw al dan niet terecht gemopperd
Je moet in heishamon.yaml even onderstaande stukje opzoeken en de min/max bij heishamon_heatshift weghalen en dan HA herstarten :)

YAML:
1
2
3
4
5
  heishamon_heatshift:
    name: Set Heatshift Temperature
    min: -5
    max: 5
    step: 1

Acties:
  • 0 Henk 'm!

  • deWit
  • Registratie: November 2004
  • Laatst online: 22:05

deWit

Niet goed, geld toch kwijt!

Topicstarter
Volgens mij is dit vooral HA waar het misloopt en moet je in de heishamon.yaml even de heatshift-selector aanpassen:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# input_number #
################
input_number:
  heishamon_tank_temp:
    name: Set Tank Temperature
    min: 40
    max: 75
    step: 1

  heishamon_heatshift:
    name: Set Heatshift Temperature
    min: 18
    max: 35
    step: 1

Acties:
  • 0 Henk 'm!

  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

deWit schreef op woensdag 8 december 2021 @ 09:57:
Zoals velen heb ik een combinatie in huis van een Panasonic Monobloc warmtepomp in combinatie met een Heishamon printplaat voor uitlezing en aansturing en heb ik Home Assistant draaien voor huis automatisering.

Het mooie van de warmtepomp is dat deze behoorlijk te tweaken is om hem te laten doen wat je wil, en 1 van die dingen is het draaien op een zo laag mogelijk vermogen voor een zo lang mogelijke tijd. Daar zijn trucjes voor die al prima beschreven staan in bijvoobeeld het Panasonic Optimalisatie topic

Ik heb een scriptje gemaakt om vanuit HA elke minuut het setpoint te optimaliseren van de warmtepomp om op lage frequentie te blijven draaien, maar ook met de optie om bij een lagere buientemperatuur naar een WAR achtige regeling. Dat script heb ik eens gedeeld in het HA topic en sindsdien heb ik er de nodige vragen over gekregen maar ook de nodige updates aan gedaan.

Het orginele script:
Het script maakt gebruik van twee opties, een 'WAR' achtige regeling als de buitentemperatuur onder een bepaalde waarde komt of een regeling die gaat proberen een zo laag mogelijke frequentie te krijgen door de gevraagde temperatuur aan te passen naar de huidige geleverde temperatuur -1. Omdat ik er nog geen noodzaak tot heb gehad is de WAR regeling nu eigenlijk nog niet echt ingebouwd. 'climate.panasonic_wp' is een generic thermostat in HA die eigenlijk niets anders doet dan een temperatuur instellen die ik als gewenste ruimtetemperatuur gebruik.


YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
alias: Panasonic optimizer
description: Script draait elke minuut en past dynamisch setpoint van WP aan
trigger:
  - platform: time_pattern
    minutes: /1
condition: []
action:
  - service: mqtt.publish
    data_template:
      topic: panasonic_heat_pump/commands/SetZ1HeatRequestTemperature
      retain: false
      payload_template: >
        {% set outputtemp = states('sensor.aquarea_outlet_temperature') | float %} 
        {% set targettemp =  states('sensor.aquarea_outlet_target_temperature') | float %} 
        {% set frequency = states('sensor.aquarea_compressor_frequency') | float %}  
        {% set setpoint = state_attr('climate.panasonic_wp', 'temperature') | float %} 
        {% set roomTemperature = states('sensor.temperatuur_keuken') | float %} 
        {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %} 
        {% set deltaT = setpoint - roomTemperature %}   
        {% set WARBasetemp = 28 %}   
        {% set shift = 0 %} 
        {% set hystOff = 0.5 %}   
        {% set lowpowerlimittemp = 3 %}   
        {% set newtarget = targettemp %}  

        {% set WARsetpoint = WARBasetemp - outsideTemp %} 
        {% if WARsetpoint < 35 %} 
          {% set WARsetpoint = 35 %} 
        {% endif %}

        {% if roomTemperature < (setpoint - 1.5) %} 
          {% set shift=3%} 
        {% elif roomTemperature < (setpoint -1 ) %} 
          {% set shift=2%} 
        {% elif roomTemperature < (setpoint - 0.5)%} 
          {% set shift=1%} 
        {% elif roomTemperature < (setpoint + 0.0)%} 
          {% set shift = 0%} 
        {% elif roomTemperature < (setpoint + 0.2)%} 
          {% set shift = -1%} 
        {% elif roomTemperature < (setpoint + 0.4)%} 
          {% set shift = -2%} 
        {% elif roomTemperature < (setpoint + 0.6)%} 
          {% set shift = -3%} 
        {% endif %}

        {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint-1) %} 
          {% set newtarget = outputtemp - 1%}

        {% else %} 
          {% set newtarget = WARBasetemp + shift%} 
        {% endif %}

        {% if roomTemperature < (setpoint + hystOff ) %}
          {% set newtarget = newtarget %}
          {% if frequency == 0 and roomTemperature < setpoint %}
            {% set newtarget = outputtemp + 4 %}
          {% endif %}
          {% if frequency > 0 and outputtemp < 24 %}
            {% set newtarget = outputtemp + 2%}
          {% endif %}
        {% else %}
            {% set newtarget = outputtemp -3 %}

        {% endif %}

        {% if newtarget < 20 %} {% set newtarget = 20 %} {% endif %}

        {% if newtarget == targettemp %} {{ "%.0f" % (newtarget | int) }} {%
        else %}   {{ "%.0f" % (newtarget | int) }} {% endif %}
mode: single


Die is vervolgens aangepast om alleen naar de warmtepomp te schrijven bij aanpassing van 1 van de temperaturen:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
alias: Panasonic optimizer
description: Setpoint WP aanpassen
variables:
  newtarget: >
    {% set outputtemp = states('sensor.aquarea_outlet_temperature') | float %}
    {% set targettemp = states('sensor.aquarea_outlet_target_temperature') | float %}
    {% set frequency = states('sensor.aquarea_compressor_frequency') | float %}
    {% set setpoint = state_attr('climate.panasonic_wp', 'temperature') | float %}
    {% set roomTemperature = states('sensor.temperatuur_keuken') | float %}
    {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %}
    {% set deltaT = setpoint - roomTemperature %}
    {% set WARBasetemp = 28 %}
    {% set shift = 0 %}
    {% set hystOff = 0.5 %}
    {% set lowpowerlimittemp = 3 %}
    {% set newtarget = targettemp %}
    {% set WARsetpoint = [35, WARBasetemp - outsideTemp] | max %} 

    {% if roomTemperature < (setpoint - 1.5) %} 
      {% set shift = 3 %} 
    {% elif roomTemperature < (setpoint -1 ) %}
      {% set shift = 2 %} 
    {% elif roomTemperature < (setpoint - 0.5) %} 
      {% set shift = 1 %} 
    {% elif roomTemperature < (setpoint + 0.0 )%}
      {% set shift = 0 %} 
    {% elif roomTemperature < (setpoint + 0.2) %}
      {% set shift = -1 %} 
    {% elif roomTemperature < (setpoint + 0.4) %} 
      {% set shift = -2 %} 
    {% elif roomTemperature < (setpoint + 0.6 )%}
      {% set shift = -3 %} 
    {% endif %}

    {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint - 1) %} 
      {% set newtarget = outputtemp - 1 %}
    {% else %} 
      {% set newtarget = WARBasetemp + shift %}
    {% endif %}

    {% if roomTemperature < (setpoint + hystOff ) %}
      {% if frequency == 0 and roomTemperature < setpoint %}
        {% set newtarget = outputtemp + 4 %}
      {% endif %}
      {% if frequency > 0 and outputtemp < 24 %}
        {% set newtarget = outputtemp + 2 %}
      {% endif %}
    {% else %}
      {% set newtarget = outputtemp -3 %}
    {% endif %}
    {{ [20, newtarget] | max }}
trigger:
  - platform: template
    value_template: "{{ newtarget != states('sensor.aquarea_outlet_target_temperature') | float }}"
condition: []
action:
  - service: mqtt.publish
    data_template:
      topic: panasonic_heat_pump/commands/SetZ1HeatRequestTemperature
      retain: false
      payload_template: "{{ target_temp }}"
mode: single


Het doel van dit topic is ervaringen delen en kijken of we dit kunnen uitbouwen naar iets wat beter, slimmer en netter werkt.


Ja maar, het werkt niet
  • Dit scriptje gaat er vanuit dat je de Heishamon hebt toegevoegd aan Home Assistant volgens deze methode.
  • Verder, het gaat er vanuit dat je de WP een directe watertemperatuur geeft. Alleen in die stand kun je door middel van het SetZ1HeatRequestTemperature topic een gewenste temperatuur opgeven in plaats van een temperatuurshift.
  • Waar kan ik de meest recente versie vinden? Mijn versie staat hier https://github.com/patrickdewitNL/HA-Heisha-Pana (in theorie, ik ben geen held met GitHub)
Super dat je dit bent gestart. Vraagje; kun je in de topic start ook kort uitleggen hoe je de Heishamon in HA hebt geintegreerd? Ik heb MQTT en HACS draaien en uiteraard de heishamon zelf maar nog niet dit in HA zichtbaar gekregen.

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


Acties:
  • 0 Henk 'm!

  • deWit
  • Registratie: November 2004
  • Laatst online: 22:05

deWit

Niet goed, geld toch kwijt!

Topicstarter
Ja, zal ik er even bij zetten;

Concreet komt het neer op een aantal sensoren aanmaken die gekoppeld zitten aan specifieke MQTT topics. Er is een opzetje online maar volgens mij is die niet helemaal 100% compleet:

https://github.com/Egyras...grations/Home%20Assistant

Acties:
  • 0 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
@Jesse- thnx

@deWit gaan we proberen klinkt aannemelijk

[ Voor 42% gewijzigd door Balans op 10-12-2021 14:27 . Reden: patrick heeft link al gedeeld ]

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


Acties:
  • 0 Henk 'm!

  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

deWit schreef op vrijdag 10 december 2021 @ 14:26:
Ja, zal ik er even bij zetten;

Concreet komt het neer op een aantal sensoren aanmaken die gekoppeld zitten aan specifieke MQTT topics. Er is een opzetje online maar volgens mij is die niet helemaal 100% compleet:

https://github.com/Egyras...grations/Home%20Assistant
Maar zonder deze integratie kun je dus niet zien in HA hoe de mqtt dump eruit ziet ergensin een log?

In mqtt server op windows pc zie ik de data wel. Maar moet in HA nog ff mijn weg in vinden waar ik wat moet neerzetten (nieuw op HA)

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


Acties:
  • +1 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
nee een log realtime volgen is mij ook nog niet helemaal duidelijk in HA , ben al een jaren domoticz gebruiker...

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


Acties:
  • +1 Henk 'm!

  • Jesse-
  • Registratie: Oktober 2015
  • Laatst online: 20:11
ErikVers schreef op vrijdag 10 december 2021 @ 14:38:
[...]


Maar zonder deze integratie kun je dus niet zien in HA hoe de mqtt dump eruit ziet ergensin een log?

In mqtt server op windows pc zie ik de data wel. Maar moet in HA nog ff mijn weg in vinden waar ik wat moet neerzetten (nieuw op HA)
Je kan alle mqtt dingen wel loggen in HA, maar dat voegt niet veel toe als je de berichten al op een andere manier kan inzien.

https://www.home-assistant.io/docs/mqtt/logging/

Beste startpunt is de HA integratie uit de github repo die @deWit al postte.

Acties:
  • 0 Henk 'm!

  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

deWit schreef op vrijdag 10 december 2021 @ 14:26:
Ja, zal ik er even bij zetten;

Concreet komt het neer op een aantal sensoren aanmaken die gekoppeld zitten aan specifieke MQTT topics. Er is een opzetje online maar volgens mij is die niet helemaal 100% compleet:

https://github.com/Egyras...grations/Home%20Assistant
@deWit Thanks, het is gelukt!

Moet nog ff uitzoeken hoe ik een meer standen schakelaar maak (selector) edit:gelukt

en volgens mij mis ik inderdaad nog bijvoorbeeld de kamertemperatuur (roomthermostaat)

@thehog nogmaals bedankt voor je creatie, nu ook weer in HA top om mee te spelen 😋👍

Afbeeldingslocatie: https://tweakers.net/i/NUpz7UtegJeNqh7ehl78L0LbaGo=/x800/filters:strip_exif()/f/image/1P7iCt4rpA1p0fKcHiHrqwhk.png?f=fotoalbum_large

[ Voor 5% gewijzigd door ErikVers op 10-12-2021 22:02 ]

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

@deWit Aangezien hier wel wat Home Assistant kennis zit:

Jullie ook ervaring met de S0PCM-Reader?
Ik heb deze gevonden op github en dat is ook degene die ik in Domoticz werkend had. Maar ik heb via de terminal de wget code uitgevoerd maar kan daarna niet in mijn file editor een wijziging vinden?

De vervolgstappen zijn mij niet duidelijk zullen we maar zeggen... :-)

Iemand die mij op weg kan helpen? |:(
https://github.com/ualex7...der/blob/master/README.md


Weg gedaan en via een extra HeishaMon de S0 aangesloten en via MQTT in HA

[ Voor 7% gewijzigd door ErikVers op 29-12-2021 11:35 ]

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


Acties:
  • +1 Henk 'm!

  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

Mensen omdat ik vooral nieuwsgierig ben of er nog leven in dit topic zit:

Kunnen jullie mij opweg helpen hoe ik een notificatie kan laten sturen als er geen mqtt data meer vanuit de HeishaMon komt?

Heb nu elke 5 min een trigger op de automatiseringen van de "Set Selector" van diverse dus daar moet je wat mee kunnen zou je denken?

Huidige opstelling (welke niet werkt)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
alias: Test als mqtt Heishamon stops
description: ''
trigger:
  - platform: time_pattern
    minutes: '0'
    seconds: '10'
condition:
  - condition: not
    conditions:
      - condition: state
        entity_id: automation.set_quiet_level_selector
        state: Test
        attribute: last_triggered
        for:
          hours: 0
          minutes: 6
          seconds: 0
action:
  - service: notify.persistent_notification
    data:
      message: >-
        Maybe no connection: Check Mqtt Heishamon http://192.168.0.188/ on
        EAP110 Outdoor http://192.168.0.96/
      title: Check de verbinding MQTT - HA
  - service: notify.notify
    data:
      message: >-
        Maybe no connection: Check Mqtt Heishamon http://192.168.0.188/ on
        EAP110 Outdoor http://192.168.0.96/
      title: Check de verbinding MQTT - HA
mode: single

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


Acties:
  • 0 Henk 'm!

  • deWit
  • Registratie: November 2004
  • Laatst online: 22:05

deWit

Niet goed, geld toch kwijt!

Topicstarter
Kun je niet beter kijken naar de last updated van 1 van de variablen, dus bijvoorbeeld een sensor ipv wanneer er een automatisering draait? Zie bijvoorbeeld hier https://community.home-as...s-stop-updating/125994/31

Acties:
  • 0 Henk 'm!

  • Possible
  • Registratie: Mei 2002
  • Laatst online: 23:12
@deWit Vraagje over die genertic thermostat;

climate:
- platform: generic_thermostat
name: Study
heater: switch.study_heater
target_sensor: sensor.study_temperature

Dit is het voorbeeld van ha website zelf. Maar een switch is perse verplicht? Anders werkt hij bij mij niet.


En dit stukje:

{% set WARsetpoint = [35, WARBasetemp - outsideTemp] | max %}

Dit is de maximale setpoint die hij gaat vragen naarmate het kouder wordt?

Ik heb bijvoorbeeld nu een TA ingesteld van 27 graden waarmee ik de boel nu prima warm hou op 22 graden :P

[ Voor 31% gewijzigd door Possible op 29-12-2021 20:49 ]

Gasloos sinds 2020 - 3240wp-Z Live 5100wp-W Live 8340wp-Merged Live Altantic Explorer 200 Live


Acties:
  • 0 Henk 'm!

  • deWit
  • Registratie: November 2004
  • Laatst online: 22:05

deWit

Niet goed, geld toch kwijt!

Topicstarter
Op zich heb je geen thermostaat nodig, zolang je maar iets hebt wat als setpoint kan dienen voor de ruimtetemperatuur. Ik heb een losse (loze) switch voor die generic thermostaat omdat hij graag een switch wil aansturen. Voordeel van de thermostaat is dat je dan een 'mooi' ding hebt ipv een textvakje.

Acties:
  • 0 Henk 'm!

  • Possible
  • Registratie: Mei 2002
  • Laatst online: 23:12
deWit schreef op woensdag 29 december 2021 @ 20:50:
Op zich heb je geen thermostaat nodig, zolang je maar iets hebt wat als setpoint kan dienen voor de ruimtetemperatuur. Ik heb een losse (loze) switch voor die generic thermostaat omdat hij graag een switch wil aansturen. Voordeel van de thermostaat is dat je dan een 'mooi' ding hebt ipv een textvakje.
Oke thx.. zal eens gaan kijken. Ik vraag mij af hoe het script naar de ingestelde delta T kijkt. Deze heb ik nu op 3 staan.

Is hier rekening mee gehouden?

Gasloos sinds 2020 - 3240wp-Z Live 5100wp-W Live 8340wp-Merged Live Altantic Explorer 200 Live


Acties:
  • 0 Henk 'm!

  • javaboon
  • Registratie: December 2009
  • Laatst online: 28-04 11:45
Ik ben hier toevallig op terecht gekomen. Ik ben nu nog met een WAR aan het stoken, maar zat te denken om met de heatshift de pomp wat rustiger te laten draaien. Ik krijg alleen heel raar gedrag als ik de heatshift via MQTT aanpas, de pomp zet die shift bijna gelijk weer terug naar 0 elke keer. (Omdat ik nog op WAR draai doe ik een shift ipv directe temperatuur). Iemand daar ook ervaring mee? Uiteindelijk is het de bedoeling om veel meer met de pomp te gaan spelen, onder andere door het buffervat op te warmen tijdens de teruglevering van mijn zonnepanelen als de thuisaccu al vol zit en nog meer van dat soort zaken. Nu ben ik nog aan het sukkelen op het gebied van die heatshift helaas.

duh, electrons are life


Acties:
  • 0 Henk 'm!

  • Jesse-
  • Registratie: Oktober 2015
  • Laatst online: 20:11
javaboon schreef op maandag 14 februari 2022 @ 14:58:
Ik ben hier toevallig op terecht gekomen. Ik ben nu nog met een WAR aan het stoken, maar zat te denken om met de heatshift de pomp wat rustiger te laten draaien. Ik krijg alleen heel raar gedrag als ik de heatshift via MQTT aanpas, de pomp zet die shift bijna gelijk weer terug naar 0 elke keer. (Omdat ik nog op WAR draai doe ik een shift ipv directe temperatuur). Iemand daar ook ervaring mee? Uiteindelijk is het de bedoeling om veel meer met de pomp te gaan spelen, onder andere door het buffervat op te warmen tijdens de teruglevering van mijn zonnepanelen als de thuisaccu al vol zit en nog meer van dat soort zaken. Nu ben ik nog aan het sukkelen op het gebied van die heatshift helaas.
Klinkt alsof de Pana vanuit HA een signaal krijgt om de shift weer naar 0 te zetten. Heb je alle MQTT berichten al eens in de gaten gehouden?

Acties:
  • 0 Henk 'm!

  • javaboon
  • Registratie: December 2009
  • Laatst online: 28-04 11:45
Jesse- schreef op maandag 14 februari 2022 @ 16:20:
[...]


Klinkt alsof de Pana vanuit HA een signaal krijgt om de shift weer naar 0 te zetten. Heb je alle MQTT berichten al eens in de gaten gehouden?
Ja, dat dacht ik eerst ook. Heb toen eens de hele heisamon yaml uitgeschakeld, gerestart en via een MQTT client opnieuw het commando herhaald. Zelfde probleem, bovendien zie ik het in de heisamon console uit de pomp komen, niet via MQTT. Ben er al een dagje of 2 mee aan het prutsen.

duh, electrons are life


Acties:
  • 0 Henk 'm!

  • theforestman
  • Registratie: November 2009
  • Laatst online: 01-05 15:29
Hallo allemaal

Ik gebruik de standaard Heishamon integratie in Homeassistant.
Nu wil ik onderstaande automation aanpassen zodat ik de SET16 SetCurves optie kan aansturen met een JSON document.

Dit is de huidige automatisering:
- alias: Set Z1
trigger:
platform: state
entity_id: input_number.heishamon_heatshift_z1
action:
service: mqtt.publish
data_template:
topic: panasonic_heat_pump/commands/SetCurves
retain: false #IMPORTANT! ALWAYS set retain flag false for commands!
payload_template: >-
{{ "%.0f" % (states('input_number.heishamon_heatshift_z1') | int) }}


De inhoud van het JSON document zou zoiets moeten worden:

{
"zone1": {
"heat": {
"target": {
"high": 35 ( moet dan zijn 'input_number.heishamon_heatshift_z1')
}
}
}
}

Is er iemand die weet hoe je dit in de automation kan opnemen zodat het JSON document wordt verstuurd op basis van de waarde die in de 'input_number.heishamon_heatshift_z1 wordt meegegeven?

Acties:
  • 0 Henk 'm!

  • theforestman
  • Registratie: November 2009
  • Laatst online: 01-05 15:29
theforestman schreef op maandag 3 oktober 2022 @ 11:03:
Hallo allemaal

Ik gebruik de standaard Heishamon integratie in Homeassistant.
Nu wil ik onderstaande automation aanpassen zodat ik de SET16 SetCurves optie kan aansturen met een JSON document.

Dit is de huidige automatisering:
- alias: Set Z1
trigger:
platform: state
entity_id: input_number.heishamon_heatshift_z1
action:
service: mqtt.publish
data_template:
topic: panasonic_heat_pump/commands/SetCurves
retain: false #IMPORTANT! ALWAYS set retain flag false for commands!
payload_template: >-
{{ "%.0f" % (states('input_number.heishamon_heatshift_z1') | int) }}


De inhoud van het JSON document zou zoiets moeten worden:

{
"zone1": {
"heat": {
"target": {
"high": 35 ( moet dan zijn 'input_number.heishamon_heatshift_z1')
}
}
}
}

Is er iemand die weet hoe je dit in de automation kan opnemen zodat het JSON document wordt verstuurd op basis van de waarde die in de 'input_number.heishamon_heatshift_z1 wordt meegegeven?
Antwoord reeds gehad via ander forum topic:

HeishaMon - Panasonic Aquarea monitoring

Acties:
  • 0 Henk 'm!

  • Mielemuis
  • Registratie: Oktober 2006
  • Laatst online: 20:59
Ik blijf maar ruzie houden met de integratie van mijn heisamon in mij HA,
Iemand die me erbij kan helpen?
mqtt draait,instructies gevolgd,
https://github.com/Egyras...grations/Home%20Assistant

zie nu wat entities in https://my.home-assistant.io/redirect/entities/ waar ik niks mee kan en nu??? |:(

Acties:
  • +1 Henk 'm!

  • pgeene
  • Registratie: December 2009
  • Laatst online: 05-05 07:31
waarom kun je er niets mee nu je ze hebt? Verhaal is me niet echt duidelijk.
Misschien een plaatje waarom het niet werkt als de topics er wel zijn.
Werkt je mqtt? Hier gaat het meestal mis.
Even checken met MQTT explorer http://mqtt-explorer.com/

p.s. al een restart gedaan nadat je alles toegevoegd had (misschien domme vraag)


Indien je HACS hebt, kun je ook deze proberen (maar alleen als je de topics ziet binnenkomen op je mqtt broker).
https://github.com/kamaradclimber/heishamon-homeassistant
Wel eerst de heishamon yaml file verwijderen.
Werkt voor mij prima. updates gaan op dit moment snel (is nog redelijk nieuw) en er wordt snel gereageerd op issues.
Alle topics worden aangemaakt en je moet zelf topics aan/uit zetten in de integratie.
Sommige staan van nature uit, sommige aan.
Ook "climate" entities worden aangemaakt.

[ Voor 5% gewijzigd door pgeene op 16-11-2022 08:40 ]

PV: Zuid 3.5kWp | Z-W 1.6kWp | Horizontaal (dunne film buis) 2kWp | totaal 7.15kWp | 5kW Panasonic H icm Heishamon | infrarood vloerverwarming | Label A in huis uit 1939


Acties:
  • 0 Henk 'm!

  • Mielemuis
  • Registratie: Oktober 2006
  • Laatst online: 20:59
@pgeene
Sorry als het niet duidelijk is.
De entities staan wel in de lijst, maar kan ze alleen maar uitlezen, ze hebben geen device id dus kan ze nergens aan koppelen, of netjes in een menu zetten.

Mqtt werkt, mosquitto staat op mn server en krijgt alles binnen, HA haalt ze weer binnen.

Zal vanavond de integratie uit de link die je stuurde eens proberen.

Acties:
  • 0 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
dacht vandaag eens kijken wat dit script nog doet.
maar met de huidige home assistant`s werkt die niet meer @deWit heb jij nog een aanpassing hiervoor

code:
1
2
3
Stopped because an error was encountered at 13 maart 2023 om 18:08:00 (runtime: 0.02 seconds)

Error rendering data template: ValueError: Template error: float got invalid input 'unknown' when rendering template '{% set outputtemp = states('sensor.aquarea_outlet_temperature') | float%} {% set targettemp = states('sensor.aquarea_outlet_target_tmperature') | float %} {% set frequency = states('sensor.aquarea_compressor_frequency') | float %} {% set setpoint = states('sensor.toon_thermostaat') | float %} {% set roomTemperature = states('sensor.toon_temperatuur') | float %} {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %} {% set deltaT = setpoint - roomTemperature %} {% set WARBasetemp = 33 %} {% set shift = 0 %} {% set hystOff = 0.5 %} {% set lowpowerlimittemp = 3 %} {% set newtarget = targettemp %} {% set WARsetpoint = WARBasetemp - outsideTemp %} {% if WARsetpoint < 38 %} {% set WARsetpoint = 38 %} {% endif %} {% if roomTemperature < (setpoint - 1.5) %} {% set shift=3%} {% elif roomTemperature < (setpoint -1 ) %} {% set shift=2%} {% elif roomTemperature < (setpoint - 0.5)%} {% set shift=1%} {% elif roomTemperature < (setpoint + 0.0)%} {% set shift = 0%} {% elif roomTemperature < (setpoint + 0.2)%} {% set shift = -1%} {% elif roomTemperature < (setpoint + 0.4)%} {% set shift = -2%} {% elif roomTemperature < (setpoint + 0.6)%} {% set shift = -3%} {% elif roomTemperature < (setpoint + 0.8)%} {% set shift = -4%} {% endif %} {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint-1) %} {% set newtarget = outputtemp - 1%} {% else %} {% set newtarget = WARBasetemp + shift%} {% endif %} {% if roomTemperature < (setpoint + hystOff ) %} {% set newtarget = newtarget %} {% if frequency == 0 and roomTemperature < setpoint %} {% set newtarget = outputtemp + 4 %} {% endif %} {% if frequency > 0 and outputtemp < 24 %} {% set newtarget = outputtemp + 2%} {% endif %} {% else %} {% set newtarget = outputtemp -3 %} {% endif %} {% if newtarget < 20 %} {% set newtarget = 20 %} {% endif %} {% if newtarget == targettemp %} {{ "%.0f" % (newtarget | int) }} {% else %} {{ "%.0f" % (newtarget | int) }} {% endif %}' but no default was specified


dit is de trace timeline met de error

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


Acties:
  • 0 Henk 'm!

  • Energiebesparing
  • Registratie: December 2020
  • Laatst online: 16-04 12:23
@Balans , heb je nog een nieuwere versie kunnen krijgen omdat deze niet meer werkte?

[ Voor 8% gewijzigd door Energiebesparing op 12-09-2023 19:12 ]


Acties:
  • +1 Henk 'm!

  • Balans
  • Registratie: September 2000
  • Laatst online: 05-05 08:49
Hallo Jaap78 als ik een responce had gekregen had ik hem gedeeld

Jij brand ik blus! 4.640kW no-zw WH-MDC05J3E5


  • Frixxion
  • Registratie: December 2022
  • Laatst online: 16-04 20:07
Ik heb ook een probleem in de heatshift instelling, deze accepteert waarden tot 44 graden. Echter kan de Panasonic J serie tot 65 graden water produceren (ongeacht hoe efficient dit is). Waar staat deze heishamon.yaml in homeasisstent zodat ik dit voor mijzelf zou kunnen aanpassen?
deWit schreef op vrijdag 10 december 2021 @ 13:55:
Volgens mij is dit vooral HA waar het misloopt en moet je in de heishamon.yaml even de heatshift-selector aanpassen:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# input_number #
################
input_number:
  heishamon_tank_temp:
    name: Set Tank Temperature
    min: 40
    max: 75
    step: 1

  heishamon_heatshift:
    name: Set Heatshift Temperature
    min: 18
    max: 35
    step: 1

Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
Geen idee of het wat is, maar in je log lijkt een typfout te staan: sensor.aquarea_outlet_target_tmperature

Dus ergens wordt de verkeerde sensor geraadpleegd, denk ik zo.

In mijn HA is het: sensor.aquarea_outlet_target_temperature
Balans schreef op maandag 13 maart 2023 @ 18:10:
dacht vandaag eens kijken wat dit script nog doet.
maar met de huidige home assistant`s werkt die niet meer @deWit heb jij nog een aanpassing hiervoor

code:
1
2
3
Stopped because an error was encountered at 13 maart 2023 om 18:08:00 (runtime: 0.02 seconds)

Error rendering data template: ValueError: Template error: float got invalid input 'unknown' when rendering template '{% set outputtemp = states('sensor.aquarea_outlet_temperature') | float%} {% set targettemp = states('sensor.aquarea_outlet_target_tmperature') | float %} {% set frequency = states('sensor.aquarea_compressor_frequency') | float %} {% set setpoint = states('sensor.toon_thermostaat') | float %} {% set roomTemperature = states('sensor.toon_temperatuur') | float %} {% set outsideTemp = states('sensor.aquarea_outdoor_ambient') | float %} {% set deltaT = setpoint - roomTemperature %} {% set WARBasetemp = 33 %} {% set shift = 0 %} {% set hystOff = 0.5 %} {% set lowpowerlimittemp = 3 %} {% set newtarget = targettemp %} {% set WARsetpoint = WARBasetemp - outsideTemp %} {% if WARsetpoint < 38 %} {% set WARsetpoint = 38 %} {% endif %} {% if roomTemperature < (setpoint - 1.5) %} {% set shift=3%} {% elif roomTemperature < (setpoint -1 ) %} {% set shift=2%} {% elif roomTemperature < (setpoint - 0.5)%} {% set shift=1%} {% elif roomTemperature < (setpoint + 0.0)%} {% set shift = 0%} {% elif roomTemperature < (setpoint + 0.2)%} {% set shift = -1%} {% elif roomTemperature < (setpoint + 0.4)%} {% set shift = -2%} {% elif roomTemperature < (setpoint + 0.6)%} {% set shift = -3%} {% elif roomTemperature < (setpoint + 0.8)%} {% set shift = -4%} {% endif %} {% if outsideTemp > lowpowerlimittemp and roomTemperature > (setpoint-1) %} {% set newtarget = outputtemp - 1%} {% else %} {% set newtarget = WARBasetemp + shift%} {% endif %} {% if roomTemperature < (setpoint + hystOff ) %} {% set newtarget = newtarget %} {% if frequency == 0 and roomTemperature < setpoint %} {% set newtarget = outputtemp + 4 %} {% endif %} {% if frequency > 0 and outputtemp < 24 %} {% set newtarget = outputtemp + 2%} {% endif %} {% else %} {% set newtarget = outputtemp -3 %} {% endif %} {% if newtarget < 20 %} {% set newtarget = 20 %} {% endif %} {% if newtarget == targettemp %} {{ "%.0f" % (newtarget | int) }} {% else %} {{ "%.0f" % (newtarget | int) }} {% endif %}' but no default was specified


dit is de trace timeline met de error

Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@wheli De verschillende automations + wat ze doen heb ik hier gepost: https://gathering.tweakers.net/forum/view_message/76992830

Ik zal de automations zelf (yaml) nog even hier delen. Daar zitten wel entities in die niet default zijn.

Acties:
  • +1 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Ik heb eerder gepost dat ik bezig ben met het aansturen van de Panasonic via Home Assistant. Kreeg er wat reacties/vragen over en vond vandaag ook dit topic. Hierbij deel ik even wat ik tot nu toe heb. Wie weet hebben anderen er iets aan. Verbeteringen zijn natuurlijk ook welkom :)
- Het is allemaal lekker experimenteren op dit moment
- Het draait een maandje
- werkt bij mij goed
- gebruik wat notifications voor logging
- gebruik delays om het aantal shifts te beperken. Dat kan veel handiger.

Mijn doel voor nu:
- war stoken met stooklijn
- fysieke thermostaat in woonkamer (WAF + temperatuur bepalen)
- Zo lang mogelijke runs / niet pendelen
- Ik vind een precieze temperatuur minder belangrijk.

Eventueel later:
- Nachtverlaging als dit zinvol is
- Runs sturen naar gunstig moment op de dag als de warmtepomp niet 24/7 hoeft te draaien (dynamisch of post salderen)

Daarvoor gebruik ik 3 template/helper sensors en 3 automations:
Template/Helpers:
1. binary_sensor.aquarea_compressor_running:
- Compressor frequency is numeric. Bij triggers/conditions kun je dan geen 'for' gebruiken. Dat wil ik graag om te bepalen hoe lang mijn run is of hoe lang de compressor al uit staat.

2. sensor.woonkamer_lisa_temp_difference:
- thermostaat setpoint - daadwerkelijke temperatuur.

3. sensor.thermostaat_derivative:
- Bepaalt de snelheid waarmee de temperatuur in huis stijgt/daalt.
automations
1. Een shift +1
- triggered als de temperatuur in huis te laag is + deze niet voldoende stijgt + de compressor draait of deze > X uur uitstaat.
- Doet een shift +1 en zet eventueel de WP aan als deze uit staat.

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
alias: warmtepomp - thermostaat +1
description: ""
trigger:
  - platform: state
    entity_id:
      - binary_sensor.aquarea_compressor_running
    attribute: position
    to: above
    for:
      hours: 0
      minutes: 30
      seconds: 0
  - platform: state
    entity_id:
      - sensor.woonkamer_lisa_temp_difference
condition:
  - condition: numeric_state
    entity_id: sensor.thermostaat_derivative
    below: 0.4
  - condition: numeric_state
    entity_id: sensor.woonkamer_lisa_temp_difference
    below: -0.3
  - alias: compressor draait of is lang genoeg uit.
    condition: or
    conditions:
      - condition: state
        entity_id: binary_sensor.aquarea_compressor_running
        state: "on"
      - condition: state
        entity_id: binary_sensor.aquarea_compressor_running
        state: "off"
        for:
          hours: 2
          minutes: 0
          seconds: 0
      - condition: numeric_state
        entity_id: sensor.woonkamer_lisa_temp_difference
        below: -1
action:
  - service: notify.pushover
    data:
      message: "triggered automation: {{ this.attributes.friendly_name }} (heatshift +1)"
  - if:
      - condition: state
        entity_id: binary_sensor.aquarea_compressor_running
        state: "off"
    then:
      - service: switch.turn_on
        data: {}
        target:
          entity_id: switch.panasonic_heat_pump_main_heatpump_state
      - service: notify.pushover
        data:
          message: compressor start
  - service: number.set_value
    data:
      value: >-
        {{ states('number.panasonic_heat_pump_main_z1_heat_request_temp') |
        float + 1 }}
    target:
      entity_id: number.panasonic_heat_pump_main_z1_heat_request_temp
    alias: Heat shift +1
  - delay:
      hours: 0
      minutes: 30
      seconds: 0
      milliseconds: 0
mode: single



2. Een shift -1
- triggered als de temperatuur in huis te hoog is + stijgt.
- Als de buiten temperatuur < 10ºc of de compressor < X uur draait dan shift deze alleen als de compressor niet dreigt uit te vallen.

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
alias: warmtepomp - thermostaat -1
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.woonkamer_lisa_temp_difference
condition:
  - condition: numeric_state
    entity_id: sensor.thermostaat_derivative
    above: 0.1
  - condition: numeric_state
    entity_id: sensor.woonkamer_lisa_temp_difference
    above: 0.3
  - alias: Compressor kan lager of draait lang genoeg
    condition: or
    conditions:
      - condition: numeric_state
        entity_id: sensor.panasonic_heat_pump_main_compressor_freq
        above: 25
      - condition: state
        entity_id: binary_sensor.aquarea_compressor_running
        state: "on"
        for:
          hours: 3
          minutes: 0
          seconds: 0
action:
  - choose:
      - conditions:
          - condition: numeric_state
            entity_id: sensor.buiten_temperatuur
            below: 8
          - condition: numeric_state
            entity_id: sensor.panasonic_heat_pump_main_compressor_freq
            below: 22
        sequence: []
    default:
      - service: number.set_value
        data:
          value: >-
            {{ states('number.panasonic_heat_pump_main_z1_heat_request_temp') |
            float - 1 }}
        target:
          entity_id: number.panasonic_heat_pump_main_z1_heat_request_temp
        alias: Heat shift -1
      - service: notify.pushover
        data:
          message: "triggered automation: {{ this.attributes.friendly_name }}"
  - delay:
      hours: 0
      minutes: 30
      seconds: 0
      milliseconds: 0
mode: single


3. WP uit bij compressor stop:
- zet de warmtepomp uit zodra de compressor stopt (Nu nog "main power" maar straks is dit de thermostaat input, CN2 uit mijn hoofd). Dit voorkomt dat de WP uit zichzelf weer start en gaat pendelen.

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
alias: warmtepomp - uit na compr stop
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.panasonic_heat_pump_main_compressor_freq
    below: 1
condition:
  - condition: state
    entity_id: switch.panasonic_heat_pump_main_heatpump_state
    state: "on"
  - condition: state
    entity_id: switch.panasonic_heat_pump_main_defrosting_state
    state: "off"
    for:
      hours: 0
      minutes: 2
      seconds: 0
action:
  - service: switch.turn_off
    data: {}
    target:
      entity_id: switch.panasonic_heat_pump_main_heatpump_state
  - service: automation.turn_off
    data:
      stop_actions: false
    target:
      entity_id: automation.warmtepomp_uit_na_compr_stop
    enabled: false
  - service: notify.pushover
    data:
      message: Warmtepomp - compressor gestopt en warmtepomp uitgeschakelt
mode: single

Acties:
  • 0 Henk 'm!

  • wheli
  • Registratie: Mei 2013
  • Laatst online: 05-05 13:57
Dank voor het delen!
Ik ben echt nieuw in HA, ben er mee begonnen zodat ik via Heishamon de Panasonic aan kan sturen en uit kan lezen.

Ik ben vooral een beetje bang dat ik per ongeluk de hele boel dicht laat vriezen als ik iets verkeerd automatiseer ;)

Ik stook net als jij WAR maar met de controller in de woonkamer. Ik heb nu in HA een simpel tijdschema gemaakt met 2 graden nachtverlaging (19 graden, dus pana uit bij 18) en om 10:00 uur weer aan naar 21 graden. Op die manier een zo hoog mogelijke COP en lange runs. Met deze temperaturen (10-14 graden) zijn mijn runs echt kort, 1-3 uur maximaal.
Tenslotte een simpele notificatie op mijn telefoon als het aantal watt <30 is, als ik dan denk dat hij uit gaat omdat hij zn warmte niet kwijt kan (bv door instraling zon) zet ik hem handmatig van 21 naar 19.

ID.4 1st | 2320 Wp NO | 3200 Wp ZW | Climarad Sensa V2X | Pana WH-MDC07J3E5


Acties:
  • 0 Henk 'm!

  • timovd
  • Registratie: Maart 2002
  • Laatst online: 22:04

timovd

Voorsprong door techniek

Is er iets veranderd in HA 2023.11 omtrent onderstaande?
Ik had scripts gemaakt met een dummy waarde in de device_id voor de Aquarea switches (main power en heat mode option) en het zetten van de kamerthermostaat op heat (of cool in geval van cooling). Met één script zet ik drie waardes in één keer aan/om en wordt gekoeld/verwarmd.
Ik kon er natuurlijk op wachten dat dit een keer kapot zou gaan door het gebruiken van een dummy device_id. Maar is er een andere optie voor om een script te maken waarbij deze drie acties worden uitgevoerd? Device_id verwijderen biedt geen soelaas.

Huidig script voor verwarmen:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
alias: turn on heat
sequence:
  - device_id: 34a3d6b194edd5f755ce274895***
    domain: select
    entity_id: input_select.heishamon_heatmode
    type: select_option
    option: Heat
  - device_id: 34a3d6b194edd5f755ce274895***
    domain: switch
    entity_id: switch.aquarea_main_power
    type: turn_on
  - device_id: 79265fb67163c35f87036c8cfa***
    domain: climate
    entity_id: climate.living
    type: set_hvac_mode
    hvac_mode: heat
mode: single
icon: mdi:radiator

Gasloos huis 9kW Panasonic WH-MDC09J3E5 | Atlantic Explorer V4 270L | 8715Wp @ SMA Tripower 6.0-3AV-40 (4150Wp NO, 4565Wp ZW)


Acties:
  • +1 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@timovd Ik begreep dat er iets met device IDs misgaat in de update naar 2023.11.

Zie: TheFes in "Home Assistant: Open source Python3 home automation - deel 5"

Jij zou in je script service calls kunnen gebruiken ipv devices.

Acties:
  • 0 Henk 'm!

  • timovd
  • Registratie: Maart 2002
  • Laatst online: 22:04

timovd

Voorsprong door techniek

Nieuw script:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
alias: turn on heat
sequence:
  - service: climate.set_hvac_mode
    data:
      hvac_mode: heat
    target:
      entity_id: climate.living
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.aquarea_main_power
  - service: input_select.select_option
    data:
      option: Heat
    target:
      entity_id: input_select.heishamon_heatmode
mode: single
icon: mdi:radiator


Wamtepomp staat nu zachtjes te pruttelen, dus die ga ik niet uitschakelen voor het testen.
Kamerthermostaat uitgeschakeld en die is vervolgens weer ingeschakeld middels dit script.

Gasloos huis 9kW Panasonic WH-MDC09J3E5 | Atlantic Explorer V4 270L | 8715Wp @ SMA Tripower 6.0-3AV-40 (4150Wp NO, 4565Wp ZW)


Acties:
  • 0 Henk 'm!

  • Shizzle
  • Registratie: Januari 2023
  • Laatst online: 15-04 21:18
Vraagje, hebben jullie in home assistant een waarde op je dashboard voor KWH per dag? Ik had dit eerder wel maar sinds recente updates niet meer.
Ik weet dat er iets veranderd is met naamgeving van “energy” naar “power”.
Het lukt me dus niet om een som van het verbruik op het dashboard te krijgen.

Hebben jullie dat wel?

Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Het helpt als je even je yaml / code deelt denk ik.

Acties:
  • 0 Henk 'm!

  • Shizzle
  • Registratie: Januari 2023
  • Laatst online: 15-04 21:18
Sorry… welke yalm moet ik dan posten? (Beginneling).
Ik heb overigens HA draaien met influxdb en grafana maar krijg het zowel in grafana als in HA dashboard niet voor elkaar.

Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Kun je dan posten wat je eerder hebt gemaakt en werkte?

Acties:
  • 0 Henk 'm!

  • Shizzle
  • Registratie: Januari 2023
  • Laatst online: 15-04 21:18
Aha, ik had de werkende versie nog draaien (andere virtual machine op synology) maar ik zie nu dat ik het daar allemaal iets anders geinstalleerd heb blijkbaar. In de oude VM heb ik folder met Packages met daar heishamon.yaml. In de nieuwe installatie heb ik alles in de Custom Components folder zitten. Eigenlijk geen idee hoe ik dat nou gedaan heb destijds.

Ik zal eerst uitzoeken hoe dat nou zit voor ik weer met de vraag hier kom.

Acties:
  • 0 Henk 'm!

  • HB16
  • Registratie: November 2023
  • Laatst online: 14-02-2024
Hallo denneappel
Daarvoor gebruik ik 3 template/helper sensors en 3 automations:
Template/Helpers:
1. binary_sensor.aquarea_compressor_running:
- Compressor frequency is numeric. Bij triggers/conditions kun je dan geen 'for' gebruiken. Dat wil ik graag om te bepalen hoe lang mijn run is of hoe lang de compressor al uit staat.

2. sensor.woonkamer_lisa_temp_difference:
- thermostaat setpoint - daadwerkelijke temperatuur.

3. sensor.thermostaat_derivative:
- Bepaalt de snelheid waarmee de temperatuur in huis stijgt/daalt.
kun je dit iets meer uitleggen met die HA Helpers.
Krijg het niet helmaal voor elkaar

Acties:
  • +1 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@HB16

1. binary_sensor.aquarea_compressor_running: Is een threshold helper. Hier staat wat uitleg: https://www.home-assistant.io/integrations/threshold/

Zo ziet het er bij mij uit na deze te hebben gemaakt. Het is een binary sensor die aangeeft of de compressor draait
Afbeeldingslocatie: https://tweakers.net/i/Ty_2M78d3zhIoxCwu4-TYp14bNc=/x800/filters:strip_exif()/f/image/WNkJI5WABXM7XxCTDZsbp9zB.png?f=fotoalbum_large

En dit zijn de instellingen van mijn threshold sensor. Als de frequency van de compressor boven de 18hz komt dan beschouw ik de compressor als draaiende.
Afbeeldingslocatie: https://tweakers.net/i/TTg2PWEC26ZvGPk8GLN4v4XwLmE=/x800/filters:strip_exif()/f/image/STo6sMGmtlU8j0ZqgjB5WsbB.png?f=fotoalbum_large

2. sensor.woonkamer_lisa_temp_difference: Dit is een template sensor. Geeft aan wat het temperatuur verschil is tussen het setpoint van de thermostaat en de ruimte temperatuur. Als de thermostaat op 21ºc staat en het is 19.8ºc in mijn woonkamer dan geeft deze sensor als waarde -1.2ºc

YAML:
1
2
3
4
5
6
template:
  - sensor:
      - name: "woonkamer_lisa_temp_difference"
        unit_of_measurement: "ºC"
        state: > 
          {{ "%.1f" % float(states('sensor.woonkamer_lisa_temperature') | float - states('sensor.woonkamer_lisa_setpoint') | float) }}


3. sensor.thermostaat_derivative: Geeft aan met hoe snel de woonkamer opwarmt / afkoelt in graden per uur.
Hiervoor gebruik ik een derivative helper. Zie: https://www.home-assistant.io/integrations/derivative/

Op dit moment staat de warmtepomp uit daalt de temperatuur met 0.79ºc per uur.
Afbeeldingslocatie: https://tweakers.net/i/CJNWCEgDdBmCRXdpvCn8LhNAzAo=/800x/filters:strip_exif()/f/image/ACWlPwZ3EVI4h07wBkRQNT8z.png?f=fotoalbum_large

Dit zijn de door mij gebruikte opties voor deze sensor:
Afbeeldingslocatie: https://tweakers.net/i/8xWxPZyBArFzu6lLKFhT6JeQ5Qw=/x800/filters:strip_exif()/f/image/9byoI8mNO5jlOMi9sAUF5knt.png?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Vandaag lag de buiten temperatuur tussen 10ºc en 13ºc. Mij 9J heeft 3 runs van iets meer dan 3 uur gedaan om 100 jaar oude huis met matige isolatie op temperatuur te houden. De temperatuur in de woonkamer schommelde tussen de 19.4ºc en 21ºc.

Afbeeldingslocatie: https://tweakers.net/i/_Miue4sCu-aBHjhJMxg09KRUXSI=/800x/filters:strip_exif()/f/image/yn1RM7mPqj3qj46DMo1MXBPl.png?f=fotoalbum_large

Op dit moment ben ik bezig om deze lange runs zoveel mogelijk te schuiven richting gunstige momenten. 3 uur tussen runs vind ik wel het maximale maar ik zal bij voldoende export de runs sneller laten starten en bij onvoldoende export max 3 uur laten wachten bijvoorbeeld. Dit is wat experimenteren maar het lijkt mij een mooie oplossing.

Acties:
  • 0 Henk 'm!

  • HB16
  • Registratie: November 2023
  • Laatst online: 14-02-2024
Thanks

Daar kan ik wel wat mee. Zit alleen ff te kijken hoe ik de difference bepaal met de TADO thermostaat.
Ik heb alleen maar een temperatuur sensor en vocht sensor van deze TADO. Geen setpoint waarde.

grt Harm

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Hoe schakel je op dit moment je warmtepomp uit als het te warm wordt?

Acties:
  • +1 Henk 'm!

  • HB16
  • Registratie: November 2023
  • Laatst online: 14-02-2024
Op het moment draait deze WAR met stooklijn -5 35 15 30 .
Ik heb de 7KW WP aangesloten op mijn zonnecollector buffervat.
De wp stopt op gegeven moment als setpoint is behaald,dus puur op eigen regeling voor nu. Betekend wel dat de waterpomp blijft draaien.

Voor mijn vloer verwarming heb ik aparte regelgroep (staat op 28 graden) die dus nu door de tado thermostaat geregeld wordt.
Ik wil dmv home assistent de warmtepomp en zonneboiler regelaar met cv regelgroepen met elkaar koppelen.
Lange runs maken net wat jij hebt gedaan.
Voor een dag als vandaag verbruik ik 6Kw per dag voor 80 M2 vloer verwarming op 20 graden te houden.
Ik tweak af en toe handmatig via HA het setpoint van de WP tussen -2 en 0.


De regeling die jij hebt gemaakt vind ik interessant om dit te kunnen realiseren.
Zoals te zien wil van de kort runs af.

Afbeeldingslocatie: https://tweakers.net/i/b8JPNPInx9lpwT7K20N64-EwEtQ=/full-fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():fill(white):strip_exif()/f/image/Aj7fF3aX9EJMMVaBZrAWCU2C.jpg?f=user_large

grt harm

[ Voor 6% gewijzigd door HB16 op 19-11-2023 19:51 ]


Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
@denneappel

Ik ben een heel eind gekomen met je script, maar ik begrijp niet hoe je

2. sensor.woonkamer_lisa_temp_difference:
- thermostaat setpoint - daadwerkelijke temperatuur.

Deze voor elkaar krijgt.

Zou je deze kunnen toelichten?

Ik weet namelijk niet hoe je aan de setpoint komt. Ik heb alleen een generieke thermostaat in gebruik. Dat is een climate. Deze heeft wel weer een attribute temperature, die geeft de setpoint temp weer. Maar ik weet niet hoe ik die moet integeren om het verschil te berekenen.

[ Voor 69% gewijzigd door O085105116N op 13-01-2024 23:46 ]


Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
Setpoint is de gewenste temperatuur. Ik kan je hoop ik helpen als je wat info post.
Ben je bekend met developer tools > template? Daar kun je makkelijk alle attributen ophalen.

Zo ziet dat er bij mij dan uit.

Afbeeldingslocatie: https://tweakers.net/i/fnd4UVU6yoj_ZwAnhHvLSV1Ijsc=/800x/filters:strip_icc():strip_exif()/f/image/AVxuQHQ4JMFB3meTMHz4wrmC.jpg?f=fotoalbum_large

En als je van elkaar aftrekt krijg je het verschil te zien.
Django/Jinja:
1
{{ states.climate.woonkamer_lisa.attributes.current_temperature - states.climate.woonkamer_lisa.attributes.temperature }}

Acties:
  • +1 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
@denneappel

Het is gelukt met je uitleg.

Ik heb deze toegevoegd aan configuration.yaml

code:
1
2
3
4
5
6
7
template:
  - sensor:
      - name: "woonkamer_temp_difference"
        unique_id: woonkamer_temp_difference
        unit_of_measurement: "ºC"
        state: > 
          {{ states.climate.thermostaat_woonkamer.attributes.current_temperature - states.climate.thermostaat_woonkamer.attributes.temperature }}


Ik zag alleen dat de temp derivative 24c/h is.... (Dat heeft zichzelf net gecorrigeerd)

Ben benieuwd of de scripts gaan werken nu. Ik zal wel e.e.a. moet gaan fintunen vermoed ik.

Edit: de +1 heeft net automatisch een correctie gedaan.

[ Voor 7% gewijzigd door O085105116N op 14-01-2024 13:00 ]


Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@O085105116N Finetunen inderdaad :)

Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
Heel erg bedankt voor je hulp. Ik ga nu naar de veranderende cijfertjes staren.

Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
@denneappel

Zojuist werd de setpoint geraakt, daarna door naar een verschil van 0,3 graden. De heatshift -1 werd uitgevoerd, daarna schakelde de WP direct uit.

Is dit het begoogde gedrag? Dus nu wachten totdat de WP zichzelf weer inschakelt?
Ik gebruik overigens WAR op de WP, moet ik deze aanpassen naar direct?

Compressor freq was 60Hz op moment van uitschakelen.

mmm, ik denk dat de generic thermostaat dit heeft gedaan. Die moet ik even om de tuin zien te leiden denk ik.

[ Voor 21% gewijzigd door O085105116N op 14-01-2024 22:41 ]


Acties:
  • 0 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@O085105116N Bij een freq van 60Hz en een shift -1 zou ik geen compressor stop verwachten inderdaad ;-)

Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
Ik zie met het scripts van @denneappel al een verschil in comfort en gebruik. Er is nog geen parameter verder aangepast. Temperatuur schommelt minimaal en verbruik is ook lager dan voorheen (ik deed alles handmatig instellen).

Acties:
  • 0 Henk 'm!

  • bartvl
  • Registratie: Oktober 2002
  • Laatst online: 22:09

bartvl

Vlieg! Kan ik niet. Te laat...

Ik heb een losse vraag, misschien wat basic, over Heishamon icm Home Assistant. Ik gebruik de standaard MQTT add-on als broker.

Als ik in mijn Heisha integratie kijk dan vallen de waardes vaak weg naar -128 e.d. Lijkt er op dat de waardes eens in de zoveel tijd geupdatet worden en niet behouden blijven tot de volgende update ronde. Weten jullie wat ik verkeerd doe?

Life is not about specs, it is about joy!


Acties:
  • 0 Henk 'm!

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
bartvl schreef op woensdag 17 januari 2024 @ 13:04:
Ik heb een losse vraag, misschien wat basic, over Heishamon icm Home Assistant. Ik gebruik de standaard MQTT add-on als broker.

Als ik in mijn Heisha integratie kijk dan vallen de waardes vaak weg naar -128 e.d. Lijkt er op dat de waardes eens in de zoveel tijd geupdatet worden en niet behouden blijven tot de volgende update ronde. Weten jullie wat ik verkeerd doe?
In heishamon zelf. TOP10 geeft bij mij -128c aan. Dat is de dhw temp. maar die heb ik niet. Dus geen gemeten waarde.

Kijk dus eerst even in heishamon zelf naar de waardes. Ik denk dat ze afkomstig zijn van zaken waar geen sensor readings van zijn.

Acties:
  • 0 Henk 'm!

  • bartvl
  • Registratie: Oktober 2002
  • Laatst online: 22:09

bartvl

Vlieg! Kan ik niet. Te laat...

Nee ik bedoel: het zijn echt waardes die juist worden weergegeven. En een paar seconde later staan ze op -128 bijv.

Life is not about specs, it is about joy!


Acties:
  • 0 Henk 'm!

  • Separator
  • Registratie: Juli 2023
  • Laatst online: 00:07
Ik heb Heishamon al een tijdje in listen mode draaien en wil graag eea zichtbaar gaan maken in Home Assistant. Ik krijg het niet aan het werk. Ik zie geen (al dan niet verborgen) aquarea entiteiten terug. Wat zie ik over het hoofd?

HACS had ik al en ik heb de one click installatie gevolgd op https://github.com/kamaradclimber/heishamon-homeassistant. Hoe kan ik zien of die installatie gelukt is? Het enige wat mij opvalt is dat ik nu een Aquarea yaml zie:

Afbeeldingslocatie: https://tweakers.net/i/KPqGaU5SiXY8bEp38d8wj6SYV4g=/232x232/filters:strip_exif()/f/image/GDZBQ41uc1Ijnsszv9ZxOanY.png?f=fotoalbum_tile

De core-mosquitto MQTT integratie heb ik ingesteld op het topic: panasonic_heat_pump. Wanneer ik daar de configuratie van open en op "start listening" klik dan lijkt er niets te gebeuren. Ik heb daarna MQTT explorer gedownload en die kan ik succesvol verbinden met Home Assistant. Vervolgens heb ik een "hallo wereld" gestuurd naar het topic panasonic_heat_pump en die komt binnen:

Afbeeldingslocatie: https://tweakers.net/i/oGdY93mxj1P51UMjypnGxycj3oA=/232x232/filters:strip_exif()/f/image/oijLrVLQJ1UsRDpMyx2tJuxD.png?f=fotoalbum_tile

In Heishamon zijn de settings zoals in de onderstaande screenshot en dat is hetzelfde als ik in MQTT explorer invul.

Afbeeldingslocatie: https://tweakers.net/i/bVgKdLYems5PHsJ2-YNAwfBruP0=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/9kpH6HBZe15KXKAHDvu4Cg4a.png?f=user_large

Hier loop ik vast. Welke vervolgstap zie ik over het hoofd?

[ Voor 6% gewijzigd door Separator op 18-01-2024 07:02 ]


Acties:
  • 0 Henk 'm!

  • bartvl
  • Registratie: Oktober 2002
  • Laatst online: 22:09

bartvl

Vlieg! Kan ik niet. Te laat...

Hoe heb je de gebruiker en wachtwoord ingesteld? Heb je daar een separaat account voor aangemaakt in Home Assistant?

Life is not about specs, it is about joy!


Acties:
  • +1 Henk 'm!

  • bartvl
  • Registratie: Oktober 2002
  • Laatst online: 22:09

bartvl

Vlieg! Kan ik niet. Te laat...

bartvl schreef op woensdag 17 januari 2024 @ 20:37:
Nee ik bedoel: het zijn echt waardes die juist worden weergegeven. En een paar seconde later staan ze op -128 bijv.
Mijn eigen issue lijkt opgelost. Ik had de Heishamon module ruim een jaar geleden besteld. Bij ingebruikname geen firmware update ofzo gedaan. Nu toch maar wel gedaan. Dit lijkt het probleem op te lossen.

Ter illustratie: het moment van de firmware update is wel aardig aan te wijzen 😉.
Afbeeldingslocatie: https://tweakers.net/i/_lzEQ1manyIMVxiwPmvPBwFQF_w=/800x/filters:strip_icc():strip_exif()/f/image/YGgKYqQWdf9SrHgHhZ9LLHio.jpg?f=fotoalbum_large

[ Voor 35% gewijzigd door bartvl op 17-01-2024 22:45 ]

Life is not about specs, it is about joy!


Acties:
  • 0 Henk 'm!

  • Separator
  • Registratie: Juli 2023
  • Laatst online: 00:07
bartvl schreef op woensdag 17 januari 2024 @ 22:28:
Hoe heb je de gebruiker en wachtwoord ingesteld? Heb je daar een separaat account voor aangemaakt in Home Assistant?
Ik heb een separaat account in home assistant. Die user en password heb ik ook ingesteld in de broker en op heishamon.

Misschien nog noemenswaardig is dat mijn mqtt integratie weergegeven wordt zoals hieronder, dus met de configure button. Dat ken ik alleen van integraties die ik nog niet in gebruik heb.

Afbeeldingslocatie: https://tweakers.net/i/FlUiHjzWfbjI0Sns4PNzuhiKWNI=/800x/filters:strip_exif()/f/image/g2TA51mDjjYZOe89GLfXThvY.png?f=fotoalbum_large

[ Voor 93% gewijzigd door Separator op 18-01-2024 08:32 ]


Acties:
  • 0 Henk 'm!

  • WOrange
  • Registratie: September 2001
  • Laatst online: 23-04 10:24
Momenteel heb ik mijn Heishamon nog in listen only draaien en wordt de Panasonic geactiveerd vanaf een EMOS aan/uit thermostaat. Nu wil ik graag nachtverlaging toepassen. Mijn idee is om een virtuele thermostaat aan te maken in Home Assistant welke de temperatuur van een bestaande sensor uitleest en die dan weer doorgeeft aan de warmtepomp. De fysieke thermostaat komt dan te vervallen. En uiteraard haal ik dan de wifi-module weg en laat ik Heishamon alles aansturen.
Heeft iemand dit al draaien en zo ja, hoe?

Oriëntatie warmtepomp woning 1980


Acties:
  • 0 Henk 'm!

  • WOrange
  • Registratie: September 2001
  • Laatst online: 23-04 10:24
Met behulp van het Node Red Dashboard is het gelukt. Zie Heishamon <> Node Red voor Panasonic warmtepompen.

Oriëntatie warmtepomp woning 1980


Acties:
  • +2 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@hemertje @bbbrumbrum Dit leek me het beste topic om te reageren. Jullie vroegen naar de logica om te voorkomen dat de Panasonic te lang draait zonder compressor. Panasonic noemt dit in de manual de 'thermo off' status, dus ik noem dat ook zo.

Let wel, ik weet niet of dit een goede oplossing is, maar vooralsnog lijkt het te werken. Ik kan mijn volledige logica niet delen omdat dit een beetje een gedrocht is geworden die niet meer uit te leggen is. Staat nog op mijn to do lijst om dit beter te maken. Beschouw dit dus als een opzetje en geen volledige oplossing. Wat eigen inzicht is dus wel nodig en het is verder ook op eigen risico, het is geen copy-paste oplossing.

Ik heb een 7kW J-series + heishamon die ik via HA met de heishamon integratie aanstuur https://github.com/kamaradclimber/heishamon-homeassistant
De Panasonic is ingesteld op directe temperatuur, omdat ik de stooklijn logica ook in Home Assistant draai. Als jouw WAR op de Panasonic draait moet je met shift commando's de temperatuur sturen, hier heb ik zelf geen ervaring mee maar aan de logica om te bepalen wanneer er iets moet gebeuren verandert niet denk ik.

Ik werk graag met template boolean helpers (status aan/uit) om statussen te bepalen. Voor deze automation gebruik ik de volgende helpers:

Heating_now_running
YAML:
1
{{states('sensor.panasonic_heat_pump_main_compressor_freq')|float(0) >= 5 and states('sensor.panasonic_heat_pump_main_threeway_valve_state')=="Room"}}

Om te bepalen of de verwarming actief is met de compressor aan, je zou eventueel de defrost state nog mee kunnen nemen in de vergelijking, ik doe dat pas in de automation zelf. Let op dat deze status soms heel even fout positief kan zijn (bijvoorbeeld na een DHW run). In mijn automations houd ik daar rekening mee door pas te triggeren als deze 1 minuut de status 'aan' heeft.
Na het typen van de rest van deze reactie realiseer ik me dat ik deze Helper niet gebruik in deze automation maar ik laat hem toch even staan.

Heating_thermo_off
YAML:
1
{{states('sensor.panasonic_heat_pump_main_pump_speed')|float(0)>0 and states('sensor.panasonic_heat_pump_main_compressor_freq')|float(0) <= 5 and states('sensor.panasonic_heat_pump_main_threeway_valve_state')=="Room"}}

Om te bepalen of de verwarming actief is maar de compressor uit. Ook hiervoor geldt dat deze soms heel even fout positief kan zijn. Ook is deze positief als de heat modus wordt ingeschakeld, de pomp gaat dan altijd eerst 3 minuten draaien voordat de Panasonic besluit of de compressor aanmoet.

temperature_goal_reached
YAML:
1
{{states('sensor.inside_temperature_link')|float(25)>=state_attr('climate.heating_thermostat', 'temperature')|float(25)}}

Om te bepalen of de ruimte temperatuur bereikt is (groter of gelijk dan de ingestelde temperatuur op de thermostaat).

Hiermee maak ik de volgende automation:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
alias: Escape_thermo_off
description: ""
triggers:
  - entity_id:
      - binary_sensor.heating_thermo_off
    to: "on"
    for:
      hours: 0
      minutes: 5
      seconds: 0
    id: thermo_off
    trigger: state
  - entity_id:
      - binary_sensor.heating_thermo_off
    to: "on"
    for:
      hours: 0
      minutes: 10
      seconds: 0
    id: thermo_off
    trigger: state
  - entity_id:
      - binary_sensor.heating_thermo_off
    to: "on"
    for:
      hours: 0
      minutes: 15
      seconds: 0
    id: thermo_off
    trigger: state
  - entity_id:
      - binary_sensor.heating_thermo_off
    to: "on"
    for:
      hours: 0
      minutes: 20
      seconds: 0
    id: thermo_off_20
    trigger: state
conditions:
  - condition: state
    entity_id: switch.panasonic_heat_pump_main_defrosting_state
    state: "off"
    alias: Defrosting state has to be off
  - condition: numeric_state
    entity_id: sensor.panasonic_heat_pump_main_main_target_temp
    below: input_number.stooklijn_water_max
    alias: >-
      Outlet Target Temperature has to be lower than max allowed water
      temperature
  - condition: state
    entity_id: binary_sensor.temperature_goal_reached
    state: "off"
    for:
      hours: 0
      minutes: 0
      seconds: 0
    alias: Room temperature must be below goal temperature
actions:
  - action: climate.set_temperature
    target:
      entity_id: climate.panasonic_heat_pump_main_z1_temp
    data:
      temperature: >-
        {{ state_attr('climate.panasonic_heat_pump_main_z1_temp', 'temperature')
        | float(20) + 1}}
    alias: Increase watertemp by 1
mode: single
trace:
  stored_traces: 30


De automation is wat uitgekleed omdat ik een hoop logica in 1 automation heb zitten dus ik heb deze niet getest, maar het idee moet duidelijk zijn.

Deze triggert dus als de thermo off 5 minuten, 10 minuten, 15 minuten en 20 minuten actief is. Dat kan vast mooier maar dit werkt.

De watertemp wordt alleen verhoogd als:
Defrost niet actief is.
Max watertemp nog niet bereikt is (die bepaal je zelf, in mijn geval de hoogste waarde van de stooklijn).
De gewenste ruimtetemperatuur nog niet bereikt is.

Bij de 20 minuten trigger heb ik normaal ook nog logica die de warmtepomp uitschakelt indien de ruimte op temperatuur is zodat de pomp niet onnodig lang blijft lopen. De warmtepomp wordt dan weer aangezet door de thermostaat.

Als deze automation ervoor zorgt dat de target temperatuur hoger dan de stooklijn wordt heb ik weer andere logica die de target temperatuur na een tijdje weer verlaagt (alleen als dit niet zorgt dat de compressor weer uitgaat).

Acties:
  • +2 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
De bijbehorende stooklijn logica in Home Assistant in plaats van op de Panasonic:

Template helper sensor om de actuele waarde van de stooklijn te bepalen:
YAML:
1
2
3
4
5
6
7
{% if states('sensor.outside_temperature_link') | float<=states('input_number.stooklijn_buiten_laag') | float %} 
{{ states('input_number.stooklijn_water_max') | float }}
{% elif states('sensor.outside_temperature_link') | float>=states('input_number.stooklijn_buiten_hoog') | float %}
{{ states('input_number.stooklijn_water_min') | float }}
{% else %}
{{ states('input_number.stooklijn_water_max') | float + (states('sensor.outside_temperature_link') | float -states('input_number.stooklijn_buiten_laag') | float) *((states('input_number.stooklijn_water_max') | float - states('input_number.stooklijn_water_min') | float)/(states('input_number.stooklijn_buiten_laag') | float - states('input_number.stooklijn_buiten_hoog') | float)) }}
{% endif %}


Visualisatie van de stooklijn met Plotly Graph Card:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
type: custom:plotly-graph
refresh_interval: 1
title: Heat curve HA (external)
defaults:
  entity:
    show_value: false
    line:
      shape: line
layout:
  xaxis:
    type: number
    autorange: true
    title: Outside Temperature °C
    fixedrange: true
  yaxis:
    title: Water Temperature °C
    fixedrange: true
entities:
  - entity: ""
    name: Zone 1
    x:
      - -15
      - $ex hass.states['input_number.stooklijn_buiten_laag'].state
      - $ex hass.states['input_number.stooklijn_buiten_hoog'].state
      - 20
    "y":
      - $ex hass.states['input_number.stooklijn_water_max'].state
      - $ex hass.states['input_number.stooklijn_water_max'].state
      - $ex hass.states['input_number.stooklijn_water_min'].state
      - $ex hass.states['input_number.stooklijn_water_min'].state


Afbeeldingslocatie: https://tweakers.net/i/Di-80whqftdTwfeMCQpYvGec4xM=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/GbC6l1UAnjYngJEWH4UxZifb.png?f=user_large

Acties:
  • +1 Henk 'm!

  • Tinkerer84
  • Registratie: November 2019
  • Laatst online: 05-05 17:56
Heeft iemand al een eenvoudige automation gemaakt om de target temperature te shiften op basis van dynamische tarieven?

Acties:
  • +1 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@Tinkerer84 Moet het eenvoudig zijn? :+

Ik draai er nog geen automation op (momenteel nog een vast contract) maar heb wel ooit een begin gemaakt hiervoor. Wat ik heb gedaan is de verwachte COP (op basis van weersvoorspelling) combineren met de dynamische prijzen. Zie hier: Pejdref in "Home Assistant: Open source Python3 home automation - deel 5"

Ik heb wel al logica geschreven om de DHW run hier op te plannen, die is nog niet optimaal omdat er geen rekening gehouden wordt met het feit dat die DHW run langer dan een uur kan duren. Die logica is niet echt geschikt voor wat jij wil, maar kan het wel delen als je er iets aan hebt.

Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 21:36
met mijn zoektocht op internet kom ik deze uitleg met Helpers. entities and automations tegen:

YouTube: Panasonic heatpump in Homeassistant full control.


en de bijbehorende scripts:

https://github.com/simonsays-techtalk/HAPA/tree/main
(o.a. met dank aan @denneappel )

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 21:36
denneappel schreef op donderdag 2 november 2023 @ 14:03:

Eventueel later:
- Nachtverlaging als dit zinvol is
- Runs sturen naar gunstig moment op de dag als de warmtepomp niet 24/7 hoeft te draaien (dynamisch of post salderen)
@denneappel
heb jij de nachtverlaging en de runs sturen naar een gunstig moment op de dag nog voor elkaar gekregen?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
Voor de mensen die een derivative of afgeleidesensor gebruiken. Werkt die bij jullie nog?

Bij ziet ie er zo uit.
Afbeeldingslocatie: https://tweakers.net/i/hRpkKP0haB0oDswjlf7M82nfRe4=/800x/filters:strip_exif()/f/image/pDWQfSAOQ19hX3y3AF3bWVcP.png?f=fotoalbum_large

Ik verwacht een veel grilliger patroon en ook niet van die extreme uitschieters. Bij de eerste installatie (begin dit jaar ergens) zag dit er ook heel anders uit.

[ Voor 14% gewijzigd door O085105116N op 28-11-2024 13:32 ]


  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
@O085105116N Wat is je source sensor? (staat bij attributen).

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
denneappel schreef op donderdag 28 november 2024 @ 13:30:
@O085105116N Wat is je source sensor? (staat bij attributen).
Ik heb het screenshot aangepast. Het is de temp sensor die in de woonkamer hangt.

  • Nnoitra
  • Registratie: December 2000
  • Laatst online: 00:40
O085105116N schreef op donderdag 28 november 2024 @ 13:17:
Voor de mensen die een derivative of afgeleidesensor gebruiken. Werkt die bij jullie nog?

Bij ziet ie er zo uit.
[Afbeelding]

Ik verwacht een veel grilliger patroon en ook niet van die extreme uitschieters. Bij de eerste installatie (begin dit jaar ergens) zag dit er ook heel anders uit.
Werkt prima.
Wat bij jouw opvalt, is dat de laatste update 4 uur geleden was. Dat betekend dat je source, waar de derivative vandaan komt, al 4 uur geen update geeft gehad.
De berekening is op basis van de vorige en laatst binnengekomen update, dat kan je uitschieters verklaren.

Mijn input sensor geeft zo'n beetje elke minuut wel een update.
Overigens heb ik de time window op 20 minuten gezet om ruis weg te filteren (een buitendeur die even open gaat, of een defrost waardoor de warmte afgifte ff inkakt) maar daar ben ik nog mee aan het spelen om te kijken of het uitmaakt bij zulke snelle updates...

[ Voor 4% gewijzigd door Nnoitra op 28-11-2024 13:51 ]

Sarcasm is my superpower! What's yours?


Acties:
  • +2 Henk 'm!

  • denneappel
  • Registratie: Augustus 2022
  • Laatst online: 21:20
hemertje schreef op dinsdag 5 november 2024 @ 21:56:
[...]


@denneappel
heb jij de nachtverlaging en de runs sturen naar een gunstig moment op de dag nog voor elkaar gekregen?
Nachtverlaging doe ik niet (meer) aan. Het energie verbruik valt mij heel erg mee en bij nachtverlaging hoort ook een ochtendverhoging. Dat is zeer onhandig als het koud en vochtig is omdat je dan snel defrosts krijgt. Bovendien is in de ochtend een van de pieken kwa stroomprijs als ik straks dynamisch ga.


Ik maak wel onderscheid tussen perioden waarop de pana wel/niet 24/7 moet draaien. Bij mij ligt die grens rond een buiten temperatuur van ~10 graden. Voor dagen dat het warmer is probeer ik de runs te sturen naar momenten met export. Dat gaat grotendeels automatisch door:
- De Ta te verhogen als de WP drijgt uit te vallen en er export is
- Te wachten met een compressor start tot er export is als er nog > x kWh PV verwacht wordt op dezelfde dag.

Daarnaast heb ik een automation gemaakt die aan het einde van de middag even een run doet op de laatste zonnestralen zodat de WP minder snel 's nachts aanslaat.

(ik werk inmiddels met een input select om het gedrag van de warmtepomp te kunnen bepalen).

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
alias: warmtepomp - koude verwacht, start 1 run
description: ""
mode: single
triggers:
  - event: sunset
    offset: "-03:00:00"
    trigger: sun
  - entity_id:
      - sensor.grid_export_potential
    above: 1
    for:
      hours: 0
      minutes: 1
      seconds: 0
    trigger: numeric_state
conditions:
  - condition: sun
    after: sunset
    after_offset: "-03:00:00"
  - condition: state
    entity_id: binary_sensor.koude_verwacht
    state: "on"
  - condition: state
    entity_id: binary_sensor.aquarea_compressor_running
    state: "off"
    for:
      hours: 1
      minutes: 0
      seconds: 0
  - condition: state
    entity_id: switch.panasonic_heat_pump_main_heatpump_state
    state: "on"
  - condition: not
    conditions:
      - condition: state
        entity_id: input_select.warmtepomp_modus
        state: 1 run
actions:
  - action: notify.pushover
    metadata: {}
    data:
      message: Warmtepomp start run ivm koude
  - action: input_select.select_option
    metadata: {}
    data:
      option: 1 run
    target:
      entity_id: input_select.warmtepomp_modus
  - action: automation.turn_off
    metadata: {}
    data:
      stop_actions: true
    target:
      entity_id: automation.warmtepomp_1_run_end
  - action: automation.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: automation.warmtepomp_1_run_end_pv


De automation "1 run" zet vervolgens de WP aan (afhankelijk van export) en radiator ventilatoren uit zodat er zoveel mogelijk warmte in het systeem (radiatoren + vloer) opgenomen kan worden dat langzaam wordt afgegeven). Als ik de ventilatoren aan laat staan dan wordt het bij mij heel warm met een Ta van 33 graden.
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
alias: warmtepomp 1 run - start
description: ""
mode: single
triggers:
  - entity_id:
      - input_select.warmtepomp_modus
    to: 1 run
    trigger: state
conditions: []
actions:
  - action: number.set_value
    target:
      entity_id: number.panasonic_heat_pump_main_z1_heat_curve_target_low_temp
    data:
      value: "33"
  - if:
      - condition: numeric_state
        entity_id: sensor.grid_export_potential
        below: 2
    then:
      - action: select.select_option
        metadata: {}
        data:
          option: "3"
        target:
          entity_id: select.panasonic_heat_pump_main_quiet_mode_level
  - action: switch.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: switch.kincony_relais_board_heatpump_hold
  - action: switch.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: switch.heatfans

  • O085105116N
  • Registratie: November 2006
  • Laatst online: 21:01
Temperatuur is net 0,1c gestegen met dit als resultaat. Ik heb inderdaad vrij lang een stabiele temperatuur is huis.

Ik realiseer me net dat de sensor aan een PLC hangt en alleen een update geeft bij een wijzgiging. Ik kan kijken of ik iedere x minuten kan pollen via de PLC. Misschien dat ik dat ooit zo had? Geen idee meer, moet mijn eigen config nog maar eens nalopen, want zoals het nu is, was het niet. Niet dat ik er momenteel iets van merk, maar het gedrag is wel anders.

Afbeeldingslocatie: https://tweakers.net/i/kEm1_bP_pH-cljEBruGBFymXz9I=/800x/filters:strip_exif()/f/image/yIK49CNJgb0x4X7s4fTUk6SS.png?f=fotoalbum_large
Nnoitra schreef op donderdag 28 november 2024 @ 13:45:
[...]

Werkt prima.
Wat bij jouw opvalt, is dat de laatste update 4 uur geleden was. Dat betekend dat je source, waar de derivative vandaan komt, al 4 uur geen update geeft gehad.
De berekening is op basis van de vorige en laatst binnengekomen update, dat kan je uitschieters verklaren.

Mijn input sensor geeft zo'n beetje elke minuut wel een update.
Overigens heb ik de time window op 20 minuten gezet om ruis weg te filteren (een buitendeur die even open gaat, of een defrost waardoor de warmte afgifte ff inkakt) maar daar ben ik nog mee aan het spelen om te kijken of het uitmaakt bij zulke snelle updates...

[ Voor 13% gewijzigd door O085105116N op 28-11-2024 14:24 ]


Acties:
  • +8 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
Wellicht kan ik hier andere HeishaMon + HA gebruikers blij mee maken.

Probleem en oplossing
Home Assistant - HeishaMon integratie COP sensor is niet accuraat omdat Panasonic power consumption / production inaccuraat is. Daarnaast is het niet mogelijk om de COP van een bepaalde tijdsperiode te meten.

Oplossing:
  • Power production (W) / energy produced (kWh) zelf berekenen aan de hand van een formule.
  • kWh meters gebruiken om power consumtion (W) / energy consumed (kWh) accuraat te meten.
  • Utility meters aanmaken die periodiek resetten om COP per bepaalde tijdsperiode te kunnen berekenen.
Actuele "live" power production / COP
Ik heb twee template sensors aangemaakt voor accurate power production waarde en actuele "live" COP.
Voor de COP berekening gebruik ik HomeWizard kWh-meters als input voor accurate "energy consumption".
Mijn COP sensor "Aquarea HW Calculated COP" is alleen beschikbaar als er power production is en heb ik deze de state class "measurement" gegeven.

Gemiddelde COP van de warmtepomp over de totale levensduur
Dit is de derde sensor in de onderstaande template.yaml. Deze berekent de COP over de totale levensduur van de warmtepomp. Total energy production / total energy consumption (incl. BUH). State class is “total”.

Power consumption / production + COP per tijdsperiode
Bovendien heb ik veel (15) utility meters aangemaakt die de consumption en production voor een bepaalde tijdsperiode bijhoudt: hourly, daily, weekly, monthly, yearly. De sources voor deze utility meters zijn de "Aquarea Total Energy Produced Calculated" uit de sensors.yaml voor de Energy Produced en mijn 2 HomeWizard kWh meters voor de Energy Consumed. Vervolgens heb ik per tijdsperiode een template sensor aangemaakt die de COP voor die periode berekent. Deze sensor is alleen beschikbaar als er energy production in die periode is geweest en heb ik de state class "total" gegeven.

configuration.yaml
code:
1
2
3
sensor: !include sensors.yaml
template: !include templates.yaml
utility_meter: !include utility_meters.yaml

sensors.yaml (nieuw aan te maken als je deze nog niet hebt)
code:
1
2
3
4
5
6
7
8
9
10
# Use Riemann Sum to track total Aquarea Total Energy Produced Calculated (kWh) 
# Source is template sensor Aquarea Power Produced Calculated (W)
- platform: integration
  source: sensor.aquarea_power_produced_calculated
  name: "Aquarea Total Energy Produced Calculated"
  unique_id: "panasonic_heat_pump_total_energy_produced_calculated"
  unit_prefix: k
  round: 2
  max_sub_interval:
    minutes: 5

templates.yaml (nieuw aan te maken als je deze nog niet hebt)
regel 11, 12, 48 & 49 sensor vervangen door je eigen sensor voor warmtepomp power (W) + BUH power (W).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
- sensor:
    # Sensor for calculating the actual Power production
    # Using Panasonic flow rate, outlet temp, inlet temp
    - unique_id: "panasonic_heat_pump_power_produced_calculated"
      name: "Aquarea Power Produced Calculated"
      unit_of_measurement: "W"
      state_class: "measurement"
      state: >
        {% set flowRate = states('sensor.panasonic_heat_pump_main_pump_flow') | float(default=0) %}
        {% set flowRateSec = flowRate / 60 %}
        {% set outletTemp = states('sensor.panasonic_heat_pump_main_main_outlet_temp') | float(default=0) %}
        {% set inletTemp = states('sensor.panasonic_heat_pump_main_main_inlet_temp') | float(default=0) %}
        {% set deltaTemp = outletTemp - inletTemp %}
        {% set value = flowRateSec * 4.153 * deltaTemp * 1000 %}
        {% if flowRate > 1 and value > 0 %}
          {{ '%0.0f' % value }}
        {% else %}
          0.0
        {% endif %}

    # Sensor for calculating the combined COP for both heating and DHW
    # Using Template sensor calculated power production and HomeWizard power consumption values
    - unique_id: "panasonic_heat_pump_hw_calculated_cop"
      name: "Aquarea HW Calculated COP"
      unit_of_measurement: "x"
      state_class: "measurement"
      availability: "{{ states('sensor.aquarea_power_produced_calculated') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_power_produced_calculated') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_power') | float(default=0) %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_power') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% if consumed > 200 %}
          {% set value = [ [produced / consumed, 10] | min , -10 ] | max %}
          {{ '%0.1f' % value }}
        {% else %}
          0.0
        {% endif %}

    # Sensor for calculating the combined COP average for both heating and DHW
    # Using Panasonic total power production and HomeWizard energy import values
    - unique_id: panasonic_heat_pump_hw_calculated_cop_lifetime
      name: "Aquarea HW Calculated COP average"
      unit_of_measurement: "x"
      state_class: "total"
      state: >
        {% set produced = states('sensor.aquarea_pump_total_production_total') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_energy_import') | float(default=0) %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the hourly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_hourly"
      name: "Aquarea COP hourly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_hourly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_hourly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_hourly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_hourly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the daily COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_daily"
      name: "Aquarea COP daily"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_daily') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_daily') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_daily') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_daily') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the weekly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_weekly"
      name: "Aquarea COP weekly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_weekly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_weekly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_weekly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_weekly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the monthly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_monthly"
      name: "Aquarea COP monthly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_monthly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_monthly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_monthly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_monthly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the yearly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_yearly"
      name: "Aquarea COP yearly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_yearly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_yearly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_yearly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_yearly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

utility_meters.yaml (nieuw aan te maken als je deze nog niet hebt)
Onderstaande twee sensors vervangen door je eigen kWh meter sensors.
  • sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  • sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Panasonic heat pump energy production hourly
panasonic_heat_pump_energy_produced_hourly:
  unique_id: "panasonic_heat_pump_energy_produced_hourly"
  name: "Aquarea energy produced hourly"
  source: sensor.aquarea_total_energy_produced_calculated
  cycle: hourly

# Panasonic heat pump energy consumption hourly
panasonic_heat_pump_energy_consumed_hourly:
  unique_id: "panasonic_heat_pump_energy_consumed_hourly"
  name: "Aquarea energy consumed hourly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: hourly

# Panasonic heat pump energy consumption BUH hourly
panasonic_heat_pump_energy_consumed_buh_hourly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_hourly"
  name: "Aquarea energy consumed BUH hourly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: hourly

# Panasonic heat pump energy production daily
panasonic_heat_pump_energy_produced_daily:
  unique_id: "panasonic_heat_pump_energy_produced_daily"
  name: "Aquarea energy produced daily"
  source: sensor.aquarea_total_energy_produced_calculated
  cycle: daily

# Panasonic heat pump energy consumption daily
panasonic_heat_pump_energy_consumed_daily:
  unique_id: "panasonic_heat_pump_energy_consumed_daily"
  name: "Aquarea energy consumed daily"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: daily

# Panasonic heat pump energy consumption BUH daily
panasonic_heat_pump_energy_consumed_buh_daily:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_daily"
  name: "Aquarea energy consumed BUH daily"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: daily

# Panasonic heat pump energy production weekly
panasonic_heat_pump_energy_produced_weekly:
  unique_id: "panasonic_heat_pump_energy_produced_weekly"
  name: "Aquarea energy produced weekly"
  source: sensor.aquarea_total_energy_produced_calculated
  cycle: weekly

# Panasonic heat pump energy consumption weekly
panasonic_heat_pump_energy_consumed_weekly:
  unique_id: "panasonic_heat_pump_energy_consumed_weekly"
  name: "Aquarea energy consumed weekly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: weekly

# Panasonic heat pump energy consumption BUH weekly
panasonic_heat_pump_energy_consumed_buh_weekly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_weekly"
  name: "Aquarea energy consumed BUH weekly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: weekly

# Panasonic heat pump energy production monthly
panasonic_heat_pump_energy_produced_monthly:
  unique_id: "panasonic_heat_pump_energy_produced_monthly"
  name: "Aquarea energy produced monthly"
  source: sensor.aquarea_total_energy_produced_calculated
  cycle: monthly

# Panasonic heat pump energy consumption monthly
panasonic_heat_pump_energy_consumed_monthly:
  unique_id: "panasonic_heat_pump_energy_consumed_monthly"
  name: "Aquarea energy consumed monthly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: monthly

# Panasonic heat pump energy consumption BUH monthly
panasonic_heat_pump_energy_consumed_buh_monthly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_monthly"
  name: "Aquarea energy consumed BUH monthly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: monthly

# Panasonic heat pump energy production yearly
panasonic_heat_pump_energy_produced_yearly:
  unique_id: "panasonic_heat_pump_energy_produced_yearly"
  name: "Aquarea energy produced yearly"
  source: sensor.aquarea_total_energy_produced_calculated
  cycle: yearly

# Panasonic heat pump energy consumption yearly
panasonic_heat_pump_energy_consumed_yearly:
  unique_id: "panasonic_heat_pump_energy_consumed_yearly"
  name: "Aquarea energy consumed yearly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: yearly

# Panasonic heat pump energy consumption BUH yearly
panasonic_heat_pump_energy_consumed_buh_yearly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_yearly"
  name: "Aquarea energy consumed BUH yearly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: yearly


Resultaat met wat COP sensors (hourly en weekly missen in dit plaatje)
Afbeeldingslocatie: https://tweakers.net/i/6znPIDnW7S1TXF6VSZJe1UXXnz8=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/hHBh9VBw1FHf2XvMeaUunbFL.png?f=user_large

Resultaat met Statistics Graph op de actuele "live" COP sensor:
Afbeeldingslocatie: https://tweakers.net/i/s2D9os0Tl4Vfr--apca-2FhBQvs=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/4UqETkzc3CHD6zeqswmroIIL.png?f=user_large

Resultaat met Statistics Graph op de COP sensoren per tijdsperiode:
Afbeeldingslocatie: https://tweakers.net/i/U0EYmfMKY5qdFrtfPAUOQ_qWCXg=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/Vemi6a16vsgMlpHa1CypF8Sc.png?f=user_large

Afbeeldingslocatie: https://tweakers.net/i/jA1efMxBlvYaxHsIWNzGXx8pUAE=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/V7YYOerqOrFjw47hVXymkSp7.png?f=user_large

Afbeeldingslocatie: https://tweakers.net/i/HgufPvw4DGJDt7k8ttCKQ_8wd40=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/WVfFHmqV93bSEudp2LUwl3jf.png?f=user_large

Statistics graph met energy consumption / production per dag:
Afbeeldingslocatie: https://tweakers.net/i/g1l0NQwZFKX2LgPjYx61jdnDTk8=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/hDTCB8v4X51oT6FqspYjcDF1.png?f=user_large

Ik ben nog een nieuwe Home Assistant gebruiker. Heeft best wat tijd gekost om dit zo te implementeren. Hoop dat andere tweakers hier wat aan hebben en zo wat terug te doen voor alle kennis die ik consumeer van anderen ;) Als je tips hebt voor verbeteringen / toevoegingen hoor ik het graag.

[ Voor 255% gewijzigd door nMad op 05-12-2024 09:52 ]

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • 0 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@nMad Meet je zo het tijdgemiddelde van de COP, of begrijp ik het verkeerd?

Tijdgemiddelde zegt eigenlijk weinig. Stel je draait 1 uur COP=4 met 3kWh opwek (=0.75kWh verbruik) en 1 uur COP=5 met 2kWh opwek (=0.4kWh verbruik).

Je tijdgemiddelde COP is dan 4.5, maar je echte gemiddelde COP is dan 4.35 (3+2)/(0.75+0.4)

Acties:
  • 0 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
@Pejdref ik heb te snel gepost. Ik heb mijn bericht aangepast en mijn totale oplossing gedeeld.

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • +1 Henk 'm!

  • ErikVers
  • Registratie: April 2020
  • Laatst online: 23:47

ErikVers

e-Duurzaam

nMad schreef op woensdag 4 december 2024 @ 10:01:
Wellicht kan ik hier andere HeishaMon + HA gebruikers blij mee maken.

Probleem
Home Assistant - HeishaMon integratie COP sensor is niet accuraat omdat met name de Panasonic power consumption inaccuraat is. Daarnaast is het niet mogelijk om de COP van een bepaalde tijdsperiode te meten.

Actuele "live" power production / COP
Ik heb twee template sensors aangemaakt voor accurate power production waarde en actuele "live" COP.
Voor de COP berekening gebruik ik HomeWizard kWh-meters als input voor accurate "energy consumption".
Mijn COP sensor "Aquarea HW Calculated COP" is alleen beschikbaar als er power production is en heb ik deze de state class "measurement" gegeven.

Gemiddelde COP van de warmtepomp over de totale levensduur
Dit is de derde sensor in de onderstaande template.yaml. Deze berekent de COP over de totale levensduur van de warmtepomp. Total energy production / total energy consumption (incl. BUH). State class is “total”.

Power consumption / production + COP per tijdsperiode
Bovendien heb ik veel (15) utility meters aangemaakt die de consumption en production voor een bepaalde tijdsperiode bijhoudt: hourly, daily, weekly, monthly, yearly. De sources voor deze utility meters zijn de Panasonic total energy production (kWh) en mijn 2 HomeWizard kWh meters. Vervolgens heb ik per tijdsperiode een template sensor aangemaakt die de COP voor die periode berekent. Deze sensor is alleen beschikbaar als er energy production in die periode is geweest en heb ik de state class "total" gegeven.

configuration.yaml
code:
1
2
template: !include templates.yaml
utility_meter: !include utility_meters.yaml

templates.yaml (nieuw aan te maken als je deze nog niet hebt)
regel 11, 12, 48 & 49 sensor vervangen door je eigen sensor voor warmtepomp power (W) + BUH power (W).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
- sensor:
    # Sensor for calculating the actual Power production
    # Using Panasonic flow rate, outlet temp, inlet temp
    - unique_id: "panasonic_heat_pump_power_produced_calculated"
      name: "Aquarea Power Produced Calculated"
      unit_of_measurement: "W"
      state_class: "measurement"
      state: >
        {% set flowRate = states('sensor.panasonic_heat_pump_main_pump_flow') | float(default=0) %}
        {% set flowRateSec = flowRate / 60 %}
        {% set outletTemp = states('sensor.panasonic_heat_pump_main_main_outlet_temp') | float(default=0) %}
        {% set inletTemp = states('sensor.panasonic_heat_pump_main_main_inlet_temp') | float(default=0) %}
        {% set deltaTemp = outletTemp - inletTemp %}
        {% set value = flowRateSec * 4.153 * deltaTemp * 1000 %}
        {% if flowRate > 1 and value > 0 %}
          {{ '%0.0f' % value }}
        {% else %}
          0.0
        {% endif %}

    # Sensor for calculating the combined COP for both heating and DHW
    # Using Template sensor calculated power production and HomeWizard power consumption values
    - unique_id: "panasonic_heat_pump_hw_calculated_cop"
      name: "Aquarea HW Calculated COP"
      unit_of_measurement: "x"
      state_class: "measurement"
      availability: "{{ states('sensor.panasonic_heat_pump_power_produced_calculated') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.panasonic_heat_pump_power_produced_calculated') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_power') | float(default=0) %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_power') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% if consumed > 200 %}
          {% set value = [ [produced / consumed, 10] | min , -10 ] | max %}
          {{ '%0.1f' % value }}
        {% else %}
          0.0
        {% endif %}

    # Sensor for calculating the combined COP average for both heating and DHW
    # Using Panasonic total power production and HomeWizard energy import values
    - unique_id: panasonic_heat_pump_hw_calculated_cop_lifetime
      name: "Aquarea HW Calculated COP average"
      unit_of_measurement: "x"
      state_class: "total"
      state: >
        {% set produced = states('sensor.aquarea_pump_total_production_total') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_energy_import') | float(default=0) %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the hourly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_hourly"
      name: "Aquarea COP hourly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_hourly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_hourly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_hourly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_hourly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the daily COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_daily"
      name: "Aquarea COP daily"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_daily') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_daily') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_daily') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_daily') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the weekly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_weekly"
      name: "Aquarea COP weekly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_weekly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_weekly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_weekly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_weekly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the monthly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_monthly"
      name: "Aquarea COP monthly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_monthly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_monthly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_monthly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_monthly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

    # Sensor for calculating the yearly COP
    # Using utility meters for production & consumption values
    - unique_id: "panasonic_heat_pump_cop_yearly"
      name: "Aquarea COP yearly"
      unit_of_measurement: "x"
      state_class: "total"
      availability: "{{ states('sensor.aquarea_energy_produced_yearly') | float(default=0) > 0 }}"
      state: >
        {% set produced = states('sensor.aquarea_energy_produced_yearly') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.aquarea_energy_consumed_yearly') | float(default=0) %}
        {% set consumedBuh = states('sensor.aquarea_energy_consumed_buh_yearly') | float(default=0) %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = 0 if produced == 0 else produced / consumed %}
        {{ '%0.1f' % value }}

utility_meters.yaml (nieuw aan te maken als je deze nog niet hebt)
Onderstaande twee sensors vervangen door je eigen kWh meter sensors.
  • sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  • sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Panasonic heat pump energy production hourly
panasonic_heat_pump_energy_produced_hourly:
  unique_id: "panasonic_heat_pump_energy_produced_hourly"
  name: "Aquarea energy produced hourly"
  source: sensor.aquarea_pump_total_production_total
  cycle: hourly

# Panasonic heat pump energy consumption hourly
panasonic_heat_pump_energy_consumed_hourly:
  unique_id: "panasonic_heat_pump_energy_consumed_hourly"
  name: "Aquarea energy consumed hourly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: hourly

# Panasonic heat pump energy consumption BUH hourly
panasonic_heat_pump_energy_consumed_buh_hourly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_hourly"
  name: "Aquarea energy consumed BUH hourly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: hourly

# Panasonic heat pump energy production daily
panasonic_heat_pump_energy_produced_daily:
  unique_id: "panasonic_heat_pump_energy_produced_daily"
  name: "Aquarea energy produced daily"
  source: sensor.aquarea_pump_total_production_total
  cycle: daily

# Panasonic heat pump energy consumption daily
panasonic_heat_pump_energy_consumed_daily:
  unique_id: "panasonic_heat_pump_energy_consumed_daily"
  name: "Aquarea energy consumed daily"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: daily

# Panasonic heat pump energy consumption BUH daily
panasonic_heat_pump_energy_consumed_buh_daily:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_daily"
  name: "Aquarea energy consumed BUH daily"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: daily

# Panasonic heat pump energy production weekly
panasonic_heat_pump_energy_produced_weekly:
  unique_id: "panasonic_heat_pump_energy_produced_weekly"
  name: "Aquarea energy produced weekly"
  source: sensor.aquarea_pump_total_production_total
  cycle: weekly

# Panasonic heat pump energy consumption weekly
panasonic_heat_pump_energy_consumed_weekly:
  unique_id: "panasonic_heat_pump_energy_consumed_weekly"
  name: "Aquarea energy consumed weekly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: weekly

# Panasonic heat pump energy consumption BUH weekly
panasonic_heat_pump_energy_consumed_buh_weekly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_weekly"
  name: "Aquarea energy consumed BUH weekly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: weekly

# Panasonic heat pump energy production monthly
panasonic_heat_pump_energy_produced_monthly:
  unique_id: "panasonic_heat_pump_energy_produced_monthly"
  name: "Aquarea energy produced monthly"
  source: sensor.aquarea_pump_total_production_total
  cycle: monthly

# Panasonic heat pump energy consumption monthly
panasonic_heat_pump_energy_consumed_monthly:
  unique_id: "panasonic_heat_pump_energy_consumed_monthly"
  name: "Aquarea energy consumed monthly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: monthly

# Panasonic heat pump energy consumption BUH monthly
panasonic_heat_pump_energy_consumed_buh_monthly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_monthly"
  name: "Aquarea energy consumed BUH monthly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: monthly

# Panasonic heat pump energy production yearly
panasonic_heat_pump_energy_produced_yearly:
  unique_id: "panasonic_heat_pump_energy_produced_yearly"
  name: "Aquarea energy produced yearly"
  source: sensor.aquarea_pump_total_production_total
  cycle: yearly

# Panasonic heat pump energy consumption yearly
panasonic_heat_pump_energy_consumed_yearly:
  unique_id: "panasonic_heat_pump_energy_consumed_yearly"
  name: "Aquarea energy consumed yearly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_energy_import
  cycle: yearly

# Panasonic heat pump energy consumption BUH yearly
panasonic_heat_pump_energy_consumed_buh_yearly:
  unique_id: "panasonic_heat_pump_energy_consumed_buh_yearly"
  name: "Aquarea energy consumed BUH yearly"
  source: sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import
  cycle: yearly


Resultaat met wat COP sensors (hourly en weekly missen in dit plaatje)
[Afbeelding]

Resultaat met Statistics Graph op de actuele "live" COP sensor:
[Afbeelding]

Resultaat met Statistics Graph op de COP sensoren per tijdsperiode:
[Afbeelding]

[Afbeelding]

[Afbeelding]

Statistics graph met energy consumption / production per dag:
[Afbeelding]

Ik ben nog een nieuwe Home Assistant gebruiker. Heeft best wat tijd gekost om dit zo te implementeren. Hoop dat andere tweakers hier wat aan hebben en zo wat terug te doen voor alle kennis die ik consumeer van anderen ;) Als je tips hebt voor verbeteringen / toevoegingen hoor ik het graag.
Super hier moet ik ff rustig naar kijken en ga ik zeker implementeren. Werk nu op een andere manier en dit ziet er beter uit!

Je vroeg om tips;
Ik weet dat je in HA ook short name kan maken in je code zodat je gaat verwijzen en bijvoorbeeld enkel bovenin je code 1x de sensor moet invullen/aanpassen ipv op regel niveau.

Daarnaast een vraag; ik meet momenteel de BUH expres niet. Welke sendor uit de aquarea vul je dan daar in?

WP Pana 5H - Solar 6m2 icm 300liter - PV 8970Wp: 27stuks Solar - Home Assistant - VW ID3 First 20” |


Acties:
  • 0 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
ErikVers schreef op woensdag 4 december 2024 @ 15:36:
[...]


Super hier moet ik ff rustig naar kijken en ga ik zeker implementeren. Werk nu op een andere manier en dit ziet er beter uit!

Je vroeg om tips;
Ik weet dat je in HA ook short name kan maken in je code zodat je gaat verwijzen en bijvoorbeeld enkel bovenin je code 1x de sensor moet invullen/aanpassen ipv op regel niveau.

Daarnaast een vraag; ik meet momenteel de BUH expres niet. Welke sendor uit de aquarea vul je dan daar in?
Short name klinkt goed. Ik ga hier naar kijken, dan is het eenvoudiger voor anderen om deze logica over te nemen.

Naar mijn weten is er geen Panasonic sensor voor BUH power / energy meter. Dus enige optie is apart via kWh meter meten. Voor je COP is niet meten overigens beter ;)

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • +3 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@ErikVers @nMad
Als je het BUH verbruik wil benaderen kun je een template sensor maken op basis van de aan/uit status.

YAML:
1
{{(3000 if states('binary_sensor.panasonic_heat_pump_main_internal_heater_state')=='on' else 0)}}


Deze geeft 3000W als de internal heater aan staat, anders 0. Het is een benadering omdat het vermogen niet exact 3000W is. Je kunt hier vervolgens een integral helper (linker Riemann) op loslaten om het totaal verbruik te registreren. Als je ook nog dagelijks/maandelijks of noem het maar wil kun je daar dan weer Utility meters op koppelen.

Acties:
  • +1 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
Pejdref schreef op woensdag 4 december 2024 @ 15:57:
@ErikVers @nMad
Als je het BUH verbruik wil benaderen kun je een template sensor maken op basis van de aan/uit status.

YAML:
1
{{(3000 if states('binary_sensor.panasonic_heat_pump_main_internal_heater_state')=='on' else 0)}}


Deze geeft 3000W als de internal heater aan staat, anders 0. Het is een benadering omdat het vermogen niet exact 3000W is. Je kunt hier vervolgens een integral helper (linker Riemann) op loslaten om het totaal verbruik te registreren. Als je ook nog dagelijks/maandelijks of noem het maar wil kun je daar dan weer Utility meters op koppelen.
Interessant! Die Riemann Sum zou ik ook kunnen toepassen op mijn Power produced (W) sensor om daarmee de Energy produced (kWh) bij te houden.

Nu gebruik ik nog de Panasonic power produced sensor voor alle periodieke COP calculaties. Zal eerst eens testen hoe groot de verschillen zijn tussen de twee, wellicht is de Panasonic sensor wel nauwkeurig.

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • +1 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@nMad Ja zo doe ik het inderdaad ook voor de Power Produced.

Acties:
  • 0 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
Pejdref schreef op woensdag 4 december 2024 @ 16:13:
@nMad Ja zo doe ik het inderdaad ook voor de Power Produced.
Ik nu ook. Heb mijn post aangepast met deze nieuwe logica.

Alleen berekenen van gemiddelde COP over de gehele levensduur is nu lastig met deze nieuwe energy produced calculated. Want er staat al flink wat op de teller van energy consumed.

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • 0 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
@nMad
Voor de lifetime COP kun je de startstand eventueel hardcoden in je COP berekening. Als het een utility meter betreft kun je de waarde aanpassen: https://www.home-assistan...on-utility_metercalibrate

Als je dat laatste doet kun je via ontwikkelingshulpmiddelen --> statistieken eventueel corrigeren. (als je bijvoorbeeld een utility meter van 0 naar 100 wijzigt wordt er 100 verbruik geregistreerd, dat kun je weer corrigeren).

Acties:
  • +1 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
Pejdref schreef op donderdag 5 december 2024 @ 11:36:
@nMad
Voor de lifetime COP kun je de startstand eventueel hardcoden in je COP berekening. Als het een utility meter betreft kun je de waarde aanpassen: https://www.home-assistan...on-utility_metercalibrate

Als je dat laatste doet kun je via ontwikkelingshulpmiddelen --> statistieken eventueel corrigeren. (als je bijvoorbeeld een utility meter van 0 naar 100 wijzigt wordt er 100 verbruik geregistreerd, dat kun je weer corrigeren).
Ik heb het nu hard coded in mijn COP berekening over de gehele levensduur van de WP staan. Niet de mooiste manier, maar werkt prima zo.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    # Sensor for calculating the combined COP average for both heating and DHW
    # Using Panasonic total power production and HomeWizard energy import values
    # Substracted HP = 626 kWh & BUH = 59 kWh from consumption for accurate measurement because this sensor is live since 4-12-2024
    - unique_id: panasonic_heat_pump_hw_calculated_cop_lifetime
      name: "Aquarea HW Calculated COP average"
      unit_of_measurement: "x"
      state_class: "total"
      state: >
        {% set produced = states('sensor.aquarea_total_energy_produced_calculated') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_energy_import') | float(default=0) - 626 %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import') | float(default=0) - 59 %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = produced / consumed %}
        {{ '%0.1f' % value }}


@Pejdref Nog een vraagje. Vandaag heeft mijn LAN er even uit gelegen. Dus zijn de sources van mijn HA utility meters tijdelijk weggevallen. Valt me op dat het geregistreerde verbruik van de utility meters nu ook een deel mist vergeleken met de kWh-meters. Dit is wel een serieuze beperking van het gebruik van utility meters, ik had gehoopt dat hij weer op zou pakken met historisch verbruik zodra de source beschikbaar was. Heb jij hier toevallig al over na gedacht? ;)

[ Voor 12% gewijzigd door nMad op 06-12-2024 20:35 ]

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • 0 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
nMad schreef op vrijdag 6 december 2024 @ 07:22:
[...]

Ik heb het nu hard coded in mijn COP berekening over de gehele levensduur van de WP staan. Niet de mooiste manier, maar werkt prima zo.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    # Sensor for calculating the combined COP average for both heating and DHW
    # Using Panasonic total power production and HomeWizard energy import values
    # Substracted HP = 626 kWh & BUH = 59 kWh from consumption for accurate measurement because this sensor is live since 4-12-2024
    - unique_id: panasonic_heat_pump_hw_calculated_cop_lifetime
      name: "Aquarea HW Calculated COP average"
      unit_of_measurement: "x"
      state_class: "total"
      state: >
        {% set produced = states('sensor.aquarea_total_energy_produced_calculated') | float(default=0) %}
        {% set consumedHeatPump = states('sensor.hw_panasonic_wh_mdc07j3e5_energy_import') | float(default=0) - 626 %}
        {% set consumedBuh = states('sensor.hw_panasonic_wh_mdc07j3e5_buh_energy_import') | float(default=0) - 59 %}
        {% set consumed = consumedHeatPump + consumedBuh %}
        {% set value = produced / consumed %}
        {{ '%0.1f' % value }}


@Pejdref Nog een vraagje. Vandaag heeft mijn LAN er even uit gelegen. Dus zijn de sources van mijn HA utility meters tijdelijk weggevallen. Valt me op dat het geregistreerde verbruik van de utility meters nu ook een deel mist vergeleken met de kWh-meters. Dit is wel een serieuze beperking van het gebruik van utility meters, ik had gehoopt dat hij weer op zou pakken met historisch verbruik zodra de source beschikbaar was. Heb jij hier toevallig al over na gedacht? ;)
Nee want ik heb geen kWh meters :+ , dus bij mij zijn de waardes dan niet meer te achterhalen.

Maar in jouw geval moet je "Periodically resetting" uitzetten in de Utility Meter als ik het goed heb.

Acties:
  • 0 Henk 'm!

  • nMad
  • Registratie: Augustus 2004
  • Laatst online: 20:46
Pejdref schreef op vrijdag 6 december 2024 @ 20:48:
[...]


Nee want ik heb geen kWh meters :+ , dus bij mij zijn de waardes dan niet meer te achterhalen.

Maar in jouw geval moet je "Periodically resetting" uitzetten in de Utility Meter als ik het goed heb.
Ja top, die property heb ik over het hoofd gezien! Dank je wel! :)

Ik mag mijn post van paar dagen terug niet meer aanpassen. Dus kan deze wijziging in de utility_meters.yaml niet meer toevoegen helaas. Maar voor de mensen die dit lezen en waar het ook relevant voor is:
code:
1
2
3
4
5
6
7
# Panasonic heat pump energy production hourly
panasonic_heat_pump_energy_produced_hourly:
  unique_id: "panasonic_heat_pump_energy_produced_hourly"
  name: "Aquarea energy produced hourly"
  source: sensor.aquarea_total_energy_produced_calculated
  periodically_resetting: false
  cycle: hourly

Regel 6 toevoegen aan alle utility meters.

@deWit of @KappuhH is het een idee om mijn bijdrage toe te voegen aan de TS? Voordeel is dat deze post altijd kan worden aangepast a.d.h.v. nieuwe inzichten.

[ Voor 50% gewijzigd door nMad op 06-12-2024 22:08 ]

PV: 10,4 kWp | EV: Tesla M3 LR ‘19 | L/W WP: Panasonic WH-MDC07J3E5 + PAW-TD20C1E5 | L/L WP: Daikin FVXM35A/RXM35R + Daikin FTXM25R/RXM25R + MHI 2x SRK25ZS-WF/SCM40ZS-W


Acties:
  • 0 Henk 'm!

  • FransvWoerkom
  • Registratie: Maart 2018
  • Laatst online: 19:33
Pejdref schreef op woensdag 4 december 2024 @ 15:57:
@ErikVers @nMad
Als je het BUH verbruik wil benaderen kun je een template sensor maken op basis van de aan/uit status.

YAML:
1
{{(3000 if states('binary_sensor.panasonic_heat_pump_main_internal_heater_state')=='on' else 0)}}


Deze geeft 3000W als de internal heater aan staat, anders 0. Het is een benadering omdat het vermogen niet exact 3000W is. Je kunt hier vervolgens een integral helper (linker Riemann) op loslaten om het totaal verbruik te registreren. Als je ook nog dagelijks/maandelijks of noem het maar wil kun je daar dan weer Utility meters op koppelen.
Je moet natuurlijk ook even kijken of de BUH 3, 6 of 9kW is (T-caps) en Riemann zou zich omdraaien in zijn graf als je hem hiervoor zou wakker maken. Je meet natuurlijk gewoon de tijd dat hij aanstaat en vermenigvuldigt dat met het vermogen.

Acties:
  • +1 Henk 'm!

  • FransvWoerkom
  • Registratie: Maart 2018
  • Laatst online: 19:33
nMad schreef op woensdag 4 december 2024 @ 16:05:
[...]

Interessant! Die Riemann Sum zou ik ook kunnen toepassen op mijn Power produced (W) sensor om daarmee de Energy produced (kWh) bij te houden.

Nu gebruik ik nog de Panasonic power produced sensor voor alle periodieke COP calculaties. Zal eerst eens testen hoe groot de verschillen zijn tussen de twee, wellicht is de Panasonic sensor wel nauwkeurig.
De Riemann methode van integreren is simpel de helft van het eerste en de helft van het laatste en verder alle tussenliggende samples bij elkaar optellen.

Acties:
  • 0 Henk 'm!

  • Lollercopter
  • Registratie: December 2017
  • Laatst online: 23:42
Tinkerer84 schreef op zondag 3 november 2024 @ 17:59:
Heeft iemand al een eenvoudige automation gemaakt om de target temperature te shiften op basis van dynamische tarieven?
Ik shift nu de stooklijn automagisch met een automation tussen -5 en +1, op basis van de ruimte temperatuur en een set temperatuur.
Uiteindelijk kan ik de dynamische tarieven uitlezen en dan de gewenste ruimte temperatuur met een andere simpele automation een zetje geven.

Acties:
  • +1 Henk 'm!

  • wheli
  • Registratie: Mei 2013
  • Laatst online: 05-05 13:57
Ik heb lang lopen stoeien met HA en het is me nog niet gelukt om iets werkbaar te maken dus bedankt @nMad .
Ik zou toevoeging aan de TS zeker een goede optie vinden zodat de code geperfectioneerd kan worden.

ID.4 1st | 2320 Wp NO | 3200 Wp ZW | Climarad Sensa V2X | Pana WH-MDC07J3E5


Acties:
  • +1 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
FransvWoerkom schreef op vrijdag 6 december 2024 @ 23:03:
[...]

Je moet natuurlijk ook even kijken of de BUH 3, 6 of 9kW is (T-caps) en Riemann zou zich omdraaien in zijn graf als je hem hiervoor zou wakker maken. Je meet natuurlijk gewoon de tijd dat hij aanstaat en vermenigvuldigt dat met het vermogen.
T-Caps had ik inderdaad niet aan gedacht, Riemann vind het niet erg denk ik, in principe doet die ook gewoon de tijd vermenigvuldigen met het vermogen. Ik zie ook geen andere eenvoudige manier om het in HA te implementeren, hoe zou jij dat doen?

Acties:
  • 0 Henk 'm!

  • Pejdref
  • Registratie: November 2012
  • Laatst online: 21:19
FransvWoerkom schreef op vrijdag 6 december 2024 @ 23:10:
[...]

De Riemann methode van integreren is simpel de helft van het eerste en de helft van het laatste en verder alle tussenliggende samples bij elkaar optellen.
Die volg ik niet, maar dat klinkt meer als de trapezoidal rule. Door de manier waarop HA sensoren update geeft in 9 v/d 10 gevallen enkel de Linker Riemann methode zinnige resultaten.

Pejdref in "Home Assistant: Open source Python3 home automation - deel 5"

Acties:
  • 0 Henk 'm!

  • Tinkerer84
  • Registratie: November 2019
  • Laatst online: 05-05 17:56
Lollercopter schreef op zaterdag 7 december 2024 @ 00:32:
[...]

Ik shift nu de stooklijn automagisch met een automation tussen -5 en +1, op basis van de ruimte temperatuur en een set temperatuur.
Uiteindelijk kan ik de dynamische tarieven uitlezen en dan de gewenste ruimte temperatuur met een andere simpele automation een zetje geven.
Wat pas je dan aan, direct de target temp of de heat curve target temp? Zou je de automation kunnen delen?

Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 21:36
Wat is TOP33 Room_Thermostat_Temp in Heishamon eigenlijk?

De controller temperatuur of de externe Panasonic kamerthermostaat temperatuur?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


Acties:
  • +1 Henk 'm!

  • FransvWoerkom
  • Registratie: Maart 2018
  • Laatst online: 19:33
hemertje schreef op zondag 8 december 2024 @ 11:37:
Wat is TOP33 Room_Thermostat_Temp in Heishamon eigenlijk?

De controller temperatuur of de externe Panasonic kamerthermostaat temperatuur?
De kamertemperatuur wordt alleen aan de pana en dus aan de heishamon doorgegeven door de controller of door een room sensor. De externe kamerthermostaat, van panasonic, siemens of een ander merk, geeft geen temperatuur aan de pana door, alleen een aan-uit signaal.

In de service cloud zijn 2 kamertemperaturen beschikbaar: uit de controller of room sensor met een resolutie van 0,5° en uit de controller in hele graden naar beneden afgerond, hetzelfde als op het display. Ik denk dat je het best in het heishamon topic kunt vragen wat TOP33 precies betekent.

HeishaMon - Panasonic Aquarea monitoring

Acties:
  • 0 Henk 'm!

  • Diedo70
  • Registratie: Januari 2011
  • Laatst online: 02-05 21:42
Ik heb op dit moment de Heishamon draaien in home assistant dmv een heishamon.yaml file in de config/packages folder.
De versie die ik draai is nog 1.4.0 (18-09-2022).

Ik krijg repair meldingen dat bepaalde MQTT functies mbt de heishamon niet meer ondersteund worden per versie 2025.2.0.

Nu zou ik wel over willen gaan op de HACS Heishamon integratie, zodat eea wat makkelijker up to date blijft, maar ik vrees dat als ik nu 'zomaar' overschakel op de HACS integratie dat er wat foutmeldingen komen en of allerelei entities nieuw/dubbel worden aangemaakt en ik dat weer moet uitzoeken/koppelen

Op het moment heb ik eigenlijk niet de headspace om daar in te duiken, dus laat ik het al een lange zoals het is, want 'if it ain't broken, don't fix it'.

Heeft iemand eerder deze overstap gemaakt, en hoe ging dat?

Op zich heb ik de heishamon.yaml file nooit gewijzigd, en zijn eventuele extra sensors etc in de gewone configuration.yaml aangemaakt.

Of is de makkelijkste weg gewoon de meest recente heishamon.yaml van https://github.com/Egyras...0Assistant/heishamon.yaml pakken, en that's it?

[ Voor 8% gewijzigd door Diedo70 op 15-01-2025 14:55 ]

Pagina: 1 2 Laatste