Panasonic Warmtepompen besturen via Heishamon Rules

Pagina: 1 2 3 Laatste
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
@CurlyMo, houd dit in dat je maar gewoon vasthoud aan originele implementatie en dus geen LUA?

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +2 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
blb4 schreef op vrijdag 15 maart 2024 @ 17:40:
@CurlyMo, houd dit in dat je maar gewoon vasthoud aan originele implementatie en dus geen LUA?
Ja, want Lua vraagt veel te veel geheugen.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • +2 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
Zojuist nog weer 50microseconden gewonnen door de Labels as Values techniek :)

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • +3 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
CurlyMo schreef op vrijdag 15 maart 2024 @ 15:49:
[...]
code:
1
2
3
4
5
6
7
# Nieuw
rule #1 was prepared in 754 microseconds
rule #1 bytecode was created in 831 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/4 bytes, varstack 20/24 bytes
rule #1 was executed in 337 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/12, varstack 20/24 bytes
Rule 01.1 / 353: [ if $a > $b then $a = 6; end                        ]
CurlyMo schreef op vrijdag 15 maart 2024 @ 21:57:
Zojuist nog weer 50microseconden gewonnen door de Labels as Values techniek :)
Nu tijd gevonden om het eens te testen:
code:
1
2
3
4
5
6
7
Running from 1st heap
rule #1 was prepared in 294 microseconds
rule #1 bytecode was created in 442 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/4 bytes, varstack: 20/24 bytes
rule #1 was executed in 139 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/12, varstack 20/24 bytes
Rule 02.1 / 357: [ if $a > $b then $a = 6; end                        ]


BAM :Y

T.o.v. origineel:
code:
1
Snelheid: 139 / 791 microseconds

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
CurlyMo schreef op dinsdag 19 maart 2024 @ 21:02:
[...]


[...]


Nu tijd gevonden om het eens te testen:
code:
1
2
3
4
5
6
7
Running from 1st heap
rule #1 was prepared in 294 microseconds
rule #1 bytecode was created in 442 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/4 bytes, varstack: 20/24 bytes
rule #1 was executed in 139 microseconds
bytecode: 24/24, heap: 16/16, stack: 4/12, varstack 20/24 bytes
Rule 02.1 / 357: [ if $a > $b then $a = 6; end                        ]


BAM :Y

T.o.v. origineel:
code:
1
Snelheid: 139 / 791 microseconds
Klink goed maar ook als abracadabra :).

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • hannibal2206
  • Registratie: Februari 2005
  • Laatst online: 21:47
Ik heb een 5H die incidenteel een H20 error geeft, vanaf het begin (2018)

Via Heishamon en Domoticz kan ik als dat gebeurt een "SetReset=1" geven gevolgd door een "SetHeatpump=1", maar ik zou dat liever in een rule binnen de Heishamon hebben om geen afhankelijkheid te hebben van Domoticz en evt wifi issues.

Kan iemand me daar mee op weg helpen hoe dat er uit kan zien ?

Dus iets als :

if HeatPumpState = 1 and error = H20 then reset and power on

En dat dan in een loop elke 30 minuten of zo

[ Voor 4% gewijzigd door hannibal2206 op 22-03-2024 01:03 ]

15kW solar, 800 Ltr hygiëneboiler, 80 Heatpipes, 2 * L/L, Pana monoblock 5F en 5J, HR++/+++ , gasloos sinds Feb 2015


Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
Hoi @blb4 @CurlyMo mijn Heishamon draait nog steeds op Alpha-0c878f5. Ik heb geen inzicht op Github.
Is er een nieuwere alpha of beta?

[ Voor 4% gewijzigd door Binifada op 31-03-2024 19:13 ]


Acties:
  • +2 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
Daar is die: https://github.com/CurlyM...abbf12c739c3ffd62464eb74f

Lokaal getest met mijn eigen rulesets en de rules die ik van @blb4 in de github issues kon vinden.

Op basis van mijn eigen volledige ruleset. Totaal geheugengebruik:
Oud: 11480 bytes
Nieuw: 7068 bytes

[ Voor 21% gewijzigd door CurlyMo op 04-04-2024 22:20 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
CurlyMo schreef op donderdag 4 april 2024 @ 22:15:
Daar is die: https://github.com/CurlyM...abbf12c739c3ffd62464eb74f

Lokaal getest met mijn eigen rulesets en de rules die ik van @blb4 in de github issues kon vinden.

Op basis van mijn eigen volledige ruleset. Totaal geheugengebruik:
Oud: 11480 bytes
Nieuw: 7068 bytes
Klinkt goed! Heb je een link naar een binary die we kunnen laden?

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
blb4 schreef op donderdag 4 april 2024 @ 22:25:
[...]

Klinkt goed! Heb je een link naar een binary die we kunnen laden?
Die staan in de github actions van mijn repo, maar het enige wat die dan doet is de unittests draaien. Ik denk niet dat je daar wat aan hebt.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
CurlyMo schreef op donderdag 4 april 2024 @ 22:27:
[...]

Die staan in de github actions van mijn repo, maar het enige wat die dan doet is de unittests draaien. Ik denk niet dat je daar wat aan hebt.
oké! Dan wachten we nog even :)

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +2 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Top, ik heb 'm er op gezet en meteen geweldig resultaat, bijna een halvering van 't geheugengebruik:
rules memory used: 7452 / 16384

Hiervoor was 't met dezelfde ruleset: rules memory used: 14304 / 16384

Dank!!!!!!

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
blb4 schreef op vrijdag 5 april 2024 @ 22:59:
[...]

Top, ik heb 'm er op gezet en meteen geweldig resultaat, bijna een halvering van 't geheugengebruik:
rules memory used: 7452 / 16384

Hiervoor was 't met dezelfde ruleset: rules memory used: 14304 / 16384

Dank!!!!!!
Waar ik ook wel benieuwd naar ben zijn de prestatieverschillen. Dus de uitvoersnelheden van de vorige en de huidige versie.

Overigens is die halvering ook niet helemaal terecht, omdat hij nu delen in een ander geheugengebied opslaat.

bytecode: 272/272, heap: 52/52, stack: 4/16, varstack 596/888 bytes

Je moet sowieso nog even de varstack omvang erbij optellen. Dan is er nog wat klein geheugengebruik, maar dat is niet zo groot.

[ Voor 27% gewijzigd door CurlyMo op 05-04-2024 23:21 ]

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
mmm, hij draait helaas niet stabiel, erg veel restarts.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
blb4 schreef op zaterdag 6 april 2024 @ 01:33:
mmm, hij draait helaas niet stabiel, erg veel restarts.
Tijd om te debuggen in de PR :)

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • +3 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
Ter info. In de laatste versie heb ik string ondersteuning toegevoegd. Op de eerste plaats maakt dat het makkelijker om zelf debug regels neer te zetten:
Ruby:
1
2
3
4
if 1 == 1 then
  $a = 1;
  print('Waarde van $a: ', $a);
end


Maar later moet het mogelijk worden om de stooklijn via de rules aan te passen. Daar is vaker om gevraagd, maar daar was string ondersteuning voor nodig.
Ruby:
1
2
3
if 1 == 1 then
 @SetCurves = concat('{"zone1":{"heat":{"target":"high":', @Z1_Heat_Curve_Target_High_Temp, ',"low":', @Z1_Heat_Curve_Target_Low_Temp, '}}}}');
end

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Roeland
  • Registratie: Januari 2009
  • Laatst online: 21:20
@CurlyMo In voorbereiding op de nieuwe V5 heishamon ben ik begonnen m'n rules set uit te breiden. Ondanks dat deze nog vrij simpel is crasht de boel wel ongeveer om de dag. Zonder onderstaande rules (is nog lang niet af gezien ik tegen issues aanloop...) gebeurd dat niet. Op het moment draait versie 3.2-beta-3, wat is de laatste stabiele rules build? Dan kan ik die evt. uitproberen.

Heishamon heeft OT en S0 enabled, geen temperatuursensoren.

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
on System#Boot then
  setTimer(1, 1);
  #minFreq = 19;
end

on timer=1 then
  setTimer(1, 20);
  calcMinFreq();
  setPumpDuty();
end

on calcMinFreq then
  if @Compressor_Freq > 0 then
    $freq = @Compressor_Freq;
    #minFreq = (#minFreq - 19) * 0.93 + 19;
    #minFreq = floor(#minFreq);
    if #minFreq == @Compressor_Freq then
      #minFreq = #minFreq - 1;
    end
    if @Compressor_Freq > #minFreq + 5 then
      #minFreq = @Compressor_Freq - 5;
    end
    #minFreq = max(#minFreq, 19);
  else
    #minFreq = 19;
  end
end

on setPumpDuty then
  $target = 4;
  if @Operating_Mode_State == 1 then
    $mode = -1;
  else
    $mode = 1;
  end

  $delta = (@Main_Outlet_Temp - @Main_Inlet_Temp) * $mode - $target;
  $duty = @Max_Pump_Duty + round($delta);
  $duty = min(max($duty, 90), 140);
  @SetMaxPumpDuty = $duty;
end

on @compressor_freq then
  ?flameState = @compressor_freq > 0;
end

on @Outside_Temp then
  ?outsideTemp = @Outside_Temp;
end

Een ander ding is, als ik het volgende stukje (regel 20 hierboven):
code:
1
2
3
    if @Compressor_Freq > #minFreq + 5 then
      #minFreq = @Compressor_Freq - 5;
    end

vervang door:
code:
1
    #minFreq = max((@Compressor_Freq - 5), #minFreq);

Dan wordt dat afgewezen? Ik zie de fout niet...

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
@roeland, ik gebruik nu een paar weken HW V5, die blijkt vele malen stabieler met een grotere rules set. daar staat firmware 3.5 op.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Roeland
  • Registratie: Januari 2009
  • Laatst online: 21:20
@blb4 Top, dan ga ik die firmware proberen! Mocht dat niet lekker werken dan versneld de nieuwe HeishaMon in huis halen.

@CurlyMo Bovenstaande gezegd hebbende, ik neem aan dat V3.5 ook geschikt is voor de ESP8266?
https://github.com/IgorYb.../binaries/mode-type-small

[ Voor 42% gewijzigd door Roeland op 07-06-2024 11:08 ]


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
@Roeland ja, maar dit zijn primair vragen aan @thehog.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • hannibal2206
  • Registratie: Februari 2005
  • Laatst online: 21:47
hannibal2206 schreef op donderdag 21 maart 2024 @ 22:24:
Ik heb een 5H die incidenteel een H20 error geeft, vanaf het begin (2018)

Via Heishamon en Domoticz kan ik als dat gebeurt een "SetReset=1" geven gevolgd door een "SetHeatpump=1", maar ik zou dat liever in een rule binnen de Heishamon hebben om geen afhankelijkheid te hebben van Domoticz en evt wifi issues.

Kan iemand me daar mee op weg helpen hoe dat er uit kan zien ?

Dus iets als :

if HeatPumpState = 1 and error = H20 then reset and power on

En dat dan in een loop elke 30 minuten of zo
Iemand die me op weg kan helpen ?

15kW solar, 800 Ltr hygiëneboiler, 80 Heatpipes, 2 * L/L, Pana monoblock 5F en 5J, HR++/+++ , gasloos sinds Feb 2015


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 07:08
hannibal2206 schreef op maandag 10 juni 2024 @ 20:19:
[...]


Iemand die me op weg kan helpen ?
Heb je de handleiding en voorbeelden hier als een bekeken voor de syntax en mogelijkheden?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • edterbak
  • Registratie: Maart 2006
  • Laatst online: 07-07 23:37
