Panasonic Aquarea Wärmepumpe auslesen und steuern

Überwachung der Solaranlage per eMail oder Pushover und Steuerung von Geräten mit Smart Home Zentralen. PV-Überschuss Steuerung verbunden mit Geräten und Tasmota Firmware. Wallbox Steuerungen und API Schnittstelle, über die Daten in die Solaranzeigen Datenbanken geschrieben und gelesen werden können. Alles, was man für Steuerungsaufgaben benötigt.

Moderator: Ulrich

gwaag
Beiträge: 12
Registriert: Sa 26. Jun 2021, 09:04
Danksagung erhalten: 4 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von gwaag »

Bogeyof hat geschrieben:
Mi 14. Sep 2022, 07:51
Für alle Heishamon Besitzer noch ein weiterer Trick / Tipp:
Wenn die optionale Zusatzplatine CZ-NS4P nicht eingebaut ist, man aber trotzdem SG-Ready Stati und Leistungsbegrenzung nutzen will, dann kann Heishamon diese optionale Platine emulieren. Dazu einfach unter Settings "Emulate optional PCB" aktivieren. Im Menü der WP muss dann auch die optionale Platine auf "Ja" und die Leistungssteuerung auf "Ja" gesetzt werden, beides zu finden in den Systemeinstellungen / Installateurs-Menü. Jetzt kann man wieder per MQTT oder per Web-API Einstellungen zur WP senden, wie wenn sie an der Zusatzplatine anliegen würden.

Um z.B. die Leistungsbegrenzung einzustellen (erhöht bei mir den COP bei der Warmwasserbereitung deutlich) folgenden Befehl senden:
http://192.168.xxx.xxx/command?SetDemandControl=53 (Einstellung 10%)
http://192.168.xxx.xxx/command?SetDemandControl=133 (Einstellung 50%)
usw.

Auszug aus der Beschreibung dazu:

Code: Alles auswählen

### Optional PCB emulation support:
Recent firmware allows (experimental) support for optional PCB emulation. This allows you to set SmartGrid or Demand Control values without having the optional pcb installed. Also you can send the temperatures normally connected to that board to the heatpump.

You can publish mqtt messages towards the 'topic base/commands/pcb_topic', so for example "panasonic_heat_pump/commands/SetSolarTemp". For temperatures you just send the real temperature (the hexadecimal value will be calculated for your). For SmartGrid and Demand control you send the decimal representation of the hex value you want to send (see below for the possible hex values).

Remark 1: You need to set in HP Service settings Optional PCB to YES ,and appropriate function as well to have effect in sending MQTT topics.

Remark 2: Turning on Optional PCB in HP's options will couse ,that Room Thermo 1 input will not work anymore. It is now possible to use PCB topics "SetExternalThermostat1State" (with substitute Room Thermo 1 now)  and "SetExternalThermostat2State".

Remark 3: Setting in HP Service settings Optional PCB to YES gives expectation ,that Optional PCB emulator ( HeishaMon) will sent continuously Optional PCB Set Command. When communication disappear (for around 40s) HP generates H74 error and switches off to StandBy. So ensure continiues communication is very important , be aware during switch off , factory default of HeishaMon , or similar action.

Remark 4: If you enable optional pcb emulation the HeishaMon not boot into a wifi config hotspot if it can not connect to your previously configured wifi during boot. Also during wifi failures it will keep running and try to reconnect to the wifi instead of rebooting into wifi hotspotconfig. It is important to send often optional pcb commands to the heatpump and therefore it can not react on wifi failures like that. So if you have a running wifi and heishamon and need to reconfigure your wifi ssid or password you first need to factory reset your heishamon. Or if you need to reconfigure your HeishaMon in such situation you need the double reset factory reset trick to clear the config on the Heishamon.

### Set command byte decrypt:

