Der Heizkurve ist es egal, wie die VLT erzeugt wird. Die Art des Wärmeerzeugers spielt dafür keine Rolle. Die Heizkurve muss zum Wärmeübertrager, also FBH oder HK, und dem beheizten System passen. Mit steigender Vorlauftemperatur bzw. Differenz zur RT wird die Wärmeübertragung tendenziell effektiver. Das liegt einerseits am ansteigenden Konvektionskoeffizienten und an einer Zunahme des Strahlungsanteils. Wenn die VLT linear mit der fallenden AT steigen würde, wird es bei einer rein AT-geführten Anlage einfach zu warm.
@Umluft schrieb:
Letztlich braucht meine Reglung das alles nicht zu wissen, sondern die Regelschleife sorgt dafür, dass durch Anpassung der Vorlauftemperatur die Raumtemperatur den gewünschten Wert annimmt. Und das tut es, egal welche AT herrscht, ob externe Heizquellen dazu kommen, das Fenster auf ist, ... Alles natürlich in Grenzen.
Ja, deswegen habe ich das auch vor. Ich bin mir noch nicht sicher, ob ich die Regelung in einem standalone Rust Programm (welches alle Daten von und zu Open3E/HA per MQTT liest und schreibt) oder in HA mache. Rust macht (mir) mehr Spaß und ist strukturierter/besser, als in HA herumzuhacken.
Allerdings mit einer leicht anderen Regelstrategie. Denn ich würde immer nur einen Korrekturwert aus der Temperaturdifferenz ermitteln und den dann (innerhalb eines erlaubten Wertebereiches) zum vorhandenen Wert von DID 881 MixerTwoCircuitCentralHeatingCurve/Level hinzuaddieren und als neuen Wert in die Anlage schreiben.
Nur sind mir ein paar Randbedingungen in der Theorie noch nicht klar. Es muss eine "Abschaltfunktion" geben, wenn z.B. durch Stoßlüften die Raumtemperatur kurzzeitig stark absinkt (dann soll die Anlage ja nicht VL-Soll erhöhen), oder auch wenn die Raumtemperatur (wegen WW-Bereitung) absinkt soll die Anlage nicht VL-Soll erhöhen.
@Umluft schrieb:
Ich möchte hier auch noch mal auf einen wichtigen Punkt hinweisen: gewöhnlich gibt es Regelelement in den Heizkreisen. Also etwa Thermostate an den Heizkörpern oder den einzelnen Schleifen der FBH. Bei mir gibt es in einem (dem größten) Heizkreis ein solches Regelelement NICHT! Diese Funktion hat jetzt meine Reglung (sieh oben) übernommen.
Ja, völlig richtig. Mein Referenzraum wäre das Wohnzimmer. Der größte Raum im Haus und mit 4 großen Heizkörpern. Dort müssten dann alle Thermostate permanent auf 5/offen stehen. Und über den thermischen Abgleich müsste ich sicherstellen, dass es in allen anderen Räume, in denen es warm sein soll, bei dort offenen Thermostatventilen mindestens genauso warm wird.
Achtung @Dale : mir ist aufgefallen, dass bei höheren Außentemperaturen das Resultat von calcLevel() nicht wie gewünscht funktioniert. Das Vorzeichen dreht sich um, dadurch "entgleist" die Reglung. Ist aber leicht zu erkennen, wenn man weiß, wo zu suchen ist. 😉
@Umluft schrieb:Achtung @Dale : mir ist aufgefallen, dass bei höheren Außentemperaturen das Resultat von calcLevel() nicht wie gewünscht funktioniert. Das Vorzeichen dreht sich um, dadurch "entgleist" die Reglung. Ist aber leicht zu erkennen, wenn man weiß, wo zu suchen ist. 😉
Danke für die Warnung. Ich habe jetzt seit ein paar Tagen eine ganz einfache Regelung mit Home Assistant gebastelt, die etwas anders als Deine arbeitet:
Vereinfacht ist meine Regelstrategie: Alle 10 Minuten wird die Abweichung Soll-/Ist-Raumtemperatur geprüft und abhängig von der Größe der Abweichung wird der aktuelle Heizkurven-Level um 0, 1, 2 oder 3 nach oben oder unten verändert.
Denn leider kann man den Heizkurven-Level ja nur in ganzen Zahlen einstellen. Für eine sehr genaue, feinfühlige Steuerung durch die Raumtemperatur, in dem man da auch Werte mit Nachkommastellen angibt, ist das anscheinend nicht gedacht.
Bei der aktuellen extremen Wettersituation (frühmorgens -3°C Lufttemperatur, Nachmittags +18°C Grad Lufttemperatur, starke Sonneneinstrahlung bei wolkenlosem Himmel) ist das für dieses Regelstrategie zwar herausfordernd und braucht noch ein wenig Feintuning, funktioniert aber besser als gedacht.
Was ich auch festgestellt habe: Da im Tagesverlauf die "solaren Gewinne" der einzelnen Räume sich deutlich gegeneinander verschieben (zumindest bei mir), wird es nur mit der zentralen Steuerung der Heizung nie funktionieren, die Temperaturen in allen Räumen gleich gut konstant zu halten.
Beispiel: Ein Raum Im OG in der Süd-West-Ecke hat anscheinend noch bis zum Sonnenuntergang solare Gewinne, während Räume im EG/Ostseite Nachmittags schon viel früher wieder kälter werden.
Ich sehe nicht, dass das ganzzahlige Inkrement von Niveau ein Problem wäre. Im schlimmsten Fall geht es eine Stufe rauf und beim nächsten (oder übernächsten) Mal eine Stufe wieder runter. Bei mir sind die Stufen in der Regel ohnehin deutlich größer als 1.
Wenn du kleinere Stufen willst, könntest du den Offset des Außentemperatur-Sensors verwenden. Der ist, zumindest in den Systemparametern in Stufen von 0,1 Grad einstellbar. Nur geht das in der aktuellen Version nicht! :-(( Man kann den Parameter ändern, aber es hat keine Auswirkung. Noch so ein kleiner Fehler in dieser tollen Software! Vielleicht fixt Viessmann das ja eines Tages?
Wenn ein Heizkreis mehrere unterschiedliche Räume bedient, dann reicht eine Reglung mit einem Sensor natürlich nicht aus. Vielleicht brauchst du in jedem Raum einen Sensor, über die dann der Bedarf berechnet wird. Und jeder Raum braucht dann noch Heizkörper-Thermostate oder ähnlich um ggf. zu drosseln.
@Dale schrieb:Was ich auch festgestellt habe: Da im Tagesverlauf die "solaren Gewinne" der einzelnen Räume sich deutlich gegeneinander verschieben (zumindest bei mir), wird es nur mit der zentralen Steuerung der Heizung nie funktionieren, die Temperaturen in allen Räumen gleich gut konstant zu halten.
Die Raumtemperatur-Sensor geführte Heizungssteuerung / Heizkurvenverstellung mag bei anderen gut funktionieren, bei mir habe ich jetzt die (physikalischen, gebäudeabhängigen) Grenzen festgestellt.
Zumindest jetzt in der Jahreszeit (tagsüber Sonnenschein, Mittags Nachmittags sehr warm, abends/nachts/morgens sehr kalt) mit großen Temperaturunterschieden im Tagesverlauf (teilweise bis zu 25 Grad Amplitude) bei mir.
Wenn ich die Raumtemperaturen in den Räumen mit "solaren Gewinnen" so Regel, dass die Heizkurve so verschoben wird, dass die VL-Temperatur abgesenkt wird, kühlt sich das Heizwasser aus und auch die Räume, die nicht über "solare Gewinne" verfügen (z.B. Nordseite). Erst kurz nach Sonnenuntergang regelt die Steuerung die Vorlauf-Temperatur dann wieder hoch, weil es nach Sonnenuntergang dann recht plötzlich immer kälter wird.
Dann sind Haus (weil ungedämmt) und Heizkreis-/Puffer-Wasser aber bereits so sehr abgekühlt, dass die Heizung ca. 1,5 - 2,5 Stunden mit maximaler Leistung laufen muss, damit dann alle Räume wieder auf Soll-Temperatur sind. Und weil die Soll-Temperatur der Räume in der Zeit weit unter IST ist, wird die VL-Soll Temperatur in dieser Aufheizphase zu hoch eingestellt.
Wenn ich aber die Heizkurve nicht über den Tag verstelle/verschiebe/absenke und statt dessen die HK-Thermostate auf Soll-Temperatur einstelle, regeln diese bei "solaren Gewinnen" in den Räumen die Heizkörper ab, und das "warme" HK-Wasser im Puffer bleibt gespeichert, weil es nicht von den HK abgerufen wird. Und wenn es Abends ab Sonnenuntergang kälter wird, ist bereits mehr gespeicherte Wärmeenergie zum Abruf bereit, die Heizung muss weniger heizen, die VL-Temperaturen bleiben niedriger und es wird weniger elektrische Energie verbraucht.
Die vermeintlich bessere Steuerung ist also im Endeffekt bei mir die von der Energieeffizienz schlechtere.
In solch einer Übergangszeit mit stark schwankenden Temperaturen ist es sogar (zumindest bei mir) die energieeffizientere Variante, tagsüber (wenn es draußen warm und sonnig ist) den Puffer auf eine höhere Temperatur zu laden (und die HK-Thermostate abregeln zu lassen), damit die WP dann nachts (wenn es draußen kälter ist und die Wärme benötigt wird) weniger heizen muss.
Bisher habe ich aber noch nicht herausgefunden, wie ich zentral gesteuert (HA mit Open3E) die HK-Umwälzpumpe ausschalten und dabei den HK-Puffer auf eine höhere Temperatur aufladen kann.
Nur mal meine Erkenntnisse und Beobachtungen. Kann man sicher nicht verallgemeinern. Aber vielleicht für Andere nützlich.
In meinem Fall sorgt die Umluftheizung für Ausgleich, sodass Räume mit "solaren Gewinnen" denen ohne was abgeben. Alle Räume mit Umluftheizung werden von einem (der beiden) Heizkreise bedient. In diesem Heizkreis gibt es keine HK-Thermostate oder ähnliches. Deshalb bin ich auf die raumtemperaturabhängige Regelung der VL-Temperatur gekommen.
Soweit ich das verstehe, wird die Solltemperatur des Pufferspeichers aus den Solltemperaturen der Heizkreise berechnet. Eine direkte Steuerung habe ich bisher nicht entdeckt.
Man kann von dem Pufferspeicher nicht erwarten, dass es viel bringt "den Puffer auf eine höhere Temperatur zu laden". Mein Pufferspeicher hat 200 l Wasser. Diese um 10 K abzukühlen bringt 2000 kCal, also 2,3 kWh thermische Energie. Schau mal in viCare nach, wie viel thermische Energie deine WP in 24h so produziert.
Morgens aufzuheizen, wenn es draußen kalt ist, kann ungünstiger sein, als die Raumtemperatur rund um die Uhr konstant zu halten. Eine Nachtabsenkung macht also nur dann Sinn, wenn es am Ende der Nachtabsenkung draußen wärmer als etwa 5° C ist. Wärmepumpen haben nun mal einen schlechten Wirkungsgrad, wenn es draußen kalt ist, und wenn die ODU abgetaut werden muss, wird es ganz schlecht. Die Regelung sollte das berücksichtigen.
Vielen Dank für vielen sehr hilfreichen Beiträge. Da kann ich in der Regel voll zustimmen.
Ich habe jetzt im zweiten Winter die Vitocal 250-a (mit Fernbedienung 300E) in einem wenig isolierten Altbau und bin am Verzweifeln wegen der großen Raumtemperaturschwankungen. Wir heizen im Wesentlichen ein offenes Stockwerk mit 8 Heizkörpern, die alle immer voll aufgedreht sind. Die alte Gasheizung hatte einen Temperatursensor an geeigneter Stelle und wir haben einfach eingestellt, welche Temperatur wir haben wollen. Die Elektronik hat diese aufs zehntel Grad genau nachgeregelt. Die Temperatur war immer konstant, und man musste man die ganze Heizperiode nicht mehr dran. Eine Heizkurve war zur Vorsteuerung auch schon hinterlegt, aber den Programmieren der Gasheizung war einfach klar, dass es viele Einflüsse gibt, die mit einer solchen Heizkurve nicht berücksichtigt werden können. Deshalb gab es bei der Gasheizung eine der Heizkurve überlagerte Regelung mit Raumtemperatursensor. Fast jeder Techniker und Ingenieurstudent lernt, dass eine Regelung für solche Aufgaben unverzichtbar ist. Jeder Heizlüfter für 10 Euro hat einen Zweipunktregler für die Temperatur, weil es nicht anders geht. Ich kann nur rätseln, wer bei Vissmann die Anlagen programmiert.
Deine Lösung könnte jetzt unsere Rettung sein! Open3e läuft und ist in Home Assistant integriert. Vernünftige Temperatursensoren (ESP Home) liefern auch schon verlässlich die Temperatur. Mit Home Assistant wäre die Regelung mit überschaubarem Aufwand umsetzbar.
Bevor ich damit anfange würde mich aber sehr interessieren, ob die Erfahrungen auch im zweiten Winter immer noch positiv sind? Ich musste schon häufig feststellen, dass die Vitocal 250 eine ziemliche **bleep** sein kann und nicht unbedingt das macht, was ich erwarten würde. Kürzlich hat sich die Steuerung komplett aufgehängt, weil ich scheinbar zu oft hintereinander an einigen Parametern gedreht habe. Erst nach einer kurze Trennung vom Netz wollte die Wärmepumpe wieder heizen.
Vielleicht kannst Du ein kurzes Update geben. Falls es einen neuen Code gibt, würde ich mich natürlich auch freuen, wenn ich den bekommen könnte.
Das läuft, im zweiten Winter, problemlos. Der Code ist unverändert.
Ich kann dich gerne unterstützen, wenn du das in ähnlicher Weise nachbauen willst. Schick mir einfach eine private Nachricht.
Vielen Dank! Das hört sich sehr gut an.
Ich werde das Projekt die nächsten Wochen mal angehen, wenn ich etwas Zeit finde. Über die Umsetzung und meine Erfahrungen berichte ich dann gerne hier.