Warum willst Du nicht in Abhängigkeit der Temperatur steuern? Ich nehme mal einfach an, dass Du steuern/regeln willst, da Du nichts zu Deinem eigentlichen Ziel gesagt hast.
Ansonsten würde ich (ohne Störung - Warmwasser) von ca. 1,5 Stunden ausgehen.
Ne das ist nur um die Heizung (Laufzeit) zu optimieren. Steuern will ich nix.
Das mit dem Schwellwert hatte ich tatsächlich auch schon überlegt, aber dacht, das es „besser“ gehen könnte.
Evtl. fallen die Minimalwerte bei -10 Grad ja nur auf 29 Grad weil der Vorlauf hochgeregelt wird…
Ich dachte an etwas wie den Umkehrpunkt zu bestimmen. Die Warmwasserzeit kenne ich und könnte die Zeit ausklammern.
Die Idee ist auch nicht schlecht und unabhängig von konkreten Werten.
Falls das meine Aufgabe wäre, und ich nur einmalig eine Auswertung machen wollte: Werte mit Zeitstempel auf SD-Karte > Auswertung separat im Programm Deiner Wahl (ich würde Excel nehmen).
Als Dauerprojekt dann aber eher ungeeignet, wobei Temperaturen sich ja nicht so wahnsinnig schnell ändern und auch eine Änderung in der Zeit/Tempsteuerung nicht in Echtzeit erfolgen muss.
Wenn Dir Variante 1 reicht, wäre das mein "Tipp".
Hallo,
ich würde mal den neuen Messwert mit dem letzen vergleichen. Wenn die Differenz groß ist dann bist Du auf dem stark fallende Teil. Dann millis() nutzen um an die Zeit dazwischen zu kommen. Ich würde mal mit 10° als Differenz anfangen. Eventuell ist der Zeitwert nicht beim Minimum aber das macht ja nichts, ist aber reproduzierbar.
Eine andere Variante , über die Steigung. Lineare Regression über 4-5 Messwerte.
Umkehrpunkte ist auch gut , geht aber auch nicht ohne die Differenz zu nutzen,sonst ist jeder kleine Umkehrpunkt ein Trigger.
Läuft die Zirkulationspumpe dauernd bzw auch bei Warmwasser?
Wenn nicht kannst Du diese mittels Stromtrafo auf einer Phase oder paralellgeschaltenem Relais.
Auch ein Relais / Optokoppler paralell zum Thermostat falls Du einen für die ganze Wohnung hast.
Kannst Du irgendwie unterscheiden, ob die WW-Bereitung oder die Heizung läuft?
Abgriff z.B. mit zweitem Temp-Fühler an der Ladeleitung für den WW-Speicher / Puffer-Speicher?
Dann könnte man auf letzte Temperatur / aktuelle Temperatur hinter dem Brenner testen und hätte den Start der steigenen Temperatur und wenn dann der Lader fürs WW steigt bzw. der Lader für den Puffer gleich bleibt, wäre der nicht zu rechnen.
Alternativ könnte man versuchen auf die Heizraumtemperatur zu triggern. Wenn denn das auskühlen des Brenners programmiert ist....
Die Frage ist, was willst Du wissen?
Die verbrannte Energie oder die Zyklen? Die letzteren würden ja nur Sinn machen, um festzustellen, das die Takte zu kurz sind..
Weil Die Heizung etwas überdimensioniert ist und dann taktet und abschaltet.
Das wollte ich noch weiter optimieren über die ca. 40 einstellbaren Parameter, in dem ich die Laufzeiten versuche weiter zu erhöhen.
Dazu der Gedanke der automatischen Berechnung der Zeitabstände, damit ich nicht selber immer die Kurven auswerten muss
Mir fällt halt bisher nur die Berechnung der Zeit zwischen 2 Schwellwerten bei Unterschreitung ein.
Das ist aber nicht optimal, weil ich halt nicht weiß, ob zum Beispiel 27 Grad immer unterschritten werden, auch wenn der Vorlauf mal höher ist im tiefsten Winter….
Obwohl: Fällt mir gerade ein! Wenn es richtig kalt ist, läuft die Heizung eh durch, nur durch die WW Aufbereitung unterbrochen.
Also könnte es mit den Schwellwerten evtl. doch klappen….
Lieber würde ich aber universeller den tiefsten Punkt berechnen und dann die Zeit zwischen 2 von den tiefsten Punkten ermitteln.
Aber das bekomme ich in C++ (noch) nicht hin.
was hat das mit c++ Kenntnissen zu tun?
Erst braucht man eine Strategie.
Die kann man auf Papier in Pseudo Code schreiben oder zeichnen.
Codieren ist dann nur mehr der letzte Schritt.
Ob daraus dann Basic, Pascal, Fortran oder C++ wird, hängt wohl nur mehr daran was man hat, was mach braucht, was man kann.
Der "tiefste" Punkte innerhalb welcher Zeiteinheit? 1 Stunde?
Wie liegen deine Werte vor? Zeit als UTC, Temperatur als Float? Was hast soweit?
Wie soll das Ergebnis aus obiger Grafik aussehen? Du schreibst nämlich du willst "Taktung" haben... ja was ist denn das lt obiger Grafik? 90 - 90- 90- 3xx - 90 - 90 - ???
oder willst da nur einen Event haben wenn "der tiefste Punkt" erreicht ist?
OK, und der Mischer arbeitet schon? Der mischt ja das abgekühlte Rückwasser mit dem Kesserwasser um eine gewisse Vorlauftemp. zu halten. Und er gibt nach dem aufheizen weniger Kesserwasser zu und steigert das, je nach dem, wie sehr das Rückwasser abgekühlt ist. Damit wird die Vorlauftemperatur des Heizkreises einige Zeit gehalten. Bei dir gibt es aber kein Halten, sondern oben eine Nadel und dann steiler Abfall der Temperatur, als ob kein Mischer vorhanden ist. Aber bei Heizkörpern hat man einen höheren Vorlauf und bei Bodenheizung hat man deine Vorlauftemp. aber über einen Mischer eine Zeit lang gehalten. Irgendwie passt das zu keinem der Zwei Systeme. Ich bin gerade dabei unsere Heizungseinstellungen ein wenig zu überdenken, deshalb fällt mir das zur Zeit auf.