[gelöst] Ökofen Pelletheizung einbinden über HTTPMOD

Begonnen von JueFi, 08 November 2014, 11:43:21

Vorheriges Thema - Nächstes Thema

JueFi

Hi Peter,

falls ich noch was an Infos liefern kann, sag Bescheid.

Viele Grüße

Jürgen

Moonraker1

Hallo zusammen,

und hier ist noch ein Neuling in FHEM...

Soll heißen, ich habe mich unter anderem im Wiki und im Forum schon ein wenig eingelesen.

Wir haben zuhause seit ca. 1 Jahr auch einen Ökofen Pelletkessel (PES20 mit Pelletronic Touch und Netzwerkanbindung). Ich habe mir regelmäßig die .csv-Dateien auf USB gezogen, nach excel kopiert und Graphen erstellt. Auf diese Weise konnte ich die Anfangsstartfrequenz von ca. 12-15 mal am Tag auf 4-5mal reduzieren.

Ich plane jetzt den Einstieg mit FHEM (zunächst mal ganz klein nur zum Testen mit einem MAx-Heizkörperthermostat), um perspektivisch auch die Heizung mit anzubinden.

Gerade diesen Beitrag verfolge ich mit großem Interesse. Leider kann ich noch nicht viel aktiv beitragen, aber ich hoffe, das ändert sich, sobald die FHEM-Hardware (Intel NUC mit CUL868) da ist und ich mich ein bisschen mit Perl angefreundet habe... (meine Programmierzeiten mit C sind eine halbe Ewigkeit her  ::))

erstmal viele Grüße an alle

Oliver
NUC mit Ubuntu, MAX!Cube über LAN, 1 MAX WT, 8 MAX HT, 2 MAX Fensterkontakt, MaxScanner, HM CCU2 mit Homematic HT's, div. Schaltern, Bewegungsmelder, Ökofen Pelletheizung über httpmod

JueFi

Update im ersten Beitrag
EDIT: 15.12.14:
- Ein paar weitere Werte abgefragt
- Anzeige der Außentemperatur über dem Plot
- Anzeige der "BrennerStunden Heute" über dem Plot
- Anzeige des "Solarertrags Heute" über dem Plot

Moonraker1

Hallo Jürgen,

klasse Arbeit!

Dank Deiner Vorlage (und natürlich des aktualisierten HTTPMOD's von Stefan ...) habe ich es jetzt innerhalb kurzer Zeit auch geschafft.

Die Pelletronic ist erfolgreich an den FHEM-Server (Intel NUC unter Ubuntu 14.04 LTS) angebunden (über LAN) und überträgt fleißig, auch die Visualisierung der SVG-Plots auf dem Tablet läuft 1a.
Jetzt kann ich mich in Verbindung mit den verbauten MAX!-Thermostaten an die Optimierung der Heizung machen.

Eine Frage zu den Readings habe ich noch: gibt es noch mehr verfügbare Readings zum Auslesen? Speziell die Zirkulationspumpe und die Solarfühler interessieren mich hier, da ich sie zur Warmwasserbereitung "zweckentfremdet" habe.

Wie finde ich evtl. weitere von der Pelletronic lieferbare Readings und vor allem deren Namen heraus?


Erholsame Feirtage und einen guten Rutsch!

Oliver


NUC mit Ubuntu, MAX!Cube über LAN, 1 MAX WT, 8 MAX HT, 2 MAX Fensterkontakt, MaxScanner, HM CCU2 mit Homematic HT's, div. Schaltern, Bewegungsmelder, Ökofen Pelletheizung über httpmod

JueFi

#34
Hallo Oliver,

zum Prinzip:
In diese Variable (attr PHeiz requestData) muss der zusätzliche Wert/Parameter eingefügt werden, den du abfragen möchtest.
Dabei spielt es keine Rolle, in welchem (Unter-)Menü dieser im Web-Interface der Heizung zu finden ist.

attr PHeiz requestData ["CAPPL:LOCAL.L_aussentemperatur_ist","CAPPL:FA[0].L_kesseltemperatur","CAPPL:LOCAL.L_hk[0].vorlauftemp_ist","CAPPL:LOCAL.L_hk[1].vorlauftemp_ist","CAPPL:LOCAL.L_ww[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].einschaltfuehler_ist","CAPPL:LOCAL.L_pu[0].ausschaltfuehler_ist","CAPPL:LOCAL.L_sk[0].speichertemp_ist","CAPPL:LOCAL.L_sk[0].kollektortemp_ist","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_kesselstatus","CAPPL:FA[0].L_saugintervall","CAPPL:FA[0].L_brennerlaufzeit_anzeige","CAPPL:LOCAL.ertrag[0].leistung_tag"]

Dann ein Reading erzeugen
(fortlaufende Nummerierung (hier 13),
der Wert muss evtl. noch berechnet werden (z.B. geteilt durch 10),
beachte die "Maskierung" der eckigen Klammern mit einem "\")
attr PHeiz reading13Expr $val / 10
attr PHeiz reading13Name SolarErtrag
attr PHeiz reading13Regex CAPPL:LOCAL.ertrag\[0\].leistung_tag","value":"([0-9]+)"


Weitere Werte/Parameter kann man z.B. folgendermaßen finden:
Microsoft Internet Explorer aufrufen mit der Seite der Heizung, auf der die gewünschten Werte angezeigt werden
(meiner ist in Englisch)
F12 drücken (und warten)
Den Tab "Network" anwählen
"Start Capturing"
Doppelklick auf eine Zeile
"Response Body"

Da sieht man die Parameter, Texte, Inhalte und auch den "Divisor", wenn man teilen muss.
{"formatTexts":"","shortText":"Pumpe","unitText":"%","lowerLimit":"0","upperLimit":"100","name":"CAPPL:LOCAL.L_pu[0].pumpe","value":"0","divisor":"???","status":"OK","unitTextImperial":"%"},

{"formatTexts":"","shortText":"Vorlauftemperatur","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_ertrag[0].vorlauftemp_ist","value":"188","divisor":"10","status":"OK","unitTextImperial":"°F"},

{"formatTexts":"","shortText":"Rücklauftemperatur","unitText":"°C","lowerLimit":"???","upperLimit":"???","name":"CAPPL:LOCAL.L_ertrag[0].ruecklauftemp_ist","value":"188","divisor":"10","status":"OK","unitTextImperial":"°F"},


EDIT: und noch ein Bild im Anhang
Viele Grüße

Jürgen

JueFi

Zitat von: Moonraker1 am 04 Dezember 2014, 22:00:27
Auf diese Weise konnte ich die Anfangsstartfrequenz von ca. 12-15 mal am Tag auf 4-5mal reduzieren.

Hallo Oliver,

beschreib doch mal, was du verändert hast.

Viele Grüße

Jürgen

Moonraker1

Hallo Jürgen,

zuallererst vielen Dank für Deine Tipps, werde das mal ausprobieren, wenn u.g. fertig ist.

nur ganz kurz, bin am Verzweifeln, meinen CM160 Energiemonitor an FHEM zu bekommen (scheitere gerade an der serial-Port-Erkennung in Ubuntu, es fehlt nur eine winzige Kleinigkeit, aber das als völliger Linux-Neuling herauszufinden  .. puuh).

Zur Heizungs-Optimierung: das ist ein Zusammenspiel einiger komplexer Vorgänge (auch in aller Kürze erstmal, bin müde, morgen ist Geburtstag...):

- Verstehen der hydraulischen Vorgänge im und am Pufferspeicher (hauptsächlich Pufferpumpe im Wechselspiel mit der WW-Boiler-Ladepumpe;  ja, den haben wir noch von der alten Heizung behalten)
- Monitoring des Verhaltens der Temperaturfühler am Puffer (TPO und TPM sowie WW)
- Optimierung der Fühlerpositionen!


so long erstmal, nach Weihnachten gern mehr.

vG

Oliver
NUC mit Ubuntu, MAX!Cube über LAN, 1 MAX WT, 8 MAX HT, 2 MAX Fensterkontakt, MaxScanner, HM CCU2 mit Homematic HT's, div. Schaltern, Bewegungsmelder, Ökofen Pelletheizung über httpmod

Moonraker1

Hallo Jürgen,

eine Ergänzung zum letzten Post:

1) der Owl+USB läuft jetzt auch (ich musste den Aufruf des "cm160server" einfach weglassen in Ubuntu, damit hab ich mir den ttyUSB0-port blockiert...   tja, soviel zur Lernkurve.
2) von gestern auf heute gab es einen kleinen Temperatursturz, und auf einmal war mein Aussentemperaturwert im Logfile "weg" .   ???  Bin jetzt drauf gekommen, dass man den RegEx anpassen muss, da die Heizung positive Temperaturwerte ohne Vorzeichen liefert, negative aber mit einem "-" davor. Die korrekte Attributdefinition muss daher heißen:

CAPPL:LOCAL.L_aussentemperatur_ist","value":"(-[0-9]+|[0-9]+)"

der Operator "|" steht in RegEx für das "or"

viele Grüße

Oliver
NUC mit Ubuntu, MAX!Cube über LAN, 1 MAX WT, 8 MAX HT, 2 MAX Fensterkontakt, MaxScanner, HM CCU2 mit Homematic HT's, div. Schaltern, Bewegungsmelder, Ökofen Pelletheizung über httpmod

JueFi

#38
Zitat von: Moonraker1 am 27 Dezember 2014, 15:38:23
2) von gestern auf heute gab es einen kleinen Temperatursturz, und auf einmal war mein Aussentemperaturwert im Logfile "weg" .   ???  Bin jetzt drauf gekommen, dass man den RegEx anpassen muss, da die Heizung positive Temperaturwerte ohne Vorzeichen liefert, negative aber mit einem "-" davor. Die korrekte Attributdefinition muss daher heißen:

CAPPL:LOCAL.L_aussentemperatur_ist","value":"(-[0-9]+|[0-9]+)"
Jau, habe ich auch gerade gesehen.
Muss auch für die KollektorTemperatur gemacht werden, die ist auch negativ.
Danke für den Hinweis und die richtige Syntax :D

DirkG

#39
Noch eine Ergänzung:

Die Pellematic von Ökofen legt unter <IP-Adresse>/logfiles/pellematic für jeden Tag eine CSV-Datei mit vielen Daten an. Dieses Verzeichnis ist ohne Login-Daten erreichbar.

Die Dateien heißen: touch_<Datum>.csv

Außerdem wird ein Graph der Außentemperatur als PNG abgelegt.

Das erspart einem die Nutzung des USB-Sticks an der Steuerung.

Viele Grüße,

Dirk

Korrektur:
Ich habe mich natürlich doch noch vertippt! Richtig ist zum Beispiel: http://192.168.178.29/logfiles/pelletronic/

Offenbar findet man dort aber nur die Dateien der letzten drei Tage. Als ich das gefunden hatte, war gerade Monatsanfang...

JueFi

#40
Hi Dirk,

danke für die Info - das kannte ich nicht.

Scheint unterschiedlich zu sein. Bei mir heisst das
http://192.168.68.250/logfiles/pelletronic/
und es liegen nur die letzten 4 CSV Dateien da und keine PNGs, aber immerhin :-)

Das sind meine Anlagendaten:
Bedienteil   Touch V02.00m 20130910
CMP1 TO_VA640   (Kesselsteuerung)
HKR1 BOOTLOADER: Lpc17xxBootloader_0.12
HKR1 FIRMWARE: IM110_FW_0.07

Viele Grüße

Jürgen

AKL

Hallo JueFi,

dank deiner Anleitung konnte ich eine zeitlang die Daten meiner Pelletronic auslesen und im ftui visualisieren. Herzlichen Dank für deine tolle Vorlage. Wegen diesem Thema bin ich überhaupt in FHEM eingestiegen  ;)

Leider funktioniert die HTTPMOD Abfrage seit einigen Tagen nicht mehr. Siehe Thread

https://forum.fhem.de/index.php/topic,48888.15.html

Vielleicht kannst du mir einen Rat geben?

Gruß
AKL

JueFi

Eine Ergänzung im ersten Post eingefügt

EDIT: 17.4.16: Folgende zusätzliche Zeile ist mittlerweile in meiner fhem.cfg - ich habe die nicht erzeugt, wurde evtl. durch ein Update erzeugt
attr PHeiz userattr event-min-interval event-on-change-reading reAuthRegex reading01Expr reading01Name reading01Regex reading02Expr reading02Name reading02Regex reading03Expr reading03Name reading03Regex reading04Expr reading04Name reading04Regex reading05Expr reading05Name reading05Regex reading06Expr reading06Name reading06Regex reading07Expr reading07Name reading07Regex reading08Expr reading08Name reading08Regex reading09Expr reading09Name reading09Regex reading10Expr reading10Name reading10Regex reading11Expr reading11Name reading11Regex reading12Expr reading12Name reading12Regex reading13Expr reading13Name reading13Regex requestData requestHeader1 requestHeader2 set1Data set1Map set1Name setHeader1 setHeader2 setReAuthRegex setURL sid1Data sid1Header1 sid1IDRegex sid1IgnoreRedirects sidURL timeout



blueberry63

#43
Hallo,

ich greife das Thema hier nochmal auf.

Wir stellen demnächst auf eine Oekofen-Pelletheizung um und ich wollte fragen, ob die Anbindung an FHEM über HTTPMOD noch aktuell ist? Meines Wissen gibt es mittlerweile eine API, die mittels JSON angesprochen werden kann. Kann dazu jemand etwas sagen?

https://github.com/thannaske/oekofen-json-documentation

Gruß
Blueberry63

P.S.: ich würde auch einen neuen Thread aufmachen, wenn es Sinn macht.
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

JueFi

#44
Ich arbeite noch mit der beschriebenen HTTPMOD Methode
Vielleicht macht es Sinn, das JSON Thema in einem separaten Thread zu behandeln um das hier nicht zu unübersichtlich werden zu lassen ?

EDIT: Das mit dem neuen Thread hattest du auch schon vorgeschlagen, hatte ich übersehen.
Ich habe den Titel hier mal angepasst.