Hoi,

Ik wil graag firmware v3.5 proberen.
Kan ik kijk op de github van IgorYbema
https://github.com/IgorYbema/HeishaMon/tree/main/binaries

Welke model moet ik nu hebben?
Het is mij niet echt duidelijk a.d.h.v. de readme.
Ik heb nog gewoon de 'oude' 3.0 of 3.1 pcb in dat witte vierkante kastje.

Alvast bedankt

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Hoi @edterbak, ik ben geen github expert maar ik zit altijd een beetje op de alfa releases via https://github.com/IgorYbema/HeishaMon/actions. Als je daar een binary download krijg je een zip file met 2 bestanden, 1 voor de ESP32, de andere voor de ESP8266. Mogelijk dat je hier iets aan hebt?

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Pietjebel10
  • Registratie: Augustus 2010
  • Laatst online: 14-07 11:08
edterbak schreef op dinsdag 18 juni 2024 @ 22:32:
Hoi,

Ik wil graag firmware v3.5 proberen.
Kan ik kijk op de github van IgorYbema
https://github.com/IgorYbema/HeishaMon/tree/main/binaries

Welke model moet ik nu hebben?
Het is mij niet echt duidelijk a.d.h.v. de readme.
Ik heb nog gewoon de 'oude' 3.0 of 3.1 pcb in dat witte vierkante kastje.

Alvast bedankt
@edterbak
Voor het oude model moet mode-type-small hebben (bij jouw oudere/kleine model)
HeishaMon.ino.d1-v3.5.bin

Voor het nieuwe model mode-type-large gebaseerd op esp32

Acties:
  • 0 Henk 'm!

  • edterbak
  • Registratie: Maart 2006
  • Laatst online: 07-07 23:37
@thehog
Ik probeerde vandaag de firmware v3.5 (small) te flashen. Deze gaf een foutmelding (failed iets met de FS.)

HeishaMon.ino.d1-v3.5.bin

Kun je voor mij alsjeblieft de md5 checksum ook uploaden in de binary folder?

Pro memory.. : Je gaf vorige week aan de github van Egyras ook te updaten met v3.5 fw. :)


Groetjes.

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
@klaashoekstra94 , ik heb een paar dagen geleden (eindelijk) de minify getest voor alleen commentaar (-c optie) maar dat gaf een foutmelding. Zie github.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • edterbak
  • Registratie: Maart 2006
  • Laatst online: 07-07 23:37
edterbak schreef op woensdag 19 juni 2024 @ 22:25:
@thehog
Ik probeerde vandaag de firmware v3.5 (small) te flashen. Deze gaf een foutmelding (failed iets met de FS.)

HeishaMon.ino.d1-v3.5.bin

Kun je voor mij alsjeblieft de md5 checksum ook uploaden in de binary folder?

Pro memory.. : Je gaf vorige week aan de github van Egyras ook te updaten met v3.5 fw. :)


Groetjes.
@thehog
Is mijn verwachting dat https://github.com/Egyras/HeishaMon 'spoedig' geupldate zal worden met v3.5 onjuist? Misschien kun je mijn verwachting hierin bijsturen :)

Ik kan overigens niet een 'issue' in github aanmaken voor het ontbreken van de MD5 file van v3.5 op https://github.com/IgorYbema/HeishaMon (Toch?)

Gr.

Acties:
  • 0 Henk 'm!

  • Joost
  • Registratie: November 2005
  • Laatst online: 10-07 22:25
Ik ben onder de indruk van wat iedereen knutstelt met Heishamon-rules, vooral omdat mij nog wel veel onduidelijk is naar de werking ervan; ik ben eigenlijk op zoek naar iets heel simpels. Ik wil ervoor zorgen dat mijn warmtepomp bij < 5 graden buiten in de verwarmingsmodus springt, zodat de boel bij langdurige afwezigheid verwarmt zonder afhankelijkheid van externe systemen (Home Assistant, een MQTT-server).

Edit: nu zelf de volgende ruleset geknutseld - zou dit werken?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
on @Outside_Temp then
  if @Holiday_Mode_State == 2 then
    if @Outside_Temp < 5 then
      if @Operating_Mode_State != 4 then
        @Operating_Mode_State = 4;
      end
    end
    if @Outside_Temp >= 5 then
      if @Operating_Mode_State != 3 then
        @Operating_Mode_State = 3;
      end
    end
  end
end

[ Voor 63% gewijzigd door Joost op 04-07-2024 19:28 ]

Ik ben helemaal geen stagiair


Acties:
  • 0 Henk 'm!

  • boroma
  • Registratie: Mei 2024
  • Laatst online: 23-01 22:04
als de kaamer setpoint temperatur teruggezet word gebeuren er raare dinge met een aquarea L WP.
Afbeeldingslocatie: https://tweakers.net/i/1_hg4jcUheGc1BztJyljY52RXrE=/800x/filters:strip_exif()/f/image/c2gH8kuuYrgqrmlJLQ2NQI4a.png?f=fotoalbum_large
het property Main_Target_Temp gaat erg sterk treug en de WP staat still.
wie heeft een L type WP en welke rules zijn activ?

kan het zijn dat andere methoden tot een beeter resultat voeren?

Acties:
  • +4 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Na lange stilte maar weer eens een update van mijn kant. De ontwikkeling van de rules was een beetje stil komen te liggen door de onstabiliteit van HeishaMon. Voor zover ik 't kan plaatsen was dat een combinatie van onstabiliteit in de firmware (er werd een hele boel tegelijk ontwikkeld) en de beperkte capaciteit van de op EPS8266 gebaseerde HeishaMon small in combinatie met alle opties + grote rules set gebruiken.
Deze problemen zijn allemaal zo'n beetje verdwenen met de EPS32 gebaseerde HeishaMon Large met Firmware 3.8.

Ik zat de laatste tijd nog wat te klooien met de TaShift functie maar die draait nu ook stabiel. Daarom maar weer eens tijd om mijn rules set te plaatsen. Ter lering & vermaak, gebruik (van delen of geheel) op eigen risico!

Functionaliteit:
TaShift: Aanpassen TaTarget t.b.v. 1) Softstart functie (Hz zo snel mogelijk naar beneden, 2) Kamertemperatuurdelta en 3) wens om compressor minimaal 1 uur te laten draaien.

OpenThermThermostat: AAN/UIT schakelen WP (@SetHeatpump 1/0) op basis van vraag Thermostaat

DHW: standaard DHW productie begin van de middag en legionellarun op zaterdag. Als DHW temperatuur te ver gezakt is wordt DHW run ook op andere tijdstippen gestart maar dan liefts nog wel na 10:00u. Als op vrijdag DHW wordt geproduceerd dan ook maar de Legionellarun op vrijdag, die hoeft dan niet meer op zaterdag.

PumpDuty: De pompsnelheid wordt laag gehouden om stromingsgeluiden te voorkomen. Omdat ik met (gedeeltelijke) naregeling werk varieert de stromingsweerstand van mijn installatie waarop de pompsnelheid wordt aangepast. Hierbij wordt de minimale flow om E62 error te voorkomen in acht genomen.

Quietmode: QM 0 tot 3 worden ingesteld voor minder geluid 's nachts en ook om hoge Hz bij opstarten tegen te gaan. Tijdens DHW productie overdag worden de remmen iets los gelaten om makkelijker het hoge temperaturen te produceren.

SyncOT: Geselecteerde parameters van de WP wordt via OpenTherm protocol doorgegeven aan OpenTherm Gateway en Thermostaat. chEnable wordt, omdat deze parameter van Evohome wat onbetrouwbaar is met wat safeguards omgezet in #chEnable en roomtempdifference (verschil tussen gewenste en gemeten kamertemperatuur) wordt uitgelezen. Deze waarde komt in mijn geval via Home Assistant via de OpenTherm Integratie/Gateway middels parameter ?roomTempSet omdat Evohome deze waarde niet doorgeeft (is natuurlijk ook lastig bij een zonesysteem).


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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
on System#Boot then
    print('BLB Heishamon_rules20241123.txt');
    print('my environment: Panasonic WH-MDC07J3E5 HeishaMon Large with CZ-TAW1 on proxy port Honeywell Evohome Opentherm Thermostat (R8810 bridge) connected via OpenTherm Gateway.');
    print('Honeywell Evohome & OpenTherm Gateway integration in Home Assistant to communicate RoomTemperatureDelta to HeishaMon rules as chSetpoint from Evohome is not reliable. Settings Heat Pump:');
    print('Operating_Mode_State: 0, Heating_Mode: 0, Cooling_Mode: 1, Buffer_Installed: 0, DHW_Installed: 1, Pump_Flowrate_Mode: 0, Optional_PCB: 0, Z1_Sensor_Settings: 0');

    #allowDHW = 1;
    #allowOTT = 1;
    #allowTaShift= 1;
    #allowPumpDuty = 1;
    #allowQuietMode = 1;
    #allowSynchHP = 1;
    #allowSyncOT = 1;

    #chEnable = -1;
    #chEnableOffTime = -1;
    #chEnableTimeOff = -1;
    #CompFreqTarget = -1;
    #CompRunTime = -1;
    #CompRunSec = -1;
    #CompState = -1;
    #CompStateChangeTime = -1;
    #Debug = 1;
    #DHWRun = -1;
    #FirstBoot = 1;
    #Heat = -1;
    #HPStateP = -1;
    #HPStateR = -1;
    #LegionellaRunDay = 7;
    #MaxPumpDuty = -1;
    #MaxPumpFlow = -1;
    #OMP = -1;
    #OMR = -1;
    #QMR = -1;
    #RemoteOverRide = -1;
    #RoomTempDelta = -1;
    #RoomTempSet  = -1;
    #SHifT = -1;
    #Time = -1;
    #WarCor = -1;
    setTimer(1,60);
    setTimer(2,10);
end