| PCB Topic |Topic value| Byte# | Possible Value | Value decrypt | Value Description |
|:---- | ---- | ---- | ---- | ----- | ----:|
| |-| 00 | F1 |   | Header  |
| |-| 01 | 11 | Data length ( Packet length = Data length + 3 ) |  Header |
| |-| 02 | 01 |   | Header  |
| |-| 03 | 50 |   | Header  |
| |-| 04 | 00 |   | Acknowledge for Z1/Z2/Pool Water Pump & Mixing valves state  |
| |-| 05 | 00 |   | Acknowledge for Alarm  |
| SetHeatCoolMode<br/>SetCompressorState<br/>SetSmartGridMode<br/>SetExternalThermostat1State<br/>SetExternalThermostat2State |0/1<br/>0/1<br/>0/1/2/3<br/>0/1/2/3<br/>0/1/2/3<br/>| 06 | 40 | 1st bit = Heat/Cool<br/>2nd bit = Compressor state<br/>3rd/4th bit == SmartGrid Mode (00 = normal, 10 = HP/DHW off, 01 = Capacity 1, 11 = Capacity 2)<br/>5th/6th bit = Thermostat 1 (00 = no demand, 01 = cool demand, 10 = heat demand, 11 = heat and cool demand)<br/>7th/8th bit = Thermostat 2 (00 = no demand, 01 = cool demand, 10 = heat demand, 11 = heat and cool demand)  | SG ready values , External Compressor SW , Heat/Cool SW, Thermostat 1/2 |
| SetPoolTemp |Temp [C]| 07 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Pool  |
| SetBufferTemp |Temp [C]| 08 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Buffer  |
| |-| 09 | E5 but also93,92,91 (90) ,A2 |   | ?  |
| SetZ1RoomTemp |Temp [C]| 10 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Z1_Room   |
| SetZ2RoomTemp |Temp [C]| 11 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Z2_Room   |
| |-| 12 | 00 |   | 0 byte  |
| SetSolarTemp |Temp [C]| 13 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Solar  |
| SetDemandControl |from<br/>43 -5%<br/> to <br/>234 - 100%| 14 | EA | HEX:  EB-100% ,B8 - 75% ,85 -50%,52 - 25% ,2B - 5% | Demand Control |
| SetZ2WaterTemp |Temp [C]| 15 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Z2_Water   |
| SetZ1WaterTemp |Temp [C] | 16 | FF |  NTC 6,5kOhm resistance characteristic value | Temp. Z1_Water   |
| |-| 17 | 00 |   | 0 byte  |
| |-| 18 | 00 |   | 0 byte  |
| |-| 19 | 2C |  CHECKSUM |  |
Ich habe eine 9kW T-CAP und die Warmwasserbereitung mit "Vollgas" lieferte nur einen COP von ca. 3 bis 3,5. Durch die Leistungsreduzierung auf 25% (in Wirklichkeit geht er nicht unter eine Mindestgrenze, egal was ich einstelle es sind wohl immer so ca. 50% oder mehr an echter Leistung) habe ich jetzt einen COP um 4. Statt bis zu 3,2 kW Maximalleistung nutzt er jetzt 2 kW und die Kompressorfrequenz ist nur ca. 25 statt 35 Hz. Auch die Lüfter laufen langsamer, insgesamt ist die WP dadurch natürlich auch leiser bei der Warmwasserbereitung...


Hallo,
Frage, wenn ich die optionale Platine eingebaut habe und SetDemandControl nutzen will, muss ich dann in den Heishamon settings den Haken auch setzten fuer optonal pcb?
Gruss und Danke

Bogeyof
Beiträge: 1100
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 23 Mal
Danksagung erhalten: 160 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von Bogeyof »

Das ist eine interessante Frage. Bei dem Internet-(Cloud-)-Modul von Panasonic kann Heishamon nur noch lesend betrieben werden, kein Setzen von Werten durch Heishamon möglich. Mit optionaler Platine können zumindest alle anderen Einstellungen durch heishamon gesetzt werden. Ob bei eingebauter optionaler Platine auch Einstellungen gesetzt werden können, die eigentlich von der optionalen Platine selbst kommen sollten, kann ich nicht beantworten. Das müsste man Testen...

