<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hallo Andreas, danke für die Antwort.<div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">Am 21.12.2015 um 18:19 schrieb Andreas Goetz <<a href="mailto:cpuidle@gmail.com" class="">cpuidle@gmail.com</a>>:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hallöchen,<br class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">2015-12-21 10:02 GMT+01:00 <span dir="ltr" class=""><<a href="mailto:Panterglas@web.de" target="_blank" class="">Panterglas@web.de</a>></span>:<br class=""><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><span class="" style="font-family: Helvetica;">Hallo VZ-Gemeinde,</span><div class="" style="font-family: Helvetica;"> </div><div class="" style="font-family: Helvetica;">ich betreibe seit 2 Jahren einen VZ mit 5 S0-Zählern und 18 Temperatursensoren und nutze dafür Udo’s Erweiterung. </div></div></div></div></blockquote><div class=""><br class="">... <br class=""> <br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Nun zu meinem Anliegen.</div><div class="" style="font-family: Helvetica;"> </div><div class="" style="font-family: Helvetica;">Für die S0-Zähler nutze ich <i class="">s0vz_new</i> und <i class="">1wirevz</i>. Mit beiden habe ich sehr gute Erfahrungen gemacht. Wegen der S0-Zähler ist die Datenbank allerdings entsprechend stark gewachsen. Zwecks Ausdünnung der Daten habe ich <i class="">vzcompress2.php </i>versucht. Das Ergebnis gefällt mir für die S0 Zähler allerdings gar nicht. Das Verbrauchsprofil wird bereits bei einer 1-minütigen Aggregation nicht mehr sauber dargestellt. </div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Wenn da so ist wärs evtl. ein Fehler. Bitte issue auf GitHub aufmachen mit konkreter Beschreibung. "Nicht mehr sauber" reicht nicht ;)<br class=""></div></div></div></div></div></blockquote><div class=""><br class=""></div>Beispiel ohne Komprimierung (S0-Originaldaten für S00_Gesamt und S00_PV sind 1-minütige Leistungswerte direkt vom Wechselrichter)</div><div class=""><br class=""></div><div class="">Siehe Bild: <a href="https://imagizer.imageshack.us/v2/537x407q90/903/yx23HR.png" class="">yx23HR.png</a></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Beispiel mit Komprimierung über vzcompress2.php für beide. Die Komprimierung ist in vzcompress2.php auf 60 Sekunden eingestellt.</div><div class=""><br class=""></div><div class="">Siehe Bild: <a href="https://imagizer.imageshack.us/v2/537x417q90/907/W8Yex2.png" class="">W8Yex2.png</a></div><div class=""><br class=""></div><div class="">Wie Du siehst, werden die S0-Daten derart modifiziert, dass sich kein vernünftiges Bild mehr ergibt. Das ist mit dem Impuls-Timestamp-Verfahren im Frontend nicht gut machbar. Stellt man den Zoom näher, wird’s zwar etwas besser, den ursprünglichen Verlauf erkennt man jedoch nicht mehr gut. Aggregiert man Leistungsdaten, bleibt die Verlaufsstruktur um einiges besser erhalten. Das liegt daran, das vzcompress2.php die Impulse über den eingestellten Zeitraum zwischen zwei Datensätzen zählt und den Summenimpuls dann zum passenden Timestamp einträgt. Ich lese den Code so: aus 1 Timestamp pro Impuls werden dann z.B. 14 Impulse für einen definierten Timestamp; das sieht im Frostend eben bescheiden aus. Zumindest kenne ich keine Einstellung mit der man das verbessern kann, deshalb meine Frage.</div><div class=""><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""> <br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Wendet man <i class="">vzcompress2.php</i> auf einen Leistungszähler oder auf die Temperaturen an, sieht das allerdings sehr gut aus. Nun würde ich gerne meine S0-Daten erfassen, aggregieren und als Leistungswert in der Datenbank speichern. Dafür habe ich mir den <i class="">vzlogger</i> in Version 0.5.0 (soll ja <i class="">1wirevz</i> und <i class="">s0vz</i> ersetzen) angeschaut und die S0-Zähler darüber ausgelesen. </div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Warum willst Du das? Performance? Verwendest Du schon die Aggregation der Middleware? Das hat alles nichts mit vzlogger zu tun….<br class=""></div></div></div></div></div></blockquote><br class="">Die Aggregation der Middelware nutze ich und ich weiß, dass das alles nichts mit dem vzlogger zu tun hat. Ich dachte aber, dass ich die Gelegenheit nutze kann, bereits vor dem schreiben in die Datenbank das Datenaufkommen zu reduzieren und mich im Übrigen von s0vz und 1wirevz zu verabschieden. In der vzlogger.conf sind sind die S0 Zähler wie folgt angelegt, die 18 Temperatursensoren funktionieren tadellos.</div><div class=""><br class=""></div><div class="">{<br class=""> "retry": 0,<br class=""> "daemon": true,<br class=""> "verbosity": 15,<br class=""> "log": "/var/log/vzlogger.log",<br class=""> "local": {<br class=""> "enabled": false,<br class=""> "port": 8080,<br class=""> "index": true,<br class=""> "timeout": 0,<br class=""> "buffer": 0<br class=""> },<br class=""> "push": [<br class=""> {<br class=""> "url": "<a href="http://127.0.0.1:5582" class="">http://127.0.0.1:5582</a>"<br class=""> }<br class=""> ],<br class=""> "meters": [<br class=""> // Sensor 1<br class=""> {<br class=""> "enabled": true,<br class=""> "allowskip": false,<br class=""> "interval": -1,<br class=""><font color="#ff2600" class=""><b class=""> "aggtime": 60,</b></font><br class=""> <font color="#ff2600" class=""><b class=""> "aggfixedinterval": true,</b></font><br class=""> "channels": [<br class=""> {<br class=""> "uuid": „meineUUID",<br class=""> "identifier": "Impulse",<br class=""> "api": "volkszaehler",<br class=""> "middleware": "<a href="http://127.0.0.1/middleware.php" class="">http://127.0.0.1/middleware.php</a>",<br class=""><b class=""><font color="#ff2600" class=""> "aggmode": "SUM",</font></b><br class=""> "duplicates": 0<br class=""> }<br class=""> ],<br class=""> "protocol": "s0",<br class=""> "gpio": 4,<br class=""> "resolution": 1000,<br class=""> "configureGPIO": true,<br class=""> "debounce_delay": 0<br class=""> },<br class=""> <span class="Apple-tab-span" style="white-space: pre;"> </span>…</div><div class="">weitere Sensoren</div><div class=""><span class="Apple-tab-span" style="white-space: pre;"> </span>…</div><div class=""><br class=""></div><div class="">Ich hab es hier auch mit und ohne aggtime (-1, 60, 300), aggfixedinterval (true, false) und aggmode (SUM) in verschiedenen Einstellungsvarianten versucht. Immer das gleiche Verhalten, die S0-Werte werden zwar entsprechend aufsummiert, letztlich sieht es dann aber nicht anders aus, als wenn vzcompress2.php drüber gerattert wäre. Deshalb wären mit Leistungswerte oder Zählerstände lieber.<br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""><br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Man kann hier die Impulsdaten sammeln und erst nach einer bestimmten Zeit in die Datenbank schreiben (z.B. alle Impulse über 60 Sekunden aggregieren und einen summierten Impulswert in die DB schreiben), allerdings löst das das Problem mit der dann schönen Anzeige nicht. </div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Siehe oben- was heißt "unschöne Anzeige"? Natürlich bekommst Du bei minütlicher Erfassung keine sekundengenaue Auflösung mehr. <br class=""></div></div></div></div></div></blockquote><div class=""><br class=""></div>Selbstverständlich hat man - im Gegensatz zur S0-Zählung - bei einer 1-minütigen Leistungserfassung eine recht gute Abbildung des Verlaufs (Haushalt, Wärmepumpe, etc.). Gleiches gilt für Temperaturen (sieh Bild oben).<br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""><br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Darüber hinaus funktioniert der <i class="">vzlogger</i> hinsichtlich der S0-Daten nicht zuverlässig, es werden ab und an Leistungspeaks von mehreren kW in die DB geschrieben, das Frontend macht dann auch Probleme. Ein nachvollziehbares und reproduzierbares Verhalten dafür konnte ich nicht ausmachen.</div></div></div></div></blockquote><div class=""><br class=""></div><div class="">D.h. es ist ein Problem von vzlogger aber nicht s0vz? Könnte das mit Entprellung zu tun haben? Dafür gäbe es einen Parameter.<br class=""></div></div></div></div></div></blockquote><div class=""><br class=""></div>Die Daten erfasse ich wie oben in der config angegeben. Das klappt technisch auch gut. Jetzt wird’s wieder unpräzise :) : nach einiger Zeit (1-2 Stunden), treten die kW Sprünge - nicht nachvollziehbar - auf, ohne dass irgendetwas angefasst wird. Wenn ich etwas reproduzierbares hab, sag ich bescheid. Ich weiß, dass man so schlecht auf die Suche gehen kann.</div><div class=""><br class=""></div><div class="">Auch muckt das Frontend beim aktuellen Jessie-Image ab und an (siehe Bild). Auf meinem alten Rapsi (Image +/- April 2015, es läuft kein vzlogger nur 1wirevz und s0vz) gibt es keine Probleme (Cache und Cookies sind gelöscht und den Webserver habe ich auch neu gestartet).</div><div class=""><br class=""></div><div class="">Siehe: <a href="https://imagizer.imageshack.us/v2/537x376q90/911/BibmtI.png" class="">BibmtI.png</a><br class=""><blockquote type="cite" class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""> </div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Nun suche ich nach einer Lösung mit der bestehenden Konfiguration meine S0-Daten über einen bestimmten Zeitraum zu aggregieren, diesen Wert dann in kWh umzuwandeln (mit der Auslösung und dem Zeitintervall verrechnen) und als Leistungswert z.B. alle 60 Sekunden in die DB zu schreiben. Das reduziert das Datenaufkommen und man erkennt den Leistungsverlauf in allen Zoomstufe des Frontends besser - und das auch nach dem Komprimieren der Daten mit <i class="">vzcompress2.php</i>. Die Mengen an Impulsdaten will ich nicht weiter speichern, das bläht die DB nur unnötig auf und verlangsamt die Reaktionszeit enorm, wenn man sich die Daten auch anschauen und auswerten will.</div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Siehe oben. Ist alles nicht notwendig wenn Du die Middleware entsprechend konfigurierst.<br class=""></div></div></div></div></blockquote><div class=""><br class=""></div>Es wäre schön, wenn das möglich wäre. Mir geht es im Wesentlichen um die Größe der Datenbank bei 5 S0-Zählern, die Anzeigengeschwindigkeit und vor allem um die bessere „Lesbarkeit“ im Frontend über alle Zoomstufe hinweg. Das ist mit komprimierten S0-Signalen eben unschön.<br class=""><blockquote type="cite" class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""> </div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;">Hat jemand dafür eine Idee, oder geht das bereits in irgendeiner Form.</div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Ja und ja :)<br class=""><br class=""></div><div class="">Viele Grüße,<br class=""></div><div class="">Andreas<br class=""> <br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex;"><div class=""><div class="" style="font-family: Verdana;"><div class=""><div class="" style="font-family: Helvetica;"> </div><div class="" style="font-family: Helvetica;">vorweihnachtliche Grüße</div><div class="" style="font-family: Helvetica;">Jens</div></div></div></div></blockquote></div></div></div></blockquote></div></div></body></html>