Auf der Steuer- und Kontroll-Anzeige der Vitodens 333 erscheint in Abhängigkeit von der Wunschtemperatur, der Neigung/Steilheit und des Niveaus zu den Außentemperaturwerten die Heizkennlinie mit Angabe von sechs Temperaturwerten? Um leichter interpolieren zu können und aus "akademischem" Interesse hätte ich gerne die zugrunde liegende Formel.
Zu dem Ansatz V = T + S*(T-A)^k + N (V=Vorlauftemperatur, T=Temperaturvorgabe, S=Neigung, N=Niveau) lässt sich der Exponent k nur schwer so bestimmen, dass die errechneten Werte mit den Angaben der Anlage übereinstimmen.
Gruß
Stephan Grabiak
Gelöst! Gehe zu Lösung.
Hallo sgrabiak,
schau mal im Anhang. Das ist alles, was ich dir zur Verfügung stellen kann.
Beste Grüße °jo
Hallo sgrabiak,
schau mal im Anhang. Das ist alles, was ich dir zur Verfügung stellen kann.
Beste Grüße °jo
Guten Tag Hansi
vielen Dank für die Formel. Ich habe sie implementiert, allerdings ist mir unklar wie die gemischte Aussentemperatur berechnet wird. Ich habe einen Vitodens 200W b2hf, da kann man keine Zeitkonstanten mehr einstellen bzw. auslesen. Wie ist die Zeitkonstante und das Mischverhältnis beim aktuellen Vitodens?
Bis jetzt bin ich mit 48 Stunde/0.5 einigermassen hingekommen, allerdings stimmt es nie wirklich ganz, das macht mich wahnsinnig...
Es wäre sehr hilfreich, die Werte zu kennen mit welcher der Vitodens rechnet...
Vielen Dank und freundliche Grüsse
Davids1
Hallo an Hansi und auch an das Forum!
zuerst mal vielen Dank für die Formel! Da ich mich aktuell mal intensiver mit der gesamten Thematik befassen wollte, stieß ich auf dieses Forum und diesen Beitrag.
Ich habe das Elternhaus übernommen und somit eine VD 333 WS3A Gastherme aus 2005.
Leider waren auch die Serviceunterlagen und Handbücher nicht mehr vorhanden, so dass ich mir auch diese erst mal im Web zusammen suchen musste. Habe aber nun alles gefunden.
Die Heizkennlinien-Werte erschienen mir dann doch recht hoch mit Niveau 10 bei Neigung 1,4.
Hätte mich damit doch ,al etwas früher befassen sollen, hätte ich gewiss schon einiges an Gas gespart.
Seit dem letzten Gaszähler-Wechsel Mitte September schreib ich mir wöchentlich die Zählerstände auf und kann mir somit Verbräuche pro Tag oder Stunde errechnen.
Anhand dieser Daten kann ich bereits nach 4 Tagen sagen, dass meine Änderung der Parameter auf Niveau 0 und Neigung 1,0 schon mal deutliche Wirkung zeigt, gute 25%!
Bisher merke ich auch keinerlei Einschränkung des Wohlbefindens. Das kann sich natürlich auch noch ändern, wenn es dann mal deutlich kühler wird draußen. Da muss ich ggf. noch mal nachjustieren. Weiterhin möchte ich auch mal probieren, mit einer Heizkurve die der einer Wärmepumpe (TV-Max=55°C) nahe kommt heraus zu finden, ob eine WP für mein Haus ohne FB-Heizung in Frage käme. (Bj. 80, 30-er Hohlloch-Ziegel) Es wird ja langsam Zeit sich Gedanken über eine neue Heizung zu machen.
In diesem Zusammenhang habe ich mich natürlich auch mit der Kennlinie befasst und empfinde es immer recht schwierig, sich gedanklich die Verschiebungen der Kurven bei Änderung von Niveau oder Raum-Solltemp. brauchbar vorzustellen. Das ist für mich dann ein wenig Stochern im Nebel... Daher wollte ich für mich es in Excel so umsetzen, um die Verschiebungen im Diagramm direkt darzustellen. Dies hat nach einiger Tüftelei auch prima geklappt. Ich hänge dazu mal einige Screenshots an.
Bezüglich der Formel hatte ich zuvor mit einer anderen Formel aus dem Web gearbeitet, welche mir aber Viessman-spezifisch keine korrekten Daten lieferte. Mit der Formel hier klappt es tadellos. Allerdings muss man für Excel da noch etwas mehr Klammern setzen, damit korekt gerechnet wird. Dort sieht dies dann wie folgt aus: VT_Soll = RT_Soll + Niveau - (Neigung * DAR * (1,4347 + 0,021 * DAR + 247,9 * 10-6 * DAR²))
Bezüglich der Heizkreis-Pumpe habe ich zur Codierung 2 auch Fragen, diese werde ich aber in einem eigenen Beitrag stellen.
Soweit erst mal mit meinem ersten Post hier, LG!
Cool das ich diesen Thread gefunden habe.
So kann ich ziemlich genau die Heizkurve berechnen ohne an das Gerät zu müssen, welches sich bei Verwandten im Haus befindet und ich sonst hinfahren muss.
Ansonsten steuere ich ja alles remote....
Moin!
Ist die Frage, wie die 'gemischte Aussentemperatur' berechnet wird, inzwischen beantwortet? Ich finde es nicht... Ist das einfach der arithmetische Mittelwert aus gedämpfter und aktueller Aussentemperatur oder findet eine Gewichtung oder so statt?
danke & Grüsse!
Phil
Also ich hab da die ermittelte Gedämpfte Temp reingehauen und kam auf die Werte die auch über KSoll + VLSoll abfragbar waren
hmm, aber eigentlich steht überall, dass da beides reinfliesst. Auch unter dem Diagramm im Beitrag von Hansi steht ja auch explizit gemischte Aussentemperatur und nicht gedämpfte...
irgendwo hab ich mal rauskopiert
"Der Heizkennlinienverlauf bestimmt den Kesselwassertemperatur-Sollwert in Abhängigkeit von der Außentemperatur. Es wird nach der gemittelten Außentemperatur geregelt. Diese setzt sich aus der tatsächlichen und der gedämpften Außentemperatur zusammen."
Ich kann es dir auch nicht sagen. Ich frage den Wert getTempKSoll ab und der kann von mir nur mit der gedämpften Temp vorberechnet werden. Nehme ich irgendwas anderes, dann klappt die Formel nicht.
Eventuell ist das Wording der Abfrage auch falsch, möchte ich gar nicht ausschließen. Der Wert heisst beim vcontrol in meiner vito halt getTempAged.
Eventuell ist das auch der gemittelte Wert ....
Die Adresse von dem Wert ist 5527.
Den Wert auf Adresse 5525 kann ich nicht gut einordnen. Er nennt sich TempAtp (Tiefpass).
Was auch immer der sein soll.
Edit: Gerade mal geschaut in meinen diversen Listen mit Adressen. In einer von den Listen steht die 5527 als gemischte_AT drin. Vielleicht ist in vielen vcontrol Listen die gedämpfte eigentlich die gemischte Temperatur.
danke für die Details!
>> In einer von den Listen steht die 5527 als gemischte_AT drin. Vielleicht ist in vielen vcontrol Listen die gedämpfte eigentlich die gemischte Temperatur.
Das würde die Sache erklären. 'Tiefpass' deutet ja ziemlich eindeutig auf die gedämpfte Temp hin. Wenn man jetzt noch die aktuelle AT (die gibt es glaubich auch als Wandlerwert und als 'gefiltert' (Rauschen...) mit 5525 und 5527 in Beziehung setzt, könnte man wohlmöglich die "Gesetzmässigkeit" der gemischten AT ermitteln...
Woher hast du die Adressen? das sind doch Optolink Adressen, oder? während 'getTempKSoll' ja eher auf die Nutzung der API hindeutet?
danke & Grüsse!
Da ja in der Anlagensteuerung der Parameter Ged. AT zum Tragen kommt, könnte ich mir vorstellen, dass auch nur dieser genutzt wird. Das Ganze mal aus programmiertechnischer Sicht beleuchtet:
In der HO1 z.B ist ja der Code 90 für die Wertbildung der Ged. TA maßgeblich. Hier gibt es die Einstellmöglichkeit von 0-199, also 200 Werte, von denen jeder einen 10-Minutenwert repräsentiert, max. also 33,17 h. Sollte man diesen evtl. auf 199 einstellen, muss ja die Steuerung theoretisch die letzten 200 Werte irgendwo im Speicher haben, aus der sie dann den Mittelwert für den max. Zeitraum bilden kann.
Es wird da vermutlich wie ein Ringspeicher laufen, dass alle 10 Minuten ein neuer Wert auf Platz 0 gespeichert wird und der älteste Wert auf 199 rausfliegt. (Wie auch immer die Register dann im Eizelnen benannt sein mögen)
Stellt man den Parameter z.B. auf 60 (entspricht 10h), greift die Steuerung nur auf die neuesten 60 Werte zu und bildet das Mittel. Theoretisch bis auf Null, dann wäre Ged. AT = AT aktuell.
Das würde für mich so am plausibelsten sein, da muss man das Rad nicht neu erfinden.
Kann aber auch sein dass Viessmann es wie auch immer anders realisiert hat.
VG Lutz
Die TP sieht irgendwie sehr komisch aus. In die Berechnung fließt die eher nicht ein. Hier mal ein Momentanauszug der Werte und das Ergebnis meiner excel Berechnung.
auch die berechneten Kurven stimmen gut.
Und hier mal super wie man dann Kennlinien vergleichen kann. Interessant hier mein Anfang bei der Heizung der alten Herrschaften und dann die Kennlinie 3 die aktuelle und Kennlinie 4 mal zum Test als mögliche andere Nachtabsenkung (statt 3 Grad)
Also mir hat die Formel viel gebracht. Übrigens Deckel ich die Berechnung bei 74 Grad, weil es ja das Max unserer Heizung ist.
Vielleicht ist ja TempAtp auch der rausch-gefilterte (also mit sehr kleiner Zeitkonstante) Wandlerwert. Vielleicht ist Viessmann ja selber mit 'gedämpft' und 'gemischt' durcheinandergeraten... Man könnte sich ja mal den Spass machen, und die AT sprunghaft drastisch ändern, indem man einen Widerstand parallel steckt. Wenn der Wert an 5527 sich dann auch rel. sprunghaft ändert, ist es der gemischte AT Wert, wenn er sich nur sehr langsam ändert, ist es die gedämpfte AT. Und dann man gucken, was die VL Solltemp macht... 🤓
@Nochdhesse Lutz,
einen Tiefpass programmiert man mit zwei Zeilen:
Wert_neu = (1-Faktor) * Wert_alt + Faktor * Eingangswert Wert_alt = Wert_neu
Den Ringspeicher braucht man für einen gleitenden Mittelwert. In der Natur verhält sich aber das meiste (und so auch das Haus) eher gemäß einem Tiefpass.
Grüsse!
Phil
Hallo Phil,
es mag ja sein dass sich ein Haus eher wie Tiefpass verhält. Wozu dann aber die Veränderung des Code 90 auf einer Zeitbasis, welche dann über eine, wie auch immer geartete Integration, einen Mittelwert, oder veilleicht auch Median bildet? Wie würde in deinen Programmzeilen dieser Zeitfakor eingehen?
Klar wäre es natürlich interessant zu wissen, wie genau es sich mit der Berechnung der Ged. AT in unseren Steuerungen verhält.
Letztendlich ist für mich aber nur wichtig zu wissen, dass die Aktuelle, in der Steuerung angezeigte Ged. AT auch genau den Sollwert gemäß Kennlinie bringt. Jedenfalls so +/- 1K genau, sind ja auch Rundungen mit drin.
Für meinen Teil habe ich diesen Parameter auf 36 (6h) gesetzt, da mir der Standartwert (128=21,33h) eine zu große Verzögerung bildet und die VL-Soll zu langsam anpasst, gerade wenn es mal eine Wetterumschwung gibt bei dem es relativ schnell deutlich kühler wird.
VG Lutz
Wo ändere ich denn den Wert?
ich finde auch, dass die Heizung zu träge reagiert. Vor allem bei komischen Tag/Nacht Werten. Da liegt die gedämpfte manchmal ordentlich daneben.
>> Wie würde in deinen Programmzeilen dieser Zeitfakor eingehen?
in den 'Faktor' natürlich. Der wird gebildet aus Zykluszeit der Berechnung und der Zeitkonstanten des Tiefpasses.
>> Wozu dann aber die Veränderung des Code 90
Nicht jedes Haus reagiert gleich schnell auf eine sich ändernde Aussentemperatur. Nimm einen Betonbunker mit einer fetten Styropordämmung drum rum - bei dem sind die 21,3 Stunden wahrscheinlich noch zu schnell. Nimm auf der andren Seite eine nicht weiter isolierte Holzhütte - da schlägt die Aussentemperatur viel schneller durch. Und beides geschieht entsprechend einer Exponentialfunktion (bzw 1-e^(-at) ), weil die Wirkung am Anfang, wo der Unterschied gross ist, stark ist, aber um so schwächer wird, je weiter es sich angeglichen hat. Nur das a = 1/Zeitkonstante ist unterschiedlich bei Betonbunker und Holzhütte. Aber am Ende sind beide auch innen auf Aussentemperatur (wenn man nicht heizt). Das begegnet einem überall in der Natur / Physik...
Ein Tiefpass erster Ordnung wie oben beschrieben bildet genau das ab. Und deswegen wird es auch nach einem Tiefpass erster Ordnung gerechnet, und nicht nach einer "wie auch immer geartete Integration, einen Mittelwert, oder veilleicht auch Median" (zumindest wenn die Entwickler/Programmierer einen Funken Verstand von Physik haben).
>> Wo ändere ich denn den Wert?
>> Da liegt die gedämpfte manchmal ordentlich daneben.
und gerade deswegen ist es vernünftig, die VL gemäß einer gemischten AT aus aktueller und gedämpfter zu fahren. Und ich bin ziemlich zuversichtlich, dass das (sogar 😉 ) auch bei Viessmann so passiert. Die Aussentemperatur ändert sich möglicherweise schnell, die Temperatur der 'Hausmasse' aber langsam. Beides sollte in einer ordentlichen Regelung (bzw das VL Soll wird ja nur gesteuert) einbezogen werden. Wenn es schlagartig draussen kalt wird, muss die VL erhöht werden, aber nicht so hoch, wie wenn es schon lange kalt ist und die Aussenwände auch schon entsprechend durchgekühlt sind....
Ich nehm mir demnächst mal nen Widerstand und werde berichten. Viessdata zeichnet ja aktuelle und gedämpfte AT sowie VL Soll auf - da kann ich mich ganz auf das Anstecken des Widerstands konzentrieren 🙂
Grüsse!
Phil
ps. es kann ja sein, dass die 21,3 Stunden bei euren Häusern zu lang sind (bei meinem übrigens glaubich auch), weil die Isolierung schwächer ist und die Häuser nicht aus Beton. Aber viele Leute verstehen die Einstellung nicht und stellen sie ein, als würden sie in einen Bauwagen leben. Deswegen ist die Einstellung auch im passwortgeschützten Bereich.
Hallo Phil, vielen Dank dank noch mal für deine Erläuterungen. Ich muss zugeben, dass ich da mathematisch/physikalisch nicht ganz so bewandert bin und müsste micht diesbezüglich einarbeiten.
Aber egal welche mathematische Funktion dahinter hängt, muss dieser Funktion ja ein Temperaturwert vor x- Stunden (eingestellter Wert im Code 90) zugänglich sein. Bei sehr starken Temperaturänderungen kann sich dieser Wert ja theoretisch alle 10 Minuten ändern. Hier habe ich ein Verständnisproblem, wie das sonst programmtechnisch realisiert wird, wenn nicht wie von mir beschrieben.
Ich meinte dieses Ringspeicherprinzip auch nicht unbedingt als direkte Berechnungsfunktion, eher einfach nur um die entsprechenden Werte überhaupt verfügbar zu haben. Ober habe ich da einen Denkfehler?
Schönes Wochenende, Lutz
HerrP schrieb: Aber viele Leute verstehen die Einstellung nicht und stellen sie ein, als würden sie in einen Bauwagen leben. Deswegen ist die Einstellung auch im passwortgeschützten Bereich.
Bei den neueren Vitodensen (z.B. 300W-B3HG) gibts diese Einstellung nicht mal mehr dort, die Regelung der Vorlauftemperatur erfolgt aber nach wie vor über diese gedämpfte/gemittelte Aussentemperatur. Hier gibt Viessmann mit einem (geheimen) Festwert vor, welche Art Haus der Kunde hat und wenn das nicht passt, hat der Kunde halt Pech gehabt 😠.
Moin ihr! 🙂
>> muss dieser Funktion ja ein Temperaturwert vor x- Stunden ... zugänglich sein
nein, muss er nicht. Nimm ein RC **bleep**, auch als Tiefpass bekannt, was sich eben so verhält.
Ein Tiefpass macht bsw. ein Musiksignal 'dumpf', 'bedämpft' es in den Höhen. Das tut er zuverlässig und verzerrungsfrei, ohne dass er weiss, welcher Ton vor einer Sekunde gespielt wurde. 🙂 Bei unserem Haus ist grob gesagt der Widerstand die Isolierung und der Kondensator die Wärmekapazität des Baustoffes und die Spannung die Temperatur.
>> Bei den neueren Vitodensen (z.B. 300W-B3HG) gibts diese Einstellung nicht mal mehr
Das ist ein weiteres Beispiel dafür, dass dem Käufer/Eigentümer/Betreiber der Anlage immer mehr die Möglichkeiten genommen werden, seine Anlage selber zu bedienen und zu optimieren, und Entwicklungsresourcen oder auch 'Grips' lieber dazu verwendet werden, Spielzeug wie "Alexa, mach mal 23 Grad" einzubauen.
-> Bitte bringt euren diesbezüglichen Unmut zum Ausdruck durch ein Like des offenen Briefes an Max Viessmann 'Internet der Dinge'!
danke & Grüsse!
Phil
Hallo Phil,
wäre dann der "Faktor" in deiner Programm-Zeile:
Wert_neu = (1-Faktor) * Wert_alt + Faktor * Eingangswert Wert_alt = Wert_neu
das u(t) / UMax ?
Wert_alt = Ged. TA aus vorherigem Messzeitpunkt und Eingangswert die neue aktuelle TA?
Gruß Lutz