gwaag
Beiträge: 12
Registriert: Sa 26. Jun 2021, 09:04
Danksagung erhalten: 4 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von gwaag »

Danke fuer die Rueckmeldung.
Ich habe es heute selber gestestet.
Wenn der Hacken nicht gesetzt ist, wird der Wert z.B SetDemandControl=53 nicht gesendet.
Andere Werte wie SetHeatpump, oder SetQuietMode werden gesendet.

Wenn der Hacken gesetzt ist wird der Wert SetDemandControl gesendet. Das sehe ich in meinem Python script.

pi@solaranzeige:~/th $ /home/pi/th/Test_Heishamon.py
http://192.168.0.200/command?SetHeatpump=1
<Response [200]>
set heatpump state to 2

http://192.168.0.200/command?SetDemandControl=53
<Response [200]>
# Hier würde nun stehen dass es an pcb gesendet wurde.

http://192.168.0.200/command?SetQuietMode=3
<Response [200]>
set Quiet mode to 3

Mein Problem ist demnach ein anderes.

Wenn ich SetHeatpump oder Set QuietMode sende funktioniert es, WP schaltet ein, FM geht auf 3, (diese bei optinal pcb Hacken aus)

Wenn ich Haken optional pcb on mache, geht die Wp nach ca. 1minute immer aus.
Heishamon ist am gleichen Kabel angschlossen wie das CZ-TWA1 aber als Y-Kabel. 2.5 m bis Heishamon, dann noch 4.5m bis CZ_TWA1.
Im paralell Betrieb funktioniert das einwandfrei.
Wenn ich nur mit Heihamon probiere stecke ich CZ-TWA1 aus.
Iobroker habe ich nach Anleitung installiert und den Ordner commands mit den 3 Topics, SetHeatpump, SetQuietMode, SetDemandControl, an der richtigen stelle erstellt.

Liegt es am Y-Kabel das die WP beim senden von SetDemandControl abstellt?

Bogeyof
Beiträge: 1100
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 23 Mal
Danksagung erhalten: 160 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von Bogeyof »

Ich kann zu dieser Konfiguration nichts sagen. Aber das Abschalten erfolgt wohl, weil die WP mehr als 30 Sekunden das optionale Board nicht erkennt. Das wird wohl durch das Einschalten der Option in Heishamon bewirkt, irgendwie kommt die WP da durcheinander, erkennt das Board nicht mehr und schaltet ab. Kannst Du sicher auch an der Fehlermeldung / Fehlercode ablesen...

eichhorn.a
Beiträge: 5
Registriert: Do 3. Nov 2022, 20:47
Hat sich bedankt: 1 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von eichhorn.a »

Hallo Zusammen,

das ist mein erster Beitrag hier im Forum und zum Start möchte ich mich für die tolle Arbeit bedanken, was ich auch gerne unterstütze.
Ich bin ein Einsteiger in Sachen Linux und auch was Programmieren angeht.

Dennoch konnte ich mit der Hilfe der guten Anleitungen einiges bereits erreichen.
Bei mir läuft die Solaranzeige auf einem Raspberry pi 4 8gb mit Huawei SUN2000 und ShellyEM beides über Ethernet.
Die Image habe ich gestern neu aufgesetzt mit der Version 5.0.9.
Das läuft soweit ganz gut und stabil.

Jetzt aber zum Problem was ich habe. Ich hoffe ihr könnt mir weiter helfen.
Ich habe, wie in diesem Forum beschrieben wurde, über die shelly_math das Auslesen des Heishamon-Moduls hinzugefügt.
Auch das funktionier erst eine Zeitlang ganz gut, aber nach unregelmäßigen Zeitabständen bricht das Auslesen ab und erst nach einem reboot von Raspberry geht es eine Weile weiter, bis es wieder abbricht.

So sieht die Solaranzeige-Log zum Zeitpunk des Abbruches aus:
01.02. 22:44:01 -Multi Regler Auslesen [Start].
01.02. 22:44:01 -Verarbeitung von: '1.user.config.php' Regler: 62
01.02. 22:44:01 |---------------- Start huawei_LAN.php -----------------------------
01.02. 22:44:01 -Huawei: 192.168.10.94 Port: 502 GeräteID: 1
01.02. 22:44:06 > -Gerätetyp: SUN2000-6KTL-M1 Modell ID: 427
01.02. 22:44:09 > -Alarm 1 Bits: 0000000000000000
01.02. 22:44:12 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
01.02. 22:44:12 -Multi-Regler-Ausgang. -2
01.02. 22:44:12 -OK. Datenübertragung erfolgreich.
01.02. 22:44:12 |---------------- Stop huawei_LAN.php ---------------------------
01.02. 22:44:12 -Verarbeitung von: '2.user.config.php' Regler: 31
01.02. 22:44:12 |-------------------- Start shelly.php ------------------
01.02. 22:44:12 -Shelly Typ: SHEM
01.02. 22:44:12 -Gesamtleistung: 25.45 Watt
01.02. 22:45:02 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:45:02 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
01.02. 22:46:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:46:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
01.02. 22:47:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:47:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
01.02. 22:48:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:48:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
01.02. 22:49:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:49:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
01.02. 22:50:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
01.02. 22:50:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************

Die shelly_math füge ich auch noch dazu.

Hat jemand eine Idee wie ich die Ursache für das Problem rausfinden kann.

Danke für eure Unterstützung!
Dateianhänge
shelly_math.php
(2.36 KiB) 98-mal heruntergeladen

Bogeyof
Beiträge: 1100
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 23 Mal
Danksagung erhalten: 160 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von Bogeyof »

Das Problem dürfte im Auslesen von Heishamon liegen, vermutlich klappt dies manchmal nicht. Dadurch braucht das Auslesen des Shelly zu lange und das führt zu dem Fehler zu viele PHP-Skripte. Dies tritt auf, wenn Multi-Regler-Auslesen 1 Minute später das Skript wieder aufrufen will, es aber noch läuft, also nicht beendet wurde.
Das Problem wird erst durch einen Neustart hinreichend gelöst, vorher stellt er immer wieder fest, dass das Skript noch läuft.
Ich habe Dir mal Deine shelly_math.php mit einem zusätzlichen Test angehängt, der evtl. bei Leseproblemen besser abbricht und damit zumindest nicht das ganze Auslesen der anderen Geräte stört. Bitte mal testen und zusätzlich die Einträge in der /var/www/log/php.log posten, wenn es wieder auftritt. Dort sollten dann eigentlich auch Warnungen oder Fehler zu diesen Zeiten auftauchen, aus denen man etwas schließem könnte.
Noch ein Tipp, wenn Du bereits die Firmware 3.1 (neueste) für Heishamon nutzt, dann werden jetzt noch mehr Felder ausgelesen, dann kannst Du die while-Schleife mit < 115 statt < 107 begrenzen...
Dateianhänge
shelly_math.php
(2.67 KiB) 124-mal heruntergeladen

eichhorn.a
Beiträge: 5
Registriert: Do 3. Nov 2022, 20:47
Hat sich bedankt: 1 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von eichhorn.a »

Danke für die sher schnelle Rückmeldung!
Leider war das ohne Erfolg. Ich habe die neue shelly_math hinzugefügt und sicherheitshalber reboot durchgeführt. Nach reboot wurden die Daten aus Heishamon 11x ausgelesen und dann das gleiche Verhalten.

Hier die letzten Einträge aus /var/www/log/solaranzeige.log

02.02. 20:29:01 -Multi Regler Auslesen [Start].
02.02. 20:29:01 -Verarbeitung von: '1.user.config.php' Regler: 62
02.02. 20:29:01 |---------------- Start huawei_LAN.php -----------------------------
02.02. 20:29:01 -Huawei: 192.168.10.94 Port: 502 GeräteID: 1
02.02. 20:29:03 > -Gerätetyp: SUN2000-6KTL-M1 Modell ID: 427
02.02. 20:29:06 > -Alarm 1 Bits: 0000000000000000
02.02. 20:29:09 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
02.02. 20:29:09 -Multi-Regler-Ausgang. 1
02.02. 20:29:09 -OK. Datenübertragung erfolgreich.
02.02. 20:29:09 |---------------- Stop huawei_LAN.php ---------------------------
02.02. 20:29:10 -Verarbeitung von: '2.user.config.php' Regler: 31
02.02. 20:29:10 |-------------------- Start shelly.php ------------------
02.02. 20:29:10 -Shelly Typ: SHEM
02.02. 20:29:10 -Gesamtleistung: 1474.85 Watt
02.02. 20:30:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
02.02. 20:30:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************
02.02. 20:31:01 -Zu viele PHP Scripte: multi_regler_auslesen.php
02.02. 20:31:01 !! -|---> Stop PHP Script: multi_regler_auslesen.php **************

Hier die letzten Einträge aus /var/www/log/php.log. Die beiden Meldungen von heute sind in der Zeit des Neustartes gewesen.

[31-Jan-2023 21:20:01 Europe/Berlin] PHP Notice: Undefined variable: Version in /var/www/html/huawei_LAN.php on line 94
[31-Jan-2023 21:20:01 Europe/Berlin] PHP Notice: Undefined variable: Version in /var/www/html/huawei_LAN.php on line 96
[31-Jan-2023 21:20:01 Europe/Berlin] PHP Notice: Undefined variable: Version in /var/www/html/huawei_LAN.php on line 98
[02-Feb-2023 20:18:01 Europe/Berlin] PHP Warning: fsockopen(): unable to connect to 192.168.10.94:502 (Network is unreachable) in /var/www/html/huawei_LAN.php on line 104
[02-Feb-2023 20:18:02 Europe/Berlin] PHP Warning: fsockopen(): unable to connect to 192.168.10.36:80 (Network is unreachable) in /var/www/html/shelly.php on line 113

Ein sehr seltsames Verhalten.

Bogeyof
Beiträge: 1100
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 23 Mal
Danksagung erhalten: 160 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von Bogeyof »

Na ja, in der PHP Log sind Hinweise darauf, dass Heishamon nicht erreichbar ist. Bei schlechtem WLAN bootet Heishamon öfter neu und ist dann nicht erreichbar. Was sagt das Webinterface von Heishamon zur Laufzeit. Beginnt die immer wieder neu bei 0?
Letztlich ist das Problem, dass die shelly_math.php nicht zu Ende läuft. Dieser Fehler muss gefunden werden...

eichhorn.a
Beiträge: 5
Registriert: Do 3. Nov 2022, 20:47
Hat sich bedankt: 1 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von eichhorn.a »

So sieht das Webinterface aus.

Wifi signal: 86%
Memory free: 63%
Correct received data: 99%
MQTT reconnects: 0
Uptime: 4 days 8 hours 53 minutes 33 seconds

Bogeyof
Beiträge: 1100
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 23 Mal
Danksagung erhalten: 160 Mal

Re: Panasonic Aquarea Wärmepumpe auslesen und steuern

Beitrag von Bogeyof »

Ich habe in das Skript eine Meldung eingebaut, die entweder den Start oder den Abbruch der shelly_math.php in die Solaranzeige Log schreiben müsste, ich sehe aber im geposteten Log keinen Eintrag. Das heißt entweder es ist nicht die neue math.php oder der Aufruf klappt nicht.

Antworten

Zurück zu „Überschuss Steuerung, Anlagenüberwachung, Anbindung an die Heizung, API Schnittstelle und vieles Andere mehr.“