on TaShift then
    #allowTaShift = #allowTaShift + 1;
    if #allowTaShift > 20 then #allowTaShift = 2; end
    if (#CompRunTime < 15 || #allowTaShift == 2) && #DHWRun < 1 && @ThreeWay_Valve_State == 0 then
        if #Debug > 10 then $com = 'basic conditions for TaShift fullfilled'; end
        #SHifT = @Z1_Heat_Request_Temp;
        if #CompState > 0 then
            if #Debug > 1 || #RemoteOverRide > 0 then   print('TaShift if Compressor is running');  end
            TaShift2();
        else
            $StopTime = -2 * @Outside_Temp - 30;
            if  #CompState == 0 && #CompRunTime > $StopTime && #CompRunTime < 2 then
                if #Debug > 10 then $com = 'if compressor is off for a relative short time (depending on outside temperature) SHifT to -5 to avoid short cycle'; end
                #SHifT = -5;
            else
                if #Debug > 10 then $com = 'SHifT back to 0 when compressor is off and $StopTime is over '; end
                #SHifT = 0;
            end
        end
        if (%hour > 22 || %hour < 7) && @Outside_Temp < 3 && #SHifT > -3 && (@Main_Outlet_Temp - @Z1_Water_Target_Temp) < 0.5 && #CompState > 0 then
            if #Debug > 10 then $com = 'Between 23h and 7h SHifT -1 to switch off compressor a bit earlier'; end
            #SHifT = -1 + #SHifT;
        end

        if #Debug > 10 then $com = 'shift Z1HRT if required but not outside the range -5 to +5'; end
        #SHifT = min(max(#SHifT, -5), 5);
        if #SHifT != @Z1_Heat_Request_Temp && #RemoteOverRide < 1 then @SetZ1HeatRequestTemperature = #SHifT; end
    end
end

on TaShift2 then
        $WarTemp = @Z1_Water_Target_Temp - @Z1_Heat_Request_Temp;
    if #CompRunSec < 180 && #CompState == 1 then
        #SHifT = ceil(@Main_Outlet_Temp - 4) - ($WarTemp);
        if @Defrosting_State > 0 then #SHifT = #SHifT - 2; end
        $a = '1, CRS < 180';
    elseif #CompRunTime < (30 - @Outside_Temp) then
        #SHifT = ceil(@Main_Outlet_Temp - 1.8) - ($WarTemp);
        $a = concat('2, CRT < ', (30 - @Outside_Temp));
        #WarCor = #SHifT;
    elseif #RoomTempDelta > -0.3 && #RoomTempDelta < 0.3 then
        $a = '3 (room temp ok    )';
    elseif #RoomTempDelta < 0 then
        #SHifT = ceil(@Main_Outlet_Temp - round(#RoomTempDelta * -3)) - $WarTemp + #WarCor;
        $a = '4 (room temp to low)';
    else
        #SHifT = ceil(@Main_Outlet_Temp - round(#RoomTempDelta * -3)) - $WarTemp + #WarCor;
        $a = '5 (room temp to hot, CF)';
        if (@Main_Outlet_Temp - @Z1_Water_Target_Temp - #SHifT) > 1.8 then
            #SHifT = ceil(@Main_Outlet_Temp - 1.8) - $WarTemp;
            $a = '6 (room temp to hot, limit #SHifT)';
        end
    end
    if #Debug > 0 || #RemoteOverRide > 0 then   print('TaM phase ', $a, ' CRS: ', #CompRunSec, ' CRT: ', #CompRunTime, ' RTD: ', #RoomTempDelta, ' SHifT: ', #SHifT, ' MOT: ', @Main_Outlet_Temp, ' Z1T: ',  @Z1_Water_Target_Temp);    end
    #SHifT = min(#SHifT, 2);
end

on HeatPumpState($a) then
    if @Heatpump_State != #HPStateR && #RemoteOverRide != -1 then
        print('HeatPumpState, origin: ', $a);
        @SetHeatpump = #HPStateR;
    end
end
    
on OperatingMode then
    if @Operating_Mode_State != #OMR then @SetOperationMode = #OMR; end
end

on OpenThermThermostat then
    if #allowOTT == 1 && #RemoteOverRide < 3 && #DHWRun < 1 && @ThreeWay_Valve_State == 0 && @Defrosting_State == 0 then
        if #chEnable == 1 && #RoomTempDelta < 0.3 then
            #HPStateR = 1;
            HeatPumpState('OTTon');
        end
        $OTT = 0;
        if #RoomTempDelta > 1 || #chEnableOffTime > 30 then
            $OTT = 1;
        elseif #chEnableOffTime > 15 && #CompRunTime < -15 then
            $OTT = 2;
        elseif #chEnableOffTime > 5 && %hour > 22 then
            $OTT = 3;
        end
        if $OTT > 0 && @ThreeWay_Valve_State == 0 && (#CompRunTime > 90 || #CompState == 0) && @Outside_Temp > -5 then
            if #Debug > 0 || #RemoteOverRide > 0 then print('OTT first condtition is TRUE, $OTT: ', $OTT); end
            if @ThreeWay_Valve_State == 0 && (#CompRunTime > 90 || #CompState == 0) && @Outside_Temp > -5 && #HPStateR != 0 then
                #HPStateR = 0;
                HeatPumpState('OTToff');
                if  @Operating_Mode_State != 0 then @SetOperationMode = 0; end
                #allowOTT = 2;
                setTimer(7,600);
            end
            if #chEnable == 0 && #allowOTT != 2 then
                #allowOTT = 3;
                setTimer(7,25);
            end
        end
    end
end

on DHW then
    if #allowDHW == 1 && #RemoteOverRide < 4 then
        #allowDHW = 2;
        if @ThreeWay_Valve_State == 0 && (@DHW_Temp < (@DHW_Target_Temp + @DHW_Heat_Delta - 5) || (%hour == 13 && (%day == #LegionellaRunDay || @DHW_Temp < (@DHW_Target_Temp + @DHW_Heat_Delta)))) then
            #DHWRun = 1;
            #OMP = @Operating_Mode_State;
            #HPStateP = @Heatpump_State;
            if #OMP == 0 then 
                #OMR = 4;
            elseif #OMP == 1 then
                #OMR = 5;
            else
                #OMR = 3;
            end
            OperatingMode();
            #HPStateR = 1;
            HeatPumpState('DHWon');
        end
        if #DHWRun > 0 then
            if %day > 5 && %hour > 10 && @DHW_Temp > 47 && @Sterilization_State != 1 then
                @SetForceSterilization = 1;
                #LegionellaRunDay = 8;
            end
            if @ThreeWay_Valve_State == 0 && @DHW_Temp >= @DHW_Target_Temp && @Defrosting_State == 0 && @Sterilization_State == 0 then
                @SetOperationMode = max(0, #OMP);
                if @Heatpump_State != #HPStateP then
                    #HPStateR = #HPStateP;
                    HeatPumpState('DHWoff');
                end
                #OMP = @Operating_Mode_State;
                #HPStateP = 1;
                #DHWRun = 0;
            end
        end
        if %day == 7 && #LegionellaRunDay == 8 then #LegionellaRunDay = 7; end
        setTimer(6,900);
    end
end

on pumpDuty then
    if #allowPumpDuty == 1 && #RemoteOverRide < 5 then
        #allowPumpDuty = 2;
        #MaxPumpDuty = 85;
        if @ThreeWay_Valve_State == 1 then
            #MaxPumpDuty = 140;
            if (@Sterilization_State == 0 && @DHW_Temp > @DHW_Target_Temp) || (@Sterilization_State == 1 && @DHW_Temp > 57) then
                #MaxPumpDuty = 10 + #MaxPumpDuty;
            end
        elseif @Heatpump_State == 1 then
            if @Compressor_Freq == 0 && @Defrosting_State != 1 then
                #MaxPumpDuty = 82;
            elseif @Operating_Mode_State != 1 then
                $QFH = 10;      $QFL = 14;      $tH = 11;       $tL = -3;
                if @Outside_Temp >= $tH then
                    #MaxPumpFlow = $QFH;
                elseif @Outside_Temp <= $tL then
                    #MaxPumpFlow = $QFL;
                else
                    #MaxPumpFlow = ceil($QFH + ($tH - @Outside_Temp) * ($QFL - $QFH) / ($tH - $tL));
                end
                if @Pump_Flow > 1 && @Pump_Flow < 8 && #MaxPumpDuty <= @Max_Pump_Duty then
                    #MaxPumpDuty = @Max_Pump_Duty + 1;
                else
                    #MaxPumpDuty = 55 + floor(#MaxPumpFlow * 3);
                    if (@Pump_Speed / @Pump_Flow) > 145 then
                        if @Pump_Flow > 8 then
                            #MaxPumpDuty = @Max_Pump_Duty - 1;
                        else
                            #MaxPumpDuty = @Max_Pump_Duty;
                        end
                    end
                end
            else
                #MaxPumpDuty = 92;
            end
        end
        #MaxPumpDuty = max(#MaxPumpDuty, 82);
        if @Max_Pump_Duty != #MaxPumpDuty then @SetMaxPumpDuty = #MaxPumpDuty; end
        setTimer(5, 60);
    end
end

on SetQuietMode then
    if #QMR != @Quiet_Mode_Level then @SetQuietMode = #QMR; end
end

on QuietMode then
    if #allowQuietMode == 1 && #RemoteOverRide < 2 && @Defrosting_State == 0 then
        #allowQuietMode = 2;
        if @Outside_Temp < 3 || (@Outside_Temp < 5 && #CompFreqTarget == 34) then
            #CompFreqTarget = 34;
        else
            #CompFreqTarget = 24;
        end
        if #CompRunTime < 3 && @Compressor_Freq > 33 then
            #QMR = 3;
        elseif @Compressor_Freq < #CompFreqTarget || (#QMR == 0 && @Compressor_Freq < #CompFreqTarget + 6) then
            #QMR = 0;
        elseif @Compressor_Freq < #CompFreqTarget + 6 || (#QMR == 1 && @Compressor_Freq < #CompFreqTarget + 12) then
            #QMR = 1;
        elseif @Compressor_Freq < #CompFreqTarget + 26 || (#QMR == 2 && @Compressor_Freq < #CompFreqTarget + 32) then
            #QMR = 2;
        else
            #QMR = 3;
        end
        if #QMR > 1 && @ThreeWay_Valve_State == 1 && %hour > 9 && %hour < 17 then #QMR = -1 + #QMR; end 
        setTimer(3,120);
    end
    if (@Defrosting_State == 1 && #allowQuietMode > 0 || #CompState < 1 || #CompRunTime < 5) || %hour < 7 then #QMR = 3; end
    SetQuietMode();
end

on syncOT then
    if  #allowSyncOT == 1 then
        ?outletTemp = round(@Main_Outlet_Temp);
        ?outsideTemp = #OutsideTemp;
        ?dhwTemp = round(@DHW_Temp);
        ?dhwSetpoint = @DHW_Target_Temp;
        if ?chEnable == 1 then
            #chEnable = 1;
            if #chEnableTimeOff != -1 then
                #chEnableTimeOff = -1;
                #chEnableOffTime= -1;
            end
        else
            if #chEnableTimeOff == -1 then #chEnableTimeOff = #Time; end
            #chEnableOffTime= #Time - #chEnableTimeOff;
            if #chEnableOffTime> 5 then #chEnable = 0; end
        end
        ?maxTSet = @Z1_Water_Target_Temp + 5;
        if #CompState > 0 then
            ?flameState = 1;
            if @Heat_Power_Consumption > 0 then ?chState = 1; else ?chState = 0; end
            if @DHW_Power_Consumption > 0 then ?dhwState = 1; else ?dhwState = 0; end
            if @Cool_Power_Consumption > 0 then ?coolingState = 1; else ?coolingState = 0; end
        else
            ?flameState = 0;
            ?chState = 0;
            ?dhwState = 0;
            ?coolingState = 0;
        end
        if #RoomTempSet == -1 then #RoomTempSet = ?roomTempSet; end
        if ?roomTempSet != 0 then
            if #Debug > 10 then $com = ('set RoomTempDeta with some safeguards around ?roomTempSet (not zero and change < 1)'); end
            #RoomTempSet = round(?roomTempSet * 10) / 10;
            #RoomTempDelta = max(min(20 - #RoomTempSet, 5), -5);
        end
    end
end

on syncHP then
    if #allowSynchHP == 1 then
        #allowSynchHP = 2;
        if @Operating_Mode_State == 0 || @Operating_Mode_State ==  4 then
            #Heat = 1;
        else
            #Heat = 0;
        end
        #RemoteOverRide = @Z2_Heat_Request_Temp;
        setTimer(9,30);
    end
end

on @Compressor_Freq then
    if @Compressor_Freq > 18 && #CompState == 0 then
        #CompStateChangeTime= #Time;
        #CompState = 1;
        #CompRunSec = 0;
        setTimer(10,5);
    elseif @Compressor_Freq < 18 && #CompState > 0 then
        #CompStateChangeTime= #Time;
        #CompState = 0;
    end
end

on @Main_Outlet_Temp then
    #allowTaShift = 1;
end

on @Z1_Water_Target_Temp then
    #allowTaShift = 1;
end

on timer=1 then
    setTimer(1,15);
    if #FirstBoot == 1 then
        #CompStateChangeTime= #Time;
        #RoomTempDelta = 0;
        if @Compressor_Freq > 18 then
            #CompState = 2;
        else
            #CompState = 0;
            @SetZ1HeatRequestTemperature = 0;
        end
        #SHifT = @Z1_Heat_Request_Temp;
        if @ThreeWay_Valve_State == 1 && #allowDHW == 1 then #DHWRun = 2; end
        #FirstBoot = 2;
    else
        syncHP();
        syncOT();
        QuietMode();
        pumpDuty();
        DHW();
        if #Heat ==  1 then
            OpenThermThermostat();
            TaShift();
        end
    end
end

on timer=2 then
    #Time = %day * 1440 + %hour * 60 + %minute;
    if @Compressor_Freq > 18 then
        #CompRunTime = #Time - #CompStateChangeTime;
        if #CompRunTime< 0 then
            #CompRunTime = #Time - #CompStateChangeTime + 10080;
        end
    else
        #CompRunTime = #CompStateChangeTime - #Time;
    end
    setTimer(2,60);
end

on timer=3 then #allowQuietMode = 1; end
on timer=5 then #allowPumpDuty = 1; end
on timer=6 then #allowDHW = 1; end
on timer=7 then #allowOTT  = 1; end
on timer=9 then #allowSynchHP = 1; end

on timer=10 then
    #CompRunSec = #CompRunSec + 5;
    if #CompRunSec < 600 then   setTimer(10,5); end
end

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
blb4 schreef op vrijdag 22 november 2024 @ 15:49:
Na lange stilte maar weer eens een update van mijn kant. De ontwikkeling van de rules was een beetje stil komen te liggen door de onstabiliteit van HeishaMon. Voor zover ik 't kan plaatsen was dat een combinatie van onstabiliteit in de firmware (er werd een hele boel tegelijk ontwikkeld) en de beperkte capaciteit van de op EPS8266 gebaseerde HeishaMon small in combinatie met alle opties + grote rules set gebruiken.
Deze problemen zijn allemaal zo'n beetje verdwenen met de EPS32 gebaseerde HeishaMon Large met Firmware 3.8.
Hallo @blb4

Ik gebruik jullie regels (20240819) al een tijdje in een aangepaste vorm.
Zijn er grote verschillen?

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op vrijdag 22 november 2024 @ 18:35:
[...]


Hallo @blb4

Ik gebruik jullie regels (20240819) al een tijdje in een aangepaste vorm.
Zijn er grote verschillen?
Grootste deel is ‘t zelfde gebleven, de enige echte verandering zit in wat nu TaShift heet (hiervoor TaManipulations).

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
@blb4

Hartelijk dank voor het delen. Ik heb veel geleerd van je regels en programmeren is weer leuk.

Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
Hallo @blb4 ,

Je kunt ook lokale variabelen gebruiken in je regels. Deze worden niet weergegeven in de console of in het USB-logboek. Is hier een oplossing voor?

Ik gebruik Heishamon V5 en Software 3.8.

Groeten Binifada

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op maandag 25 november 2024 @ 18:05:
Hallo @blb4 ,

Je kunt ook lokale variabelen gebruiken in je regels. Deze worden niet weergegeven in de console of in het USB-logboek. Is hier een oplossing voor?

Ik gebruik Heishamon V5 en Software 3.8.

Groeten Binifada
Klopt, dit zijn nog wat nukken in de huidige FW.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
Sorry voor mijn slechte Nederlands. Het is net zo goed/slecht als Deepl-Translate. 8)

Als je iets wilt weten en leren over Regels, kun je hier altijd iets ontdekken.

Ik gebruik de @blb4 regels sinds ze hier en op Github zijn gepubliceerd. Ik heb niet alle regels nodig, DHW en pumpDuty, anders werken de regels met kleine aanpassingen. En sinds Heishamon V5 en Software 3.8 zijn er eigenlijk geen problemen meer.
Tot nu toe heb ik het goed gedaan met versie 20240821. Nu is er 20241123 die waarschijnlijk op onderdelen een andere focus heeft. Nu probeer ik natuurlijk de betekenis en het doel van de regels te begrijpen, maar de bedoeling van de auteur is niet duidelijk. BLB4 zal hier zelf commentaar op moeten geven als hij dat wil.

20240821 versus 20241123

Het leek mij dat de eerdere versie ook ontworpen was voor langere runtimes. De nieuwe versie legt de nadruk op de OpenTherm thermostaat.
Wat is de reden hiervoor? Minder schrijfacties naar de EPROM, meer gemak ...

Misschien kan de professional ons hier meer over vertellen ... _/-\o_

Acties:
  • +2 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

@Binifada je kunt alle wijzigingen hier inzien: https://github.com/blb4gi...4a0945bdcd775570d1146deba

Als je tevreden bent met de huidige variant, hoef je natuurlijk niet bij te werken.

Ik zelf heb een tijdje met de Node Red flow gedraaid, een paar eigen regels erbij ter ondersteuning. Maar ik vind de set van @blb4 dusdanig goed eruit zien dat ik die nu weer heb overgenomen.

Het is mij alleen niet helemaal duidelijk hoe ik de bandbreedte van de pumpflow kan instellen, hij tuned hem nu wat terug maar hij mag van mij wel iets sneller lopen.

Acties:
  • +2 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
@Binifada , @Beekforel , Nu mijn rules set weer behoorlijk stabiel draait (eingelijk alleen de TaShift functie blijft wat opspelen, de rest is al maanden stabiel) zal ik weer wat aandacht aan de documentatie geven. Zodra ik dat heb zal ik die op Github plaatsen. Mijn bedoeling is 1 rules set die je zo zou kunnen inladen en 1 die voorzien is van commentaar.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
@Beekforel


Het is mij alleen niet helemaal duidelijk hoe ik de bandbreedte van de pumpflow kan instellen, hij tuned hem nu wat terug maar hij mag van mij wel iets sneller lopen.
deactiveer op PumpDuty, dan regelt de Jeisha zichzelf weer

Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

blb4 schreef op woensdag 27 november 2024 @ 16:06:
@Binifada , @Beekforel , Nu mijn rules set weer behoorlijk stabiel draait (eingelijk alleen de TaShift functie blijft wat opspelen, de rest is al maanden stabiel) zal ik weer wat aandacht aan de documentatie geven. Zodra ik dat heb zal ik die op Github plaatsen. Mijn bedoeling is 1 rules set die je zo zou kunnen inladen en 1 die voorzien is van commentaar.
Ik merk inderdaad dat die shift niet goed gaat, zal kijken of ik er wat aan kan debuggen.

Heb de houtkachel aan, hij ging netjes naar -5 schiften. Later ook zelfs uit. Maar vervolgens weer naar 0 geshift en power weer aan, hij draait nu weer vrolijk mee.
Binifada schreef op woensdag 27 november 2024 @ 18:06:
[...]


deactiveer op PumpDuty, dan regelt de Jeisha zichzelf weer
Dat snap ik, maar ik zou hem wel variabel willen hebben zoals in de rules.

[ Voor 27% gewijzigd door Beekforel op 27-11-2024 19:05 ]


Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Beekforel schreef op woensdag 27 november 2024 @ 18:56:
[...]

Ik merk inderdaad dat die shift niet goed gaat, zal kijken of ik er wat aan kan debuggen.

Heb de houtkachel aan, hij ging netjes naar -5 schiften. Later ook zelfs uit. Maar vervolgens weer naar 0 geshift en power weer aan, hij draait nu weer vrolijk mee.


[...]

Dat snap ik, maar ik zou hem wel variabel willen hebben zoals in de rules.
Inmiddels gaat die mij mij al weer beter:

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
on TaShift then
    #allowTaShift = #allowTaShift + 1;
    if #allowTaShift > 20 then #allowTaShift = 2; end
    if (#CompRunTime < 15 || #allowTaShift == 2) && #DHWRun < 1 && @ThreeWay_Valve_State == 0 then
        if #Debug > 10 then $com = 'basic conditions for TaShift fullfilled'; end
        #SHifT = @Z1_Heat_Request_Temp;
        if #CompState > 0 then
            if #Debug > 1 || #RemoteOverRide > 0 then   print('TaShift if Compressor is running');  end
            TaShift2();
        else
            $StopTime = - 2 * @Outside_Temp - 30;
            if  #CompState == 0 && #CompRunTime > $StopTime && #CompRunTime < 2 then
                if #Debug > 10 then $com = 'if compressor is off for a relative short time (depending on outside temperature) SHifT to -5 to avoid short cycle'; end
                #SHifT = -5;
            else
                if #Debug > 10 then $com = 'SHifT back to 0 when compressor is off and $StopTime is over '; end
                #SHifT = 0;
            end
        end
        if (%hour > 22 || %hour < 7) && @Outside_Temp < 3 && #SHifT > -3 && (@Main_Outlet_Temp - @Z1_Water_Target_Temp) < 0.5 && #CompState > 0 then
            if #Debug > 10 then $com = 'Between 23h and 7h SHifT -1 to switch off compressor a bit earlier'; end
            #SHifT = -1 + #SHifT;
        end

        if #Debug > 10 then $com = 'shift Z1HRT if required but not outside the range -5 to +5'; end
        #SHifT = min(max(#SHifT, -5), 5);
        if #SHifT != @Z1_Heat_Request_Temp && #RemoteOverRide < 1 then @SetZ1HeatRequestTemperature = #SHifT; end
    end
end

on TaShift2 then
    $WarTemp = @Z1_Water_Target_Temp - @Z1_Heat_Request_Temp;
    if #CompRunSec < 180 && #CompState == 1 then
        #SoftStartControl = ceil(@Main_Outlet_Temp - 3 + ceil(#CompRunSec / 60)) - $WarTemp;
        $a = 1; $b = ', CRS < 180';
    elseif #CompRunTime < (300 -  5 * @Outside_Temp) then
        if @Main_Outlet_Temp > #MOT then 
            #SoftStartControl = ceil(@Main_Outlet_Temp - 1.8) - $WarTemp;
        else
            #SoftStartControl = ceil(@Main_Outlet_Temp - 1.6) - $WarTemp;
        end
        $a = 2; $b = concat(', CRT < ', (300 - 5 * @Outside_Temp));
    elseif #SoftStartControl > 0 then
        $a = 3; $b = ', Back to 0';
        if #CompRunTime / 60 == round(#CompRunTime / 60) then
            #SoftStartControl = #SoftStartControl - 1;
        end
    else
        $a = 4; $b = ', TaShift Finished';
    end
    #MOT = @Main_Outlet_Temp;
    #RoomTempControl = round(#RoomTempDelta * -3);
    #SHifT = #SoftStartControl + #RoomTempControl;

    if $a > 1 && (@Main_Outlet_Temp - $WarTemp - #SHifT) > 1.8 then
        #SHifT = ceil(@Main_Outlet_Temp - 1.8) - $WarTemp;
        $a = $a + 10; $b = concat($b,' ( limit #SHifT)');
    end
    if #Debug > 0 || #RemoteOverRide > 0 then   print('TaM phase ', $a, $b, ' CRS: ', #CompRunSec, ' CRT: ', #CompRunTime, ' RTD: ', #RoomTempDelta, ' SSC: ', #SoftStartControl, ' RTC: ', #RoomTempControl, ' SHifT: ', #SHifT, ' MOT: ', @Main_Outlet_Temp, ' Z1T: ',  @Z1_Water_Target_Temp);   end
end

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

blb4 schreef op woensdag 27 november 2024 @ 19:38:
[...]

Inmiddels gaat die mij mij al weer beter:

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
on TaShift then
    #allowTaShift = #allowTaShift + 1;
    if #allowTaShift > 20 then #allowTaShift = 2; end
    if (#CompRunTime < 15 || #allowTaShift == 2) && #DHWRun < 1 && @ThreeWay_Valve_State == 0 then
        if #Debug > 10 then $com = 'basic conditions for TaShift fullfilled'; end
        #SHifT = @Z1_Heat_Request_Temp;
        if #CompState > 0 then
            if #Debug > 1 || #RemoteOverRide > 0 then   print('TaShift if Compressor is running');  end
            TaShift2();
        else
            $StopTime = - 2 * @Outside_Temp - 30;
            if  #CompState == 0 && #CompRunTime > $StopTime && #CompRunTime < 2 then
                if #Debug > 10 then $com = 'if compressor is off for a relative short time (depending on outside temperature) SHifT to -5 to avoid short cycle'; end
                #SHifT = -5;
            else
                if #Debug > 10 then $com = 'SHifT back to 0 when compressor is off and $StopTime is over '; end
                #SHifT = 0;
            end
        end
        if (%hour > 22 || %hour < 7) && @Outside_Temp < 3 && #SHifT > -3 && (@Main_Outlet_Temp - @Z1_Water_Target_Temp) < 0.5 && #CompState > 0 then
            if #Debug > 10 then $com = 'Between 23h and 7h SHifT -1 to switch off compressor a bit earlier'; end
            #SHifT = -1 + #SHifT;
        end

        if #Debug > 10 then $com = 'shift Z1HRT if required but not outside the range -5 to +5'; end
        #SHifT = min(max(#SHifT, -5), 5);
        if #SHifT != @Z1_Heat_Request_Temp && #RemoteOverRide < 1 then @SetZ1HeatRequestTemperature = #SHifT; end
    end
end

on TaShift2 then
    $WarTemp = @Z1_Water_Target_Temp - @Z1_Heat_Request_Temp;
    if #CompRunSec < 180 && #CompState == 1 then
        #SoftStartControl = ceil(@Main_Outlet_Temp - 3 + ceil(#CompRunSec / 60)) - $WarTemp;
        $a = 1; $b = ', CRS < 180';
    elseif #CompRunTime < (300 -  5 * @Outside_Temp) then
        if @Main_Outlet_Temp > #MOT then 
            #SoftStartControl = ceil(@Main_Outlet_Temp - 1.8) - $WarTemp;
        else
            #SoftStartControl = ceil(@Main_Outlet_Temp - 1.6) - $WarTemp;
        end
        $a = 2; $b = concat(', CRT < ', (300 - 5 * @Outside_Temp));
    elseif #SoftStartControl > 0 then
        $a = 3; $b = ', Back to 0';
        if #CompRunTime / 60 == round(#CompRunTime / 60) then
            #SoftStartControl = #SoftStartControl - 1;
        end
    else
        $a = 4; $b = ', TaShift Finished';
    end
    #MOT = @Main_Outlet_Temp;
    #RoomTempControl = round(#RoomTempDelta * -3);
    #SHifT = #SoftStartControl + #RoomTempControl;

    if $a > 1 && (@Main_Outlet_Temp - $WarTemp - #SHifT) > 1.8 then
        #SHifT = ceil(@Main_Outlet_Temp - 1.8) - $WarTemp;
        $a = $a + 10; $b = concat($b,' ( limit #SHifT)');
    end
    if #Debug > 0 || #RemoteOverRide > 0 then   print('TaM phase ', $a, $b, ' CRS: ', #CompRunSec, ' CRT: ', #CompRunTime, ' RTD: ', #RoomTempDelta, ' SSC: ', #SoftStartControl, ' RTC: ', #RoomTempControl, ' SHifT: ', #SHifT, ' MOT: ', @Main_Outlet_Temp, ' Z1T: ',  @Z1_Water_Target_Temp);   end
end
Nice. Er gaat wat mis als ik de rules hier van GoT kopieer, dan accepteert de Heishamon het niet meer.. :?

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

Is het dan rule 11 of 12 waar hij op misgaat? Dat is toch gek want daar verander ik niks aan.

Als ik de rules van Github kopieer gaat het wel goed. In beide gevallen zet ik ze eerst naar VSCode. Ik heb wat compares gedaan maar ik zie geen verschillen.

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Beekforel schreef op woensdag 27 november 2024 @ 20:48:
[...]

Nice. Er gaat wat mis als ik de rules hier van GoT kopieer, dan accepteert de Heishamon het niet meer.. :?

[Afbeelding]

Is het dan rule 11 of 12 waar hij op misgaat? Dat is toch gek want daar verander ik niks aan.

Als ik de rules van Github kopieer gaat het wel goed. In beide gevallen zet ik ze eerst naar VSCode. Ik heb wat compares gedaan maar ik zie geen verschillen.
Dit blijven rare dingen in de rules engine, er komen - volgens mij vooral met grotere rules sets - random errors.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

blb4 schreef op woensdag 27 november 2024 @ 21:09:
[...]

Dit blijven rare dingen in de rules engine, er komen - volgens mij vooral met grotere rules sets - random errors.
Blijft vaag. Ik zal je Github in de gaten houden, heb een deel getracht over te typen maar dan krijg ik het ook niet lekker stabiel.

Thanks! :D

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Ik heb 'm geupload op github.

2 files:
1) HeishaMon_Rules_BlB4.md
Dit is de rules set die nu draait op mijn HeishaMon;

2) Heishamon_rules20241127_rm.txt
Dit is oorspronkelijke file inclusief commentaar / uitleg. Deze file is via de minify tool van Klaas Hoekstra om te zetten in de file die te laden is op HeishaMon.

Ik hoop dat 't commentaar wat toevoegt in 't begrijpen van de rules set....

[ Voor 5% gewijzigd door blb4 op 27-11-2024 22:44 ]

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

blb4 schreef op woensdag 27 november 2024 @ 21:51:
Ik heb 'm geupload op github.

2 files:
1) HeishaMon_Rules_BlB4.md
Dit is de rules set die nu draait op mijn HeishaMon;

2) Heishamon_rules20241127_rm.txt
Dit is oorspronkelijke file inclusief commentaar / uitleg. Deze file is via de minify tool van Klaas Hoekstra om te zetten in de file die te laden is op HeishaMon.

Ik hoop dat 't commentaar wat toevoegt in 't begrijpen van de rules set....
Ik zal het eens doornemen.

Het shiften gaat hier echt niet lekker, dus ik had allowTaShift even op 0 gezet maar zie dat dat niet op die manier geimplementeerd is. :)

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
@blb4

code:
1
2
3
4
5
6
on SyncOT then
.
.
#RoomTempDelta = max(min(20 - #RoomTempSet, 5), -5);
.
.


Hier gebruik je de constante 20 en niet de variabele ?roomTemp, dus #RoomTempDelta is altijd hetzelfde.

Wat is de reden?

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op donderdag 28 november 2024 @ 12:00:
@blb4

code:
1
2
3
4
5
6
on SyncOT then
.
.
#RoomTempDelta = max(min(20 - #RoomTempSet, 5), -5);
.
.


Hier gebruik je de constante 20 en niet de variabele ?roomTemp, dus #RoomTempDelta is altijd hetzelfde.

Wat is de reden?
Dit komt doordat mijn opentherm thermostaat altijd dezelfde waarde geeft aan de variable ?roomTemp (20 graden) maar soms ook naar 0 springt. Als je wel een stabiele en correcte ?roomTemp hebt kan je die 20 zo vervangen door ?roomTemp.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
blb4 schreef op donderdag 28 november 2024 @ 12:12:
[...]

Dit komt doordat mijn opentherm thermostaat altijd dezelfde waarde geeft aan de variable ?roomTemp (20 graden) maar soms ook naar 0 springt. Als je wel een stabiele en correcte ?roomTemp hebt kan je die 20 zo vervangen door ?roomTemp.
ok bedankt, ik gebruik de EMOS P5616OT met WIFI. Werkt perfect.

Acties:
  • +1 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

Haha na wat debuggen was ik naar dit topic genavigeerd om precies dezelfde vraag als @Binifada te stellen. :D

Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

@blb4 de shift reset naar 0 als de compressor uit gaat volgens mij, maar bij defrost dus ook. Dit geeft een erg onrustig beeld:

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

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Beekforel schreef op donderdag 28 november 2024 @ 13:06:
Haha na wat debuggen was ik naar dit topic genavigeerd om precies dezelfde vraag als @Binifada te stellen. :D
@Binifada Ik heb dit opgelost in laatste update, net als een foutje in sterilisation routine. TaShift blijft een hoofdbreker, ben er hier toch weer mee aan ‘t rommelen.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

Poeh, ik dacht ineens wat is het warm in huis. Had de thermostaat op 21 en hij heeft ff lekker op +5 gedraaid vanmiddag. :D

Maar thermostaat naar 20,5 resulteerde in een shift van +4?

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
ik heb net een emos thermostaat binnen, ga ik morgenmiddag eens aansluiten en kijken of 't opentherm gedeelte wat stabieler draait.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Beekforel schreef op zaterdag 30 november 2024 @ 18:39:
Poeh, ik dacht ineens wat is het warm in huis. Had de thermostaat op 21 en hij heeft ff lekker op +5 gedraaid vanmiddag. :D

Maar thermostaat naar 20,5 resulteerde in een shift van +4?
in elk geval geen koud huis :). als Je 1:1 mijn rules toepast dan zou via OpenThermThermostat bij > 0,7 graden roomtempdelta de warmtepomp moeten uitschakelen.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

blb4 schreef op zaterdag 30 november 2024 @ 19:12:
[...]

in elk geval geen koud huis :). als Je 1:1 mijn rules toepast dan zou via OpenThermThermostat bij > 0,7 graden roomtempdelta de warmtepomp moeten uitschakelen.
22,5 gemeten op de thermostaat, 20,5 ingesteld. Shift op +2.

Ik ga weer ff over op handmatig voor ik smelt. :+

Hm hij is nu toch wel uitgeschakeld door de rules.

Ik heb wat proberen te debuggen @blb4 maar kom er niet goed uit. Het shfiten gaat mij nu in elk geval te onrustig. Wat het volgens mij ook lastig maakt is dat je je SoftStart en shift door elkaar laat lopen?

Softstart is wat mij betreft niet zo belangrijk, een stabiele shift op basis van de ?roomTemp en ?roomTempSet des te meer. Ik wilde even snel een schaduwfunctie maken maar loop weer tegen de vaagheid van het accepteren van rules aan helaas,misschien vanavond weer wat tijd.

[ Voor 42% gewijzigd door Beekforel op 01-12-2024 09:18 ]


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
blb4 schreef op zaterdag 30 november 2024 @ 19:10:
ik heb net een emos thermostaat binnen, ga ik morgenmiddag eens aansluiten en kijken of 't opentherm gedeelte wat stabieler draait.
Die Emos gaat weer terug, net iets te beperkt voor mij. Ik ben gewend met app of via Home Assistent thermostaat wat te kunnen bijstellen, de Emos ondersteund geen remote override. Verder deed hij 't wel goed geloof ik....

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Dre
  • Registratie: Juni 2001
  • Niet online

Dre

De Panasonic 5J wil ik aanpassen zodat deze meer geschikt is voor een woning met weinig verlies en weinig massa in het verwarmingssysteem (radiatoren).

De wens is:
  1. Reductie vermogen en voorkomen overshoot: Oplossing altijd QM3 draaien
  2. Bij dreigen dichtvriezen terugschakelen naar QM0 voor 5 minuten. (Op basis "Outdoor Temperature" en "OD Pipe Temperature" Zie Deice Operation van paragraaf 15.2.2
  3. Anti-pendeltimer. Nu gaat de warmtepomp al weer aan als Tr 3°C afgekoeld is. Dat zou wel 6°C of een bepaalde tijd mogen worden.
Om het programmeren simpel op te starten heb ik deze bestaande code bewerkt en in Heishamon geplakt:

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
on System#Boot then
 #allowSilentMode = 0;
 #newPumpDuty = 0;
 #prevSilentMode = 0;
end

on timer=2 then
 #allowSilentMode = 1;
 #silentMode = 1;
end

on checkSilentMode then
 if isset(@Outside_Temp) == 1 && isset(@Heatpump_State) then
  if #allowSilentMode == 1 then
   if @Outside_Temp < 2 then
    if %hour > 22 || %hour < 7 then
     #silentMode = 1;
    else
     #silentMode = 1;
    end
   else
    if @Outside_Temp < 5 then
     #silentMode = 1;
    else
     if @Outside_Temp < 10 then
      #silentMode = 1;
     else
      #silentMode = 1;
     end
    end
   end
   if #prevSilentMode != #silentMode && @Heatpump_State == 1 then
    setTimer(2, 60);
    #allowSilentMode = 0;
    #prevSilentMode = #silentMode;
    @SetQuietMode = #silentMode;
   end
  end
 end
end


Bij drukken op de Save knop van de /rules webpagina krijg ik geen foutmelding. Echter blijft in Home de warmtepomp op TOP18 Quiet_Mode_Level 3 Level 3

Ik zou verwachten dat de Heisamon de warmtepomp naar QM=1 zou schakelen. Ook een webbased reboot van Heishamon wilt niet helpen. Het is mij een raadsel waarom dit niet werkt, iemand een tip waar dit aan kan liggen?

Acties:
  • +2 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Dre schreef op dinsdag 3 december 2024 @ 22:59:
De Panasonic 5J wil ik aanpassen zodat deze meer geschikt is voor een woning met weinig verlies en weinig massa in het verwarmingssysteem (radiatoren).

De wens is:
  1. Reductie vermogen en voorkomen overshoot: Oplossing altijd QM3 draaien
  2. Bij dreigen dichtvriezen terugschakelen naar QM0 voor 5 minuten. (Op basis "Outdoor Temperature" en "OD Pipe Temperature" Zie Deice Operation van paragraaf 15.2.2
  3. Anti-pendeltimer. Nu gaat de warmtepomp al weer aan als Tr 3°C afgekoeld is. Dat zou wel 6°C of een bepaalde tijd mogen worden.
Om het programmeren simpel op te starten heb ik deze bestaande code bewerkt en in Heishamon geplakt:

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
on System#Boot then
 #allowSilentMode = 0;
 #newPumpDuty = 0;
 #prevSilentMode = 0;
end

on timer=2 then
 #allowSilentMode = 1;
 #silentMode = 1;
end

on checkSilentMode then
 if isset(@Outside_Temp) == 1 && isset(@Heatpump_State) then
  if #allowSilentMode == 1 then
   if @Outside_Temp < 2 then
    if %hour > 22 || %hour < 7 then
     #silentMode = 1;
    else
     #silentMode = 1;
    end
   else
    if @Outside_Temp < 5 then
     #silentMode = 1;
    else
     if @Outside_Temp < 10 then
      #silentMode = 1;
     else
      #silentMode = 1;
     end
    end
   end
   if #prevSilentMode != #silentMode && @Heatpump_State == 1 then
    setTimer(2, 60);
    #allowSilentMode = 0;
    #prevSilentMode = #silentMode;
    @SetQuietMode = #silentMode;
   end
  end
 end
end


Bij drukken op de Save knop van de /rules webpagina krijg ik geen foutmelding. Echter blijft in Home de warmtepomp op TOP18 Quiet_Mode_Level 3 Level 3

Ik zou verwachten dat de Heisamon de warmtepomp naar QM=1 zou schakelen. Ook een webbased reboot van Heishamon wilt niet helpen. Het is mij een raadsel waarom dit niet werkt, iemand een tip waar dit aan kan liggen?
Er wordt bij hou alleen System#Boot uitgevoerd (tijdens boot); er is geen verwijzing naar de andere rules dus die worden niet uitgevoerd.

Ik heb verder niet gekeken of de rules nuttig zijn maar om ze in elk geval uit te voeren zou je er dit van kunnen maken:

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
on System#Boot then
 #allowSilentMode = 0;
 #newPumpDuty = 0;
 #prevSilentMode = 0;
 setTimer(2,10);
end

on timer=2 then
 #allowSilentMode = 1;
 #silentMode = 1;
 checkSilentMode();
 setTimer(2,60)
end

on checkSilentMode then
 if isset(@Outside_Temp) == 1 && isset(@Heatpump_State) then
  if #allowSilentMode == 1 then
   if @Outside_Temp < 2 then
    if %hour > 22 || %hour < 7 then
     #silentMode = 1;
    else
     #silentMode = 1;
    end
   else
    if @Outside_Temp < 5 then
     #silentMode = 1;
    else
     if @Outside_Temp < 10 then
      #silentMode = 1;
     else
      #silentMode = 1;
     end
    end
   end
   if #prevSilentMode != #silentMode && @Heatpump_State == 1 then
    #allowSilentMode = 0;
    #prevSilentMode = #silentMode;
    @SetQuietMode = #silentMode;
   end
  end
 end
end



De boot loop triggert nu timer2 en timer2 triggert checkSilentMode() en zichzelf elke 60 seconden.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Dre
  • Registratie: Juni 2001
  • Niet online

Dre

Iets verder, maar Heishamon loopt vast op vele IF-statements of anders loop ik tegen een limiet met de OR-functie (max 10 ?).

Deze code wil die wel programmeren, maar bij uitvoering lijkt ie vast te lopen op het moment dat timer=2 programma gaat lopen. De console loopt niet verder na timer=2 (60 seconden).
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
on System#Boot then
 print('System#Boot start');
 #prevSilentMode = 0;
 #silentMode = 0;
 setTimer(2,60);
 print('System#Boot end');
end

on timer=2 then
 print('checkDefrost prewarning start');
 $OutsideTempLocal = @Outside_Temp;
 $OutsidePipeTempLocal = @Outside_Pipe_Temp;
 if $OutsideTempLocal >= 6 && $OutsidePipeTempLocal <= -2 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 5 && $OutsidePipeTempLocal <= -2 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 4 && $OutsidePipeTempLocal <= -2 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 3 && $OutsidePipeTempLocal <= -3 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 2 && $OutsidePipeTempLocal <= -4 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 1 && $OutsidePipeTempLocal <= -5 then
  #silentMode = 0;
 elseif $OutsideTempLocal == 0 && $OutsidePipeTempLocal <= -5 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -1 && $OutsidePipeTempLocal <= -6 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -2 && $OutsidePipeTempLocal <= -7 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -3 && $OutsidePipeTempLocal <= -8 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -4 && $OutsidePipeTempLocal <= -9 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -5 && $OutsidePipeTempLocal <= -9 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -6 && $OutsidePipeTempLocal <= -10 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -7 && $OutsidePipeTempLocal <= -11 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -8 && $OutsidePipeTempLocal <= -12 then
  #silentMode = 0;
 elseif $OutsideTempLocal == -9 && $OutsidePipeTempLocal <= -13 then
  #silentMode = 0;
 elseif $OutsideTempLocal <= -10 && $OutsidePipeTempLocal <= -14 then
  #silentMode = 0;
 else
  #silentMode = 3;
 end
 if #prevSilentMode != #silentMode then
  #prevSilentMode = #silentMode;
  @SetQuietMode = #silentMode;
 end
 print ('silentMode is currently ...');
 print (#silentMode);
 setTimer(2,600);
end



Iets compacter geschreven heb ik één IF-statement gebruikt met daarbij veel OR-functies. Maar als ik meer dan 10 events in die OR-functie wil plaatsen weigert de Rules de code over te nemen.

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
on System#Boot then
 print('System#Boot start');
 #prevSilentMode = -1;
 #silentMode = 0;
 setTimer(2,60);
 print('System#Boot end');
end

on timer=2 then
 print('checkDefrost prewarning start');
 $OutsideTempLocal = @Outside_Temp;
 $OutsidePipeTempLocal = @Outside_Pipe_Temp;
 if $OutsideTempLocal >= 6 && $OutsidePipeTempLocal <= -2 || $OutsideTempLocal == 5 && $OutsidePipeTempLocal <= -2 || $OutsideTempLocal == 4 && $OutsidePipeTempLocal <= -2 || $OutsideTempLocal == 3 && $OutsidePipeTempLocal <= -3 || $OutsideTempLocal == 2 && $OutsidePipeTempLocal <= -4 || $OutsideTempLocal == 1 && $OutsidePipeTempLocal <= -5 || $OutsideTempLocal == 0 && $OutsidePipeTempLocal <= -5 || $OutsideTempLocal == -1 && $OutsidePipeTempLocal <= -6 || $OutsideTempLocal == -2 && $OutsidePipeTempLocal <= -7 || $OutsideTempLocal == -3 && $OutsidePipeTempLocal <= -8 || $OutsideTempLocal == -4 && $OutsidePipeTempLocal <= -9 || $OutsideTempLocal == -5 && $OutsidePipeTempLocal <= -9 || $OutsideTempLocal == -6 && $OutsidePipeTempLocal <= -10 || $OutsideTempLocal == -7 && $OutsidePipeTempLocal <= -11 || $OutsideTempLocal == -8 && $OutsidePipeTempLocal <= -12 || $OutsideTempLocal == -9 && $OutsidePipeTempLocal <= -13 || $OutsideTempLocal <= -10 && $OutsidePipeTempLocal <= -14 then
  #silentMode = 0;
 else
  #silentMode = 3;
 end
 if #prevSilentMode != #silentMode then
  #prevSilentMode = #silentMode;
  @SetQuietMode = #silentMode;
 end
 print ('silentMode is currently ...');
 print (#silentMode);
 setTimer(2,600);
end


Vraag ik nu teveel van de Heishamon en/of kan het programmeren beter O-)

Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

@Dre wat wil je precies bereiken? Dit zou simpeler moeten kunnen lijkt mij.

Acties:
  • 0 Henk 'm!

  • Dre
  • Registratie: Juni 2001
  • Niet online

Dre

Beekforel schreef op zondag 8 december 2024 @ 16:32:
@Dre wat wil je precies bereiken? Dit zou simpeler moeten kunnen lijkt mij.
Het doel is vroegtijdig te signaleren wanneer de warmtepomp gaat dichtvriezen. Op het moment dat een defrost eraan dreigt te komen moet Quiet Mode 0 (QM0) aangezet worden zodat ventilator harder gaat draaien. Doel is dus wanneer @Outside_Pipe_Temp te koud wordt bij een bepaalde @Outside_Temp de QM van 3 naar 0 te schakelen.

Panasonic beschrijft een grafiek wanneer een defrost gaat plaatsvinden, en het idee is om +4°C hoger te gaan zitten om het vroegtijdig een defrost te zien aankomen.
Afbeeldingslocatie: https://tweakers.net/i/gUQda_Lal-wENcP7c8lYY-FNbGw=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/TtANeneZA8B56DYAv4QFFybH.png?f=user_large

Acties:
  • +2 Henk 'm!

  • dlrozendaal
  • Registratie: Juni 2008
  • Laatst online: 14-07 19:21
Dre schreef op zondag 8 december 2024 @ 20:35:
[...]


Het doel is vroegtijdig te signaleren wanneer de warmtepomp gaat dichtvriezen. Op het moment dat een defrost eraan dreigt te komen moet Quiet Mode 0 (QM0) aangezet worden zodat ventilator harder gaat draaien. Doel is dus wanneer @Outside_Pipe_Temp te koud wordt bij een bepaalde @Outside_Temp de QM van 3 naar 0 te schakelen.
Ik gebruik de volgende formule om de defrost grens te berekenen:

code:
1
2
3
4
5
6
7
8
on @Outside_Temp then
 updateDefrostLimit();
end

on updateDefrostLimit then
 #defrostLimitC = 0.8 * @Outside_Temp - 10;
 #defrostLimitC = max(-26, min(-6, ceil(#defrostLimitC)));
end


Is misschien niet exact… maar werkt oké.

Acties:
  • +2 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

Ik kon het toch niet helemaal vinden in de rules van @blb4 maar het inspireerde mij wel om zelf weer eens aan de slag te gaan.

Ik wil graag kunnen shiften op basis van mijn thermostaat (zodat ik hem lager kan zetten maar ook dat de WP uitgaat wanneer de houtkachel de boel warm stookt) en dat doe ik nu als volgt:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
on shiftOnOpenTherm then
    if #allowshiftOnOpenTherm == 1 then
        $RoomTempDelta = ?roomTemp - ?roomTempSet;
        $Shift = 0;
        if $RoomTempDelta < 0 then
            $Shift = round(max(-5, min((-5 * $RoomTempDelta) / #openThermCorrectionFactor, 1)));
        elseif $RoomTempDelta > 0 then
            $Shift = round(max(-5, min((-5 * $RoomTempDelta) / #openThermCorrectionFactor, -1)));
        else
            $Shift = 0;
        end
        if $Shift != @Z1_Heat_Request_Temp && #RemoteOverRide < 1 && (#Time - #ShiftLastChange) > 60 then
            @SetZ1HeatRequestTemperature = $Shift;
            #ShiftLastChange = %day * 1440 + %hour * 60 + %minute;
        end
        if #Debug == 1 then
            print('+++++++++++++++++++++++++ shiftOnOpenTherm: RoomTempDelta: ', $RoomTempDelta, ' WantedShift: ', $Shift, ' ActualShift: ', @Z1_Heat_Request_Temp);
            print('+++++++++++++++++++++++++ shiftOnOpenTherm: ShiftLastChange: ', #ShiftLastChange, ' NextShift: ', #Time - #ShiftLastChange);
            print('+++++++++++++++++++++++++ shiftOnOpenTherm: chSetpoint: ', ?chSetpoint, ' Main_Outlet_Temp: ', @Main_Outlet_Temp);
        end
    end
end


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
on System#Boot then
    #allowshiftOnOpenTherm = 1;
    setTimer(1,10);
    #Time = -1;
    #openThermCorrectionFactor = 2;
    #ShiftLastChange = 0;
    #RemoteOverRide = -1;
    #Debug = 1;
end

on timer=1 then
    #Time = %day * 1440 + %hour * 60 + %minute;
    shiftOnOpenTherm();
    #RemoteOverRide = @Z2_Heat_Request_Temp;
    setTimer(1,15);
end


Je kunt de openThermCorrectionFactor lager maken waarmee hij agressiever wordt of juist hoger zodat hij (nog) rustiger gaat doen.

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Ik heb eindelijk ook mijn TaShift en OpenThermThermostat functies stabiel, pffff.....

Zo in te laden (voor wie durft :)): Heishamon_Rules_BLB4

Met commentaar / uitleg, om te zetten via heishamon_rules_minify: HeishaMon_Rules_BlB4_commented.txt

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • +1 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
“BLB Heishamon_rules20241211”

Omdat ik DHW en PumpDuty niet nodig heb, heb ik de bijbehorende regels verwijderd. Ik moest mijn verwarmingscurve een beetje aanpassen. Werkt best goed, toch?

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

“...
elseif #chEnableOffTime > 5 && %hour > 22 then
$OTT = 4;
...”

de reden voor deze elseif is onduidelijk. Het kan niet de 20 watt voor de pomp zijn of het geluid?

Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op zaterdag 21 december 2024 @ 10:57:
“BLB Heishamon_rules20241211”

“...
elseif #chEnableOffTime > 5 && %hour > 22 then
$OTT = 4;
...”

de reden voor deze elseif is onduidelijk. Het kan niet de 20 watt voor de pomp zijn of het geluid?
Als er langere tijd geen vermogen nodig is schakel ik de warmtepomp uit (@SetHeatpump = 0), inderdaad vanwege 't stroomverbruik van de pomp. Dat is m.i. onnodig op die momenten. En omdat ik (lichte) nachtverlaging toepas rond 23:00u kan de compressor & circulatiepomp dan wel uit.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Tiesert
  • Registratie: Augustus 2021
  • Laatst online: 24-06 10:46
blb4 schreef op zondag 22 december 2024 @ 14:40:
[...]


Als er langere tijd geen vermogen nodig is schakel ik de warmtepomp uit (@SetHeatpump = 0), inderdaad vanwege 't stroomverbruik van de pomp. Dat is m.i. onnodig op die momenten. En omdat ik (lichte) nachtverlaging toepas rond 23:00u kan de compressor & circulatiepomp dan wel uit.
ha, ja zo doe ik het ook. Weet jij toevallig ook of de Pana na zo'n periode van uitstand de Tr temp onthoudt waarop hij zelf weer aan wil gaan (de Tr van het moment van afslaan -3C volgens mij)? Ik merk dat ik soms de Ta verder moet opvoeren om de Pana weer aan te krijgen, en pas daarna weer op Ta -1C kan sturen.

PV: 7.910 WP O-Z-W | Enphase Envoy S Metered | IQ7+ | Panasonic 12KW T-Cap J-Gen | 300L SWW | 200L Buffer | Fibaro HC2 | Gasloos sinds 4-10-22


Acties:
  • +1 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Tiesert schreef op zaterdag 4 januari 2025 @ 16:15:
[...]

ha, ja zo doe ik het ook. Weet jij toevallig ook of de Pana na zo'n periode van uitstand de Tr temp onthoudt waarop hij zelf weer aan wil gaan (de Tr van het moment van afslaan -3C volgens mij)? Ik merk dat ik soms de Ta verder moet opvoeren om de Pana weer aan te krijgen, en pas daarna weer op Ta -1C kan sturen.
Ik heb daar nog nooit op gelet. Ik zal 't eens in de gaten houden na deze bijna vorst periode; ik heb juist gisteren de logica aangepast om bij Outside_Temp < 4 graden niet meer uit te schakelen.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • rvdgaag
  • Registratie: December 2015
  • Laatst online: 08:22
Is er in de Heishamon waarden live te zien of er op dit moment warm water (DHW) gehaald wordt uit de tank ?

Deye 12kW Hybrid, 8,77 kW peak solar, 61,4 kWH Seplos batteries, Panasonic K-series 5kW all-electric heatpump


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
rvdgaag schreef op zondag 5 januari 2025 @ 11:03:
Is er in de Heishamon waarden live te zien of er op dit moment warm water (DHW) gehaald wordt uit de tank ?
Nee.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Speedy-Andre
  • Registratie: Maart 2002
  • Laatst online: 00:59

Speedy-Andre

Sony ZL, XA, Nokia XR20

Je zou de DHW temperatuur kunnen volgen, echter is dat een vertraagde weergave.

PVoutput 2x Toshiba Daiseikai 8 3,5kW, SWW Atlantic Explorer V3 200l. Gasloos aug 2016, 8620Wp, Monoblock Panasonic J 7kW


Acties:
  • 0 Henk 'm!

  • Tiesert
  • Registratie: Augustus 2021
  • Laatst online: 24-06 10:46
blb4 schreef op zaterdag 4 januari 2025 @ 16:19:
[...]

Ik heb daar nog nooit op gelet. Ik zal 't eens in de gaten houden na deze bijna vorst periode; ik heb juist gisteren de logica aangepast om bij Outside_Temp < 4 graden niet meer uit te schakelen.
Ik doe dat ook onder de 0C, ik zie dat hij wel zelf even de pomp aangooit als hij uitstaat, om bevriezing te voorkomen. Maar ik durf niet verder te zakken, dan laat ik hem toch liever aan.

PV: 7.910 WP O-Z-W | Enphase Envoy S Metered | IQ7+ | Panasonic 12KW T-Cap J-Gen | 300L SWW | 200L Buffer | Fibaro HC2 | Gasloos sinds 4-10-22


Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Tiesert schreef op zondag 5 januari 2025 @ 17:34:
[...]

Ik doe dat ook onder de 0C, ik zie dat hij wel zelf even de pomp aangooit als hij uitstaat, om bevriezing te voorkomen. Maar ik durf niet verder te zakken, dan laat ik hem toch liever aan.
Mijn ervaring (geen vloerverwarming) is nu dat bij temperatuur < 4 graden de warmtepomp maar een korte periode (hooguit 3 uur of zo) uit kan om dat toch te zorgen dat de hut niet te ver afkoelt en dan daarna flink aan de bak moet.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Beekforel
  • Registratie: November 2001
  • Laatst online: 07:23

Beekforel

Is eigenlijk geen vis

Ik laat hem uitgaan, als de houtkachel stookt hoeft hij niet te draaien. Volgens mij zou het antivries programma moeten zorgen dat de pomp niet bevriest.

Kan niet zeggen hoe dit is als het echt winter is, want dat heb ik nog nooit meegemaakt met een warmtepomp. 8)7

Acties:
  • 0 Henk 'm!

  • boroma
  • Registratie: Mei 2024
  • Laatst online: 23-01 22:04
ik zet de 'pomp' heel gewoon af.

if @Room_Thermostat_Temp >= #setPointRoomTemperature then
if #hourSetPointReached == -1 then
#hourSetPointReached = %hour;
end
#silentMode = 3;
reduceQuietMode();
if %hour >= #operationEarlyStopHour then
if @Outside_Temp > #tempVC then
stopHeatPump();
end
end
end

een vloerverwarming is in het huis.
de temperatuur zinkt bei NULL graaden zon 2 graad in de woonkamer.
als het gaat vriezen gaat the wp ook weer aan.
ik kan nier zeggen wanner er dan iets mis gaat.

ik vertrouw die panasonic firmware niet helemaal.

Acties:
  • 0 Henk 'm!

  • boroma
  • Registratie: Mei 2024
  • Laatst online: 23-01 22:04
ik heb een problem met: SetCurves

https://github.com/Egyras/HeishaMon/issues/291
ziet er ook uit dat dit probleem toendertijd opgelost werd.

van de link:
@SetCurves = concat('{"zone1":{"heat":{"target":"high":', @Z1_Heat_Curve_Target_High_Temp, ',"low":', @Z1_Heat_Curve_Target_Low_Temp, '}}}}');

da kan niet.
maar ook als het json dokument gekorrigeert word gaat het mis.

ik laat het groote pcb met versie 3.8 draajen met een aquarea L 5kw (R290).
ons huis is lekker warm.

Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32

Acties:
  • 0 Henk 'm!

  • Maeslant
  • Registratie: Februari 2001
  • Laatst online: 08:07
Ik ben zelf niet een held in programeren, maar ik heb dus een H en een J versie (5KW) naast elkaar in paralel draaien. Dit werkt prima, maar de J gooit bij startup vaak te veel vermogen erin en stopt dan snel weer.

Ik merk als ik handmatig de temp regeling terug schroef dat hij dan wel langere runs gaat draaien. (Ik bedoel dan echt 12u of langer).

Daarom kan ik van iemand het softstart stuk kopieren?

Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
Ik heb een Heishamon met ESP32 en V3.8 die stabiel en zonder problemen draait. Mijn 19 regels worden correct uitgevoerd en de samenwerking met HA werkt betrouwbaar.

Ik twijfel nog over de update. Wat zijn jullie ervaringen met V3.9?

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op woensdag 22 januari 2025 @ 10:57:
Ik heb een Heishamon met ESP32 en V3.8 die stabiel en zonder problemen draait. Mijn 19 regels worden correct uitgevoerd en de samenwerking met HA werkt betrouwbaar.

Ik twijfel nog over de update. Wat zijn jullie ervaringen met V3.9?
Ik heb 3.9 draaien en ervaar geen problemen die ik bij 3.8 ook al niet had.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
blb4 schreef op woensdag 22 januari 2025 @ 11:37:
[...]

Ik heb 3.9 draaien en ervaar geen problemen die ik bij 3.8 ook al niet had.
... lopen de "lange" regels nog steeds niet?

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Binifada schreef op woensdag 22 januari 2025 @ 12:20:
[...]


... lopen de "lange" regels nog steeds niet?
Klopt, loop constant tegen limiet aan, veel tijd bezig met rules comprimeren en zaken die even niet van belang zijn uit te zetten e.d.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • hannibal2206
  • Registratie: Februari 2005
  • Laatst online: 21:47
Maeslant schreef op dinsdag 21 januari 2025 @ 10:53:
Ik ben zelf niet een held in programeren, maar ik heb dus een H en een J versie (5KW) naast elkaar in paralel draaien. Dit werkt prima, maar de J gooit bij startup vaak te veel vermogen erin en stopt dan snel weer.
Hoe heb je die 2 waterzijdig aan gesloten ? via een buffervat ?

15kW solar, 800 Ltr hygiëneboiler, 80 Heatpipes, 2 * L/L, Pana monoblock 5F en 5J, HR++/+++ , gasloos sinds Feb 2015


Acties:
  • 0 Henk 'm!

  • Maeslant
  • Registratie: Februari 2001
  • Laatst online: 08:07
hannibal2206 schreef op woensdag 22 januari 2025 @ 15:39:
[...]

Hoe heb je die 2 waterzijdig aan gesloten ? via een buffervat ?
Ik heb op 3 verdiepingen vloerverwarming. Oppervlakte van 180m2.

Dus geen buffer vat maar met een terugslag klep parallel aan elkaar.

Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
blb4 schreef op woensdag 22 januari 2025 @ 12:28:
[...]

Klopt, loop constant tegen limiet aan, veel tijd bezig met rules comprimeren en zaken die even niet van belang zijn uit te zetten e.d.
Wat denk je dat de reden is? Te weinig RAM, of de rules-engine.
... en wat zeggen @thehog en @CurlyMo erover?

Acties:
  • +2 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Ik heb diverse issues aangemaakt op Github maar er wordt weinig tot niet op gereageerd. 't lijkt lastig dus ik heb er verder niet zo heel veel tamtam van gemaakt. Maar 't zou wel fijn zijn als dit opgelost gaat worden :) .

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • hannibal2206
  • Registratie: Februari 2005
  • Laatst online: 21:47
Maeslant schreef op woensdag 22 januari 2025 @ 17:09:
[...]


Ik heb op 3 verdiepingen vloerverwarming. Oppervlakte van 180m2.

Dus geen buffer vat maar met een terugslag klep parallel aan elkaar.
Heb ik ook, een 5F en een 5J parallel met terugslagkleppen naar ca 100 m2 vloerverwarming beneden (6 groepen 15 HOH) en vloerwarming op badkamer boven.

Gaat goed, totdat de 5F een defrost gaat doen, die komt dan na enige tijd met H62 flow error

Dat heb jij niet ?

15kW solar, 800 Ltr hygiëneboiler, 80 Heatpipes, 2 * L/L, Pana monoblock 5F en 5J, HR++/+++ , gasloos sinds Feb 2015


Acties:
  • 0 Henk 'm!

  • Maeslant
  • Registratie: Februari 2001
  • Laatst online: 08:07
hannibal2206 schreef op donderdag 23 januari 2025 @ 18:33:
[...]

Heb ik ook, een 5F en een 5J parallel met terugslagkleppen naar ca 100 m2 vloerverwarming beneden (6 groepen 15 HOH) en vloerwarming op badkamer boven.

Gaat goed, totdat de 5F een defrost gaat doen, die komt dan na enige tijd met H62 flow error

Dat heb jij niet ?
Nee, maar heb jij hem parallel of in serie?

Ik had dat bij serie, nu niet meer bij parallel.


Maar ik heb de regeling van de J is echt een stuk minder dan de h.

[ Voor 6% gewijzigd door Maeslant op 23-01-2025 19:46 ]


Acties:
  • 0 Henk 'm!

  • hannibal2206
  • Registratie: Februari 2005
  • Laatst online: 21:47
Maeslant schreef op donderdag 23 januari 2025 @ 19:44:
[...]


Nee, maar heb jij hem parallel of in serie?

Ik had dat bij serie, nu niet meer bij parallel.


Maar ik heb de regeling van de J is echt een stuk minder dan de h.
Wel parallel, elk met een eigen 22 mm leiding, maar ook een gedeeld 22 mm leiding stuk
Dat ga ik denk ik maar vergroten naar 28 mm.

Maar ik zie die H62 error dus alleen bij / na een defrost; zonder dat loopt het goed.

En nu weer on-topic naar Heishamon !

15kW solar, 800 Ltr hygiëneboiler, 80 Heatpipes, 2 * L/L, Pana monoblock 5F en 5J, HR++/+++ , gasloos sinds Feb 2015


Acties:
  • 0 Henk 'm!

  • tomton
  • Registratie: Januari 2024
  • Laatst online: 12-07 21:40
Beste Tweakers,
Ik ben een piepjonge gebruiker (1,5 week) en heb e.e.a. in combinatie met 7L en additionele print, alsmede Home Assistant, Heishamon V3.9 werkende, maar wil nog iets meer.

Hoe kan 2 GPIO's configureren, en 1 als input en de andere als output gebruiken?
(plaatje hergebruikt, maar het gaat om deze header)

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

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
tomton schreef op vrijdag 24 januari 2025 @ 15:45:
Beste Tweakers,
Ik ben een piepjonge gebruiker (1,5 week) en heb e.e.a. in combinatie met 7L en additionele print, alsmede Home Assistant, Heishamon V3.9 werkende, maar wil nog iets meer.

Hoe kan 2 GPIO's configureren, en 1 als input en de andere als output gebruiken?
(plaatje hergebruikt, maar het gaat om deze header)

[Afbeelding]
Welkom! In de laatste fw zit een optie op de GPIO's uit te lezen en te configureren. Kijk ff op Github voor uitleg.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • tomton
  • Registratie: Januari 2024
  • Laatst online: 12-07 21:40
Ja, ik lees o.a. het volgende hier: https://github.com/IgorYbema/HeishaMon/blob/main/README.md

on System#Boot then
setTimer(10, 2);
end

on timer=10 then
setTimer(20, 2);
gpio(21,0);
gpio(47,1);
end

on timer=20 then
setTimer(10, 2);
gpio(21,1);
gpio(47,0);
end

Maar.. kan ik IO1, 3, 16 en 2 gewoon vrij gebruiken? Hoe komt dit via MQTT in Home Assistant tevoorschijn?

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
tomton schreef op vrijdag 24 januari 2025 @ 16:00:
Ja, ik lees o.a. het volgende hier: https://github.com/IgorYbema/HeishaMon/blob/main/README.md

on System#Boot then
setTimer(10, 2);
end

on timer=10 then
setTimer(20, 2);
gpio(21,0);
gpio(47,1);
end

on timer=20 then
setTimer(10, 2);
gpio(21,1);
gpio(47,0);
end

Maar.. kan ik IO1, 3, 16 en 2 gewoon vrij gebruiken? Hoe komt dit via MQTT in Home Assistant tevoorschijn?
Zo kan je er dus met rules bij, hoe ‘t exact via MQTT werkt weet ik niet.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • thehog
  • Registratie: Oktober 2000
  • Laatst online: 08:54
tomton schreef op vrijdag 24 januari 2025 @ 15:45:

Hoe kan 2 GPIO's configureren, en 1 als input en de andere als output gebruiken?
(plaatje hergebruikt, maar het gaat om deze header)
Dat kan helaas nog niet (althans alleen via rules nog als output).
Ik zal er aan denken om dit in een volgende release mee te nemen. Nou zijn de GPIO"s van de small heishamon wel beperkt alsin dat ze bij het opstarten vanzelf schakelen nog voordat je controle hebt over ze. Of je daar last van hebt of niet moet je dus dan wel even rekening mee houden.

Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
Hallo @blb4 ,
Ik gebruik je regels 20241211 voor mijn Jeisha 5 kW met Heishamon ESP32 V 3.9.
Alle regels zijn geactiveerd behalve DHW en pumpDuty.
Tot nu toe werken je regels naar volle tevredenheid met kleine wijzigingen. Nogmaals bedankt hiervoor.

Het mistige weer aan het begin van het jaar leidde tot zeer frequent ontdooien. De tijd tussen het ontdooien is vaak onvoldoende om de kamertemperatuur op peil te houden.
Naar mijn mening is dit te wijten aan de SoftStartControl Phase 2, die is ontworpen voor 300 - 5 * OutSideTemp.

Een voorbeeld uit 19.1.2025

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

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

Dit is geen groot probleem, maar is er een oplossing?

Acties:
  • 0 Henk 'm!

  • blb4
  • Registratie: April 2008
  • Laatst online: 00:01
Hoi @Binifada, fijn dat 't redelijk tot goed werkt! Je bent zeker niet de enige die problemen gehad hebben in de defrost-mania tijd! 't Panasonic en 't algemene Lucht/Water warmtepomp topic staat er vol mee. Bij mij ging 't maar nauwelijks goed en ik heb ook gekeken naar de mogelijkheid dit gedrag te verbeteren.

probleem is:
  • Als je te rustig start na een defrost heb je te weinig warmte aan je huis toegevoegd voor de volgende defrost om 't warmteverlies te compenseren;
  • als je te hard gaat (Compressor naar 50+) zit je binnen no time weer aan een defrost en heb je ook te weinig warmte toegevoegd
De truc moet dus zijn hier de middenweg in te bewandelen en dat komt aardig nou. Ik heb er nog geen oplossing voor.

Panasonic J 7kW WP, boiler & HeishaMon, 6022 Wp PV, Enphase+ST GW, SOLAX SK-SU3000E 13kWh BESS, ITHO Qualityflow WTW, Elvi Smart Charging+ laadpunt, Kia EV6 84kWh EA MY25, gasloos '23


Acties:
  • 0 Henk 'm!

  • Binifada
  • Registratie: Oktober 2021
  • Laatst online: 10-07 12:32
blb4 schreef op woensdag 12 februari 2025 @ 13:24:

...

probleem is:
  • Als je te rustig start na een defrost heb je te weinig warmte aan je huis toegevoegd voor de volgende defrost om 't warmteverlies te compenseren;
  • als je te hard gaat (Compressor naar 50+) zit je binnen no time weer aan een defrost en heb je ook te weinig warmte toegevoegd
De truc moet dus zijn hier de middenweg in te bewandelen en dat komt aardig nou. Ik heb er nog geen oplossing voor.
... gewoon een idee:

Een timer die de intervallen tussen twee ontdooiprocessen controleert. Als de tijd korter is dan 1 uur, dan wordt de tijd voor de zachte start [#CompRunTime < (300 - 5 * #OutsideTemp)] aanzienlijk verkort!
Pagina: 1 2 3 Laatste