Hallo,
schon seit mehreren Monaten speichere ich regelmäßig meine Heizungsdaten. Nachdem ich jetzt die täglichen Daten aufbereitet habe, wollte ich mich daran machen, pro Tag Kurven zu malen, um zu sehen, wie so über den Tag der Verbrauch ist und was z. B. Nachtabsenkung oder veränderte Warmwasserzeiten etc. für Auswirkungen hat.
Allerdings habe ich den Eindruck, daß mit den Zahlen was nicht so ganz 100% stimmen kann - s. Tabelle unten, die #Brennerstarts geht hoch, die Brenner-Betriebsstunden bleiben gleich. Wenn ich das auswerte, sehe ich, daß ich nichts sehe weil der Verbrauch über den Tag quasi gleich ist jede Stunde.
Ist hier die Brenndauer pro Brennerstart zu gering, um die Brennerstunden mit 1 Nachkommastelle hochzuzählen oder wie funktioniert das? Gibt es eine Möglichkeit, dennoch den Verbrauch pro Stunde sinnvoll auszuwerten mit weiteren Hintergrundinformationen?
Vielen Dank,
Cbo
timestamp brenner_betriebsstunden brenner_starts
2020-04-03 14:00:04 23845.5 219465
2020-04-03 14:30:04 23845.7 219465
2020-04-03 15:00:03 23845.7 219466
2020-04-03 15:30:04 23845.7 219467
2020-04-03 16:00:03 23845.7 219468
2020-04-03 16:30:03 23845.8 219469
2020-04-03 17:00:03 23845.8 219469
2020-04-03 17:30:04 23846 219470
2020-04-03 18:00:04 23846 219471
2020-04-03 18:30:03 23846.1 219472
2020-04-03 19:00:04 23846.1 219475
2020-04-03 19:30:03 23846.3 219475
2020-04-03 20:00:02 23846.3 219477
2020-04-03 20:30:04 23846.5 219478
2020-04-03 21:00:03 23846.5 219480
2020-04-03 21:30:03 23846.7 219481
2020-04-03 22:00:04 23846.7 219483
2020-04-03 22:30:03 23846.8 219484
2020-04-03 23:00:03 23846.8 219484
2020-04-03 23:30:02 23846.9 219485
2020-04-04 00:00:03 23846.9 219486
2020-04-04 00:30:03 23847 219487
2020-04-04 01:00:04 23847 219488
2020-04-04 01:30:03 23847.1 219489
2020-04-04 02:00:03 23847.1 219491
Hallo,
ich glaube, wenn du den Verbrauch ausrechnen willst, wirst du mit Brennerstart und Brenndauer du nicht weit kommen, da dein Heizsystem ja moduliert arbeitet. Besser ist es - zumindest mache ich es so - über die Modulation im Zeitverlauf zu gehen. Mal ein Beispiel:
Angenommen, die Anlage hat 19kW Leistung. Die Modulation wird alle 90 Sekunden abgefragt, also 40 Mal pro Stunde: heating.burners.0.modulation
Nehmen wir an, die Modulation war die erste halbe Stunde (= die ersten 20 Messungen) 60%,
dann 15 Minuten lang 40% und dann 15 Minuten lang 20%.
Daraus bildest du den Durchschnitt: [(20 * 60% + 10 * 40% + 10 * 20%) / 40] = 45% = 0,45. Die errechnete durchschnittliche Modulation pro Stunde wird mit der Leitstung multipliziert 0,45 * 19kWh = 8,55kWh
Um den Verbrauch in m³ auszurechnen kannst du das jetzt durch den Brennwert des Energieträgers dividieren.
Bei Erdgas ist das so ca. 10,3 KWh/m³ also ca. 0,83m³ am Gaszähler
Bei Propangas sind es ca. 7,19 kWh/Liter
Messintervall sollte möglichst kurz aber auch nicht zu kurz (<=60 Sekunden) sein, da sost das Abfragekontingent von 1440/24h zu schnell ausgeschöpft wird. 90 Sekunden Intervalle sind ein guter Kompromiss.
Viel Spaß noch
Chris
Hallo Chris,
danke für den Vorschlag. Ich habe eine Vitola 200 mit Vitotronic 200 und einem 1-Stufigen MHG Brenner. Soweit ich weiß moduliert der nicht. Über das von mir genutzte PHP-API gibt es keine Modulation - ich habe nur
heating.burners.0.statistics mit hours und starts.
Die Brennerstunden und der Gasverbrauch scheint nach Stichproben ganz gut zu korrelieren. Die tageweise Auswertung über den Zeitraum von 1 Jahr sieht plausibel aus - nur ein weiteres reindrillen auf stündlich bekomme ich nicht hin.
Noch andere Ideen?
Danke, Cbo
Hi,
da hätte ich vorher besser gefragt, welchen Typ Heizung du hast.
Ansonsten fällt mir nur noch ein, die API Abfrage manuell zu starten, wenn der Brenner anspringt um zu sehen, ob sich das auch in der API widerspiegelt. Umgekehrt auch, wenn sich der Brenner abschaltet.
Möglicherweise liegt es auch am 30 minütigen Abfrageintervall. Hier mal auf 90 Sekunden gehen, vielleicht wird es dann genauer. Du könntest dann gemäß meinem obigen Beispiel vorgehen und eben immer 100% Modulation annehmen. So bist du nicht auf die aggregierten Viessmann Werte angewiesen, denn...
Es kann auch sein, dass Viessmann die Brenndauer/Start Daten verkürzt und nicht alles wegspeichert - das wird z.B. bei der Außentemperatur so gemacht. Das würde auch obige Diskrepanzen erklären.
Hi Chris,
danke für den Vorschlag. Ich habe jetzt mal für 2h die Abfrage jede Minute aktiviert, mal schauen ob ich dann an Hand der Brenner an/aus-Infos auf die gleiche Brennerdauer komme via über die Brennerstunden.
Da der Brenner meist paar mal pro Stunden eher kurz angeht (noch nie gemessen - 5 Min?) bin ich mir nicht so sicher wie genau das wird, aber ich probiere es mal aus.
Wenn mich das API Limit ausbremst muß ich vielleicht doch mal direkt den Raspi anstatt der VitoConnect anklemmen...
gruß, Cbo
So, habe jetzt mal ein paar Stunden lang jede Minute die Daten abgerufen.
Brennerdauer ist in Stunden mit 1 Nachkommastelle, d.h. jede NK-Stelle entspricht 6 Minuten, feiner aufgelöst geht nicht.
Unten die Tabelle. Über 8h insgesamt 1,4h Brennerbetriebsstunden (=84min) nach API Aggregat. Die Summe der Zeitpunkte mit aktivem Brenner ist 119min, verteilt auf 21 Brennerstarts. Unter der (etwas fraglichen) Annahme daß beim Abfragen der Brenner jeweils am Anfang/Ende gerade erst/noch an war gäbe das als Ungenauigkeit 21*2=>42min, =>126min vs 119min. Zumindest nicht total daneben 🙂
Was mich wundert, z. B.
03.02.2023 08:45 | 26243,2 | 253623 | 1 |
03.02.2023 08:46 | 26243,5 | 253623 | 1 |
==>hier geht der Wert für Brenner-H innerhalb einer Minute von ,2 auf ,5 hoch, was einer Dauer von 18min entspricht, die nur schwierig innerhalb 1 Minute vergehen kann?
Wo kommt das her - aggregiert die Viessmann-API hier etwas "tüddelig" per Batch-Job immer um :45 (um 7:45, 6:45, 1:45 ist ein ähnlicher Sprung) und gibt es eine Idee, wie ich das lösen kann ohne jede Minute die Daten abzurufen?
Hat hier jemand Erfahrung mit vcontrold ob die Betriebsstunden direkt aus der Heizung schon unstetig rauskommen? (https://github.com/openv/vcontrold )
Vielleicht kann das auch Viessmann fixen - gerade bei den "Energiespar-Challenges" wäre es schon mehr sehr hilfreich, gute Basisdaten zu haben ?
Vielen Dank,
Cbo
(Zeile mit inaktivem Brenner der Übersicht halber rausgenommen)
timestamp | Brenner_Betriebsstunden | Brenner_Starts | enabled |
03.02.2023 01:00 | 26242,1 | 253602 | |
03.02.2023 01:01 | 26242,1 | 253602 | |
03.02.2023 01:02 | 26242,1 | 253603 | 1 |
03.02.2023 01:03 | 26242,1 | 253603 | 1 |
03.02.2023 01:04 | 26242,1 | 253603 | 1 |
03.02.2023 01:05 | 26242,1 | 253603 | 1 |
03.02.2023 01:06 | 26242,1 | 253603 | |
03.02.2023 01:34 | 26242,1 | 253603 | |
03.02.2023 01:35 | 26242,1 | 253603 | 1 |
03.02.2023 01:36 | 26242,1 | 253604 | 1 |
03.02.2023 01:37 | 26242,1 | 253604 | 1 |
03.02.2023 01:38 | 26242,1 | 253604 | 1 |
03.02.2023 01:39 | 26242,1 | 253604 | |
03.02.2023 02:03 | 26242,3 | 253604 | |
03.02.2023 02:04 | 26242,3 | 253605 | 1 |
03.02.2023 02:05 | 26242,3 | 253605 | 1 |
03.02.2023 02:06 | 26242,3 | 253605 | 1 |
03.02.2023 02:07 | 26242,3 | 253605 | 1 |
03.02.2023 02:08 | 26242,3 | 253605 | |
03.02.2023 02:33 | 26242,3 | 253605 | |
03.02.2023 02:34 | 26242,3 | 253605 | 1 |
03.02.2023 02:35 | 26242,3 | 253606 | 1 |
03.02.2023 02:36 | 26242,3 | 253606 | 1 |
03.02.2023 02:37 | 26242,3 | 253606 | 1 |
03.02.2023 02:38 | 26242,3 | 253606 | |
03.02.2023 02:57 | 26242,4 | 253606 | |
03.02.2023 02:58 | 26242,4 | 253606 | 1 |
03.02.2023 02:59 | 26242,4 | 253607 | 1 |
03.02.2023 03:00 | 26242,4 | 253607 | 1 |
03.02.2023 03:01 | 26242,4 | 253607 | 1 |
03.02.2023 03:02 | 26242,4 | 253607 | |
03.02.2023 03:28 | 26242,4 | 253607 | |
03.02.2023 03:29 | 26242,4 | 253607 | 1 |
03.02.2023 03:30 | 26242,4 | 253607 | 1 |
03.02.2023 03:31 | 26242,4 | 253608 | 1 |
03.02.2023 03:32 | 26242,4 | 253608 | 1 |
03.02.2023 03:33 | 26242,4 | 253608 | |
03.02.2023 04:01 | 26242,5 | 253608 | |
03.02.2023 04:02 | 26242,5 | 253608 | 1 |
03.02.2023 04:03 | 26242,5 | 253609 | 1 |
03.02.2023 04:04 | 26242,5 | 253609 | 1 |
03.02.2023 04:05 | 26242,5 | 253609 | 1 |
03.02.2023 04:06 | 26242,5 | 253609 | |
03.02.2023 04:23 | 26242,5 | 253609 | |
03.02.2023 04:24 | 26242,5 | 253609 | 1 |
03.02.2023 04:25 | 26242,5 | 253610 | 1 |
03.02.2023 04:26 | 26242,5 | 253610 | 1 |
03.02.2023 04:27 | 26242,5 | 253610 | |
03.02.2023 04:49 | 26242,6 | 253610 | |
03.02.2023 04:50 | 26242,6 | 253610 | 1 |
03.02.2023 04:51 | 26242,6 | 253611 | 1 |
03.02.2023 04:52 | 26242,6 | 253611 | 1 |
03.02.2023 04:53 | 26242,6 | 253611 | |
03.02.2023 05:14 | 26242,6 | 253611 | |
03.02.2023 05:15 | 26242,6 | 253612 | 1 |
03.02.2023 05:16 | 26242,6 | 253612 | 1 |
03.02.2023 05:17 | 26242,6 | 253612 | 1 |
03.02.2023 05:18 | 26242,6 | 253612 | |
03.02.2023 05:44 | 26242,6 | 253612 | |
03.02.2023 05:45 | 26242,6 | 253612 | 1 |
03.02.2023 05:46 | 26242,7 | 253613 | 1 |
03.02.2023 05:47 | 26242,7 | 253613 | 1 |
03.02.2023 05:48 | 26242,7 | 253613 | 1 |
03.02.2023 05:49 | 26242,7 | 253613 | 1 |
03.02.2023 05:50 | 26242,7 | 253613 | |
03.02.2023 06:09 | 26242,7 | 253613 | |
03.02.2023 06:10 | 26242,7 | 253613 | 1 |
03.02.2023 06:11 | 26242,7 | 253614 | 1 |
03.02.2023 06:12 | 26242,7 | 253614 | 1 |
03.02.2023 06:13 | 26242,7 | 253614 | 1 |
03.02.2023 06:14 | 26242,7 | 253614 | 1 |
03.02.2023 06:15 | 26242,7 | 253614 | |
03.02.2023 06:16 | 26242,7 | 253614 | |
03.02.2023 06:17 | 26242,7 | 253614 | |
03.02.2023 06:18 | 26242,7 | 253615 | 1 |
03.02.2023 06:19 | 26242,7 | 253615 | 1 |
03.02.2023 06:20 | 26242,7 | 253615 | 1 |
03.02.2023 06:21 | 26242,7 | 253615 | 1 |
03.02.2023 06:22 | 26242,7 | 253615 | 1 |
03.02.2023 06:23 | 26242,7 | 253615 | 1 |
03.02.2023 06:24 | 26242,7 | 253615 | 1 |
03.02.2023 06:25 | 26242,7 | 253615 | 1 |
03.02.2023 06:26 | 26242,7 | 253615 | 1 |
03.02.2023 06:27 | 26242,7 | 253615 | 1 |
03.02.2023 06:28 | 26242,7 | 253615 | 1 |
03.02.2023 06:29 | 26242,7 | 253615 | 1 |
03.02.2023 06:30 | 26242,7 | 253615 | 1 |
03.02.2023 06:31 | 26242,7 | 253615 | 1 |
03.02.2023 06:32 | 26242,7 | 253615 | 1 |
03.02.2023 06:33 | 26242,7 | 253615 | 1 |
03.02.2023 06:34 | 26242,7 | 253615 | 1 |
03.02.2023 06:35 | 26242,7 | 253615 | 1 |
03.02.2023 06:36 | 26242,7 | 253615 | 1 |
03.02.2023 06:37 | 26242,7 | 253615 | 1 |
03.02.2023 06:38 | 26242,7 | 253615 | 1 |
03.02.2023 06:39 | 26242,7 | 253615 | 1 |
03.02.2023 06:40 | 26242,7 | 253616 | 1 |
03.02.2023 06:41 | 26242,7 | 253616 | 1 |
03.02.2023 06:42 | 26242,7 | 253616 | 1 |
03.02.2023 06:43 | 26242,7 | 253616 | 1 |
03.02.2023 06:44 | 26242,7 | 253616 | 1 |
03.02.2023 06:45 | 26242,7 | 253616 | 1 |
03.02.2023 06:46 | 26243 | 253616 | 1 |
03.02.2023 06:47 | 26243 | 253616 | 1 |
03.02.2023 06:48 | 26243 | 253616 | |
03.02.2023 07:00 | 26243 | 253616 | |
03.02.2023 07:01 | 26243 | 253616 | 1 |
03.02.2023 07:03 | 26243 | 253617 | 1 |
03.02.2023 07:04 | 26243 | 253617 | 1 |
03.02.2023 07:05 | 26243 | 253617 | 1 |
03.02.2023 07:06 | 26243 | 253617 | 1 |
03.02.2023 07:07 | 26243 | 253617 | 1 |
03.02.2023 07:08 | 26243 | 253617 | 1 |
03.02.2023 07:09 | 26243 | 253617 | |
03.02.2023 07:17 | 26243 | 253617 | |
03.02.2023 07:18 | 26243 | 253617 | 1 |
03.02.2023 07:19 | 26243 | 253618 | 1 |
03.02.2023 07:20 | 26243 | 253618 | 1 |
03.02.2023 07:21 | 26243 | 253618 | 1 |
03.02.2023 07:22 | 26243 | 253618 | |
03.02.2023 07:45 | 26243 | 253618 | |
03.02.2023 07:46 | 26243,2 | 253618 | 1 |
03.02.2023 07:47 | 26243,2 | 253619 | 1 |
03.02.2023 07:48 | 26243,2 | 253619 | 1 |
03.02.2023 07:49 | 26243,2 | 253619 | 1 |
03.02.2023 07:50 | 26243,2 | 253619 | |
03.02.2023 08:06 | 26243,2 | 253619 | |
03.02.2023 08:07 | 26243,2 | 253620 | 1 |
03.02.2023 08:08 | 26243,2 | 253620 | 1 |
03.02.2023 08:09 | 26243,2 | 253620 | 1 |
03.02.2023 08:10 | 26243,2 | 253620 | 1 |
03.02.2023 08:11 | 26243,2 | 253620 | |
03.02.2023 08:16 | 26243,2 | 253620 | |
03.02.2023 08:17 | 26243,2 | 253620 | 1 |
03.02.2023 08:18 | 26243,2 | 253621 | 1 |
03.02.2023 08:19 | 26243,2 | 253621 | 1 |
03.02.2023 08:20 | 26243,2 | 253621 | 1 |
03.02.2023 08:21 | 26243,2 | 253621 | 1 |
03.02.2023 08:22 | 26243,2 | 253621 | |
03.02.2023 08:33 | 26243,2 | 253621 | |
03.02.2023 08:34 | 26243,2 | 253621 | 1 |
03.02.2023 08:35 | 26243,2 | 253622 | 1 |
03.02.2023 08:36 | 26243,2 | 253622 | 1 |
03.02.2023 08:37 | 26243,2 | 253622 | 1 |
03.02.2023 08:38 | 26243,2 | 253622 | |
03.02.2023 08:42 | 26243,2 | 253622 | |
03.02.2023 08:43 | 26243,2 | 253622 | 1 |
03.02.2023 08:44 | 26243,2 | 253623 | 1 |
03.02.2023 08:45 | 26243,2 | 253623 | 1 |
03.02.2023 08:46 | 26243,5 | 253623 | 1 |
03.02.2023 08:47 | 26243,5 | 253623 | 1 |
03.02.2023 08:48 | 26243,5 | 253623 | 1 |
03.02.2023 08:49 | 26243,5 | 253623 | 1 |
03.02.2023 08:50 | 26243,5 | 253623 | 1 |
03.02.2023 08:51 | 26243,5 | 253623 | 1 |
03.02.2023 08:52 | 26243,5 | 253623 | 1 |
03.02.2023 08:53 | 26243,5 | 253623 | 1 |
03.02.2023 08:54 | 26243,5 | 253623 | 1 |
03.02.2023 08:55 | 26243,5 | 253623 | 1 |
03.02.2023 08:56 | 26243,5 | 253623 | 1 |
03.02.2023 08:57 | 26243,5 | 253623 | |
03.02.2023 08:58 | 26243,5 | 253623 | |
03.02.2023 08:59 | 26243,5 | 253623 | |
03.02.2023 09:00 | 26243,5 | 253623 | |
8h | 1,4 | 21 | 119 |
Hi,
das sieht schon sehr merkwürdig aus.
Interessant ist der Zeitraum von heute früh 3.2.23 5:46 bis 6:46: Der Brenner läuft durchgehend 1 Stunde und darüber hinaus, die Brennerzeit wird erst um 6:45 ("Viertel Vor" scheint der Trigger für den Update zu sein) hochgezählt aber dann nur um 0,3 Stunden = 18 Minuten anstatt 1 Stunde.
Im Zweifel ist die Zählweise mit "Enabled" und Zeitdifferenz aufsummiert die genauere. Wobei 60 Sekunden dein Kontingent von 1440/24h genau ausschöpfen. Ich verwende deshalb 90 Sekunden Intervalle.
Ich baue deinen Ansatz mal in mein Node-Red Dashboard ein, vielleicht ergibt sich daraus etwas Vernünftiges.
Nur zur Sicherheit: Du verwendest schon heating.burners.0.statistics und darunter hours und starts, oder?
Viel Spaß noch
Chris
Ich
Hi Chris,
korrekt, ich nutze heating.burners.0.statistics mit hours und starts..
Achtung - der Brenner läuft nicht durchgehend von 5:46-6:46 (Zeiten mit Brenner aus habe ich oben im Datenset rausgekürzt sonder nur Zeiten mit Brenner an und kurze davor/danach die entsprechende Brenner-Aus-Zeile).
Wäre super wenn jemand von Viessmann dazu was sagen könnte...
danke, Cbo
hallo Cbo,
eine Sache ist schon mal sicher, Viessmann aggregiert stündlich - bei mir ebenfalls 15 Minuten vor der vollen Stunde.
Nach der ersten Stufe im Graphen ist die Anlage durchgehend gelaufen, was sich auch in den Betriebsstunden widerspiegelt.
Fazit: Über die Update Intervalle gemessen, stimmt die Betriebsstundenanzeige.
Bleibt nur noch wie oben beschrieben über "Brenner an" sowie die Zeitdauer zu gehen und entsprechend kleine Intervalle (60-90 Sekunden) anzuwenden. Viessmann wir daran wohl kaum etwas ändern.
VG
Chris