tp1de / ioBroker.ems-esp

EMS-ESP Adapter
MIT License
18 stars 4 forks source link

Heat Demand calculation actualweight / weightoff boolean instead of number #46

Closed Track4123 closed 4 months ago

Track4123 commented 5 months ago

Hi setting up the heat demand calculation I do get these errors in the log. The new control states are only created tempoarilly. Adapter is restarting several times and crashes after. See the message about actualweight / weightoff require numbers instead of boolean.

image

image

image

tp1de commented 5 months ago

Which adapter version are you using?

Please delete the HD structure using object browser and restart the adapter.

Track4123 commented 5 months ago

Version2.7.0, so the latest. The control object tree is deleted automatically after the failure and after several retrials to restart with the same message the adapter is stopped

tp1de commented 5 months ago

what happens if you manually delete the controls object tree? Same behavior?

What is weird that weightoff for hc is not a number. Does the state ems-esp.0.heatingCircuits.hc1.temporaryRoomSetpoint exists on your system? ... and why have you put 20 for off .... only 0 works.

tp1de commented 5 months ago

I checked myself. I get this error message when defining wrong states within heat demand setup. I changed the code to display an error message for these wrong states without crashing the instance. New version is 2.7.1

Track4123 commented 5 months ago

Hi, when deleting manually it was created incorrectly again after the restart. Will check the state, but was normally copy paste, I check several times. A drop down for the selection would be great 😉 For weightoff, I don’t want to switch off but want to go down with the target temp. This to simulate the function in the Buderus RC 300 like an remote room sensor would be installed. ( beside the outside) Unf. Buderus / Bosch does not provide that out of the box with Smarthome which is really bad. Problem is that I need it wireless, as no Kabel in the room were it’s needed. Will Check the new version later today

tp1de commented 5 months ago

The heat demand funktion is designed to switch between automatic mode and off mode of each heating circuit. To lower the temporary set temperature you do not need this heat demand function which is switchimg the heating pump on/off to avoid boiler is running when all rooms are around settemp and the boiler will therefore takting.

Track4123 commented 5 months ago

Installed the new version. No crash, but still those log entries, image image image eventhough it seems to work as the boiler is switched off.... (temp setpoint is set to "0") image

Track4123 commented 5 months ago

btw, about the switch off... isn't it dangerous to totally switch off, specially in winter? (lets imagine a sunny day but still negative temps outsside) Isn't a lower value like 15, or plus / minus ° of the room setpoint not better? Would be great to have something like this... actually also trying if a script can do this... but better to have in the adapter... also here something from the manual

""Raumeinfluss Aus: Außentemperaturgeführte Regelung arbeitet unabhängig von der Raumtemperatur. 1 ... 3 ... 10 K: Abweichungen der Raumtemperatur in der eingestellten Höhe werden durch Parallelverschiebung der Heizkurve ausgeglichen (nur geeignet, wenn die Bedieneinheit in einem geeigneten Referenzraum installiert ist). Je höher der Einstellwert ist, umso größer ist die Gewichtung der Raumtemperaturabweichung und der maximal mögliche Einfluss der Raumtemperatur auf die Heizkurve.

tp1de commented 5 months ago

So jetzt konnte ich zum ersten Mal den Fehler in einer neuen Testumgebung reproduzieren ... ich weiss aber noch nicht woran es liegt, dass auf einmal boolsche Werte geschrieben werden. JS-controller oder mein Code ... ich muss schauen. .

tp1de commented 5 months ago

So sollte den Fehler gefunden haben .... neue Version 2.7.2 sollte funktionieren.

Track4123 commented 5 months ago

Hi, sorry, bin jetzt erst gerade dazu gekommen. Erstmal Danke! Seit dem Update sind die Fehler weg. Bin mir nur nicht sicher ob weightoff richtig übernommen ist?

image solle doch lt. Config 0 sein, oder übersehe ich etwas?

image

tp1de commented 5 months ago

Lösche mal die controls Struktur und starte die Instanz neu

Track4123 commented 5 months ago

Habe ich gemacht, ist leider immer noch auf 1 IMG_0426

tp1de commented 5 months ago

Ja ich habe noch einen Fehler im Code gefunden. Ist korrigiert in V2.7.3

tp1de commented 5 months ago

Noch eine Anmerkung zu den Parametern:

Bei dir ist deltam = 0 -- das macht keinen Sinn sollte für Raumthermostate mindestens 1 sein (1°C Differenz zwischen ein- und ausschalten)

Off auf 18°C - Ich verstehe nicht was das soll. Je nach eingestellter Regelungslogik verschiebst du damit nur die Soll-Vorlauftemperatur nach unten.

Die Heatdemand Logik hatte ich angedacht, um bei Erreichen der Solltemperatur in allen Räumen den Brenner auszuschalten, da die Heizungsthermostate geschlossen sind und in der Regel der Brenner stark taktet da die produzierte Wärmemenge nicht abgenommen wird. Deltam sollte dann so groß sein, dass der Brenner auch für längere Zeit ausgeschaltet bleiben kann. Wenn der Brenner runtermodulieren kann, sodass takten vermieden wird, dann brauchst du die Funktion nicht.

Track4123 commented 5 months ago

Hi. Habe die Neue Version installiert. Mit ist aufgefallen das in den Objekten der DeltAmp nicht angezeigt wird wie in der HeatDemand Config

image

image

Vielleicht nur ein Anzeigeproblem?

Komme noch auf deinen vorherigen Kommentar zurück... jap, habe ne Brennwertanlage die modeliert, leider viel zu viel KW, und was auch noch dazu kommt ist das wir keine Raumtemperatur Aufschaltung haben, nur Außentemperatur geführt.... deshalb Versuche ich das hier über den Adapter..., Beispiel, wenn Raum zu warm wird z.B. über Sonne, die der Außentemperatur Sensor nicht kennt, da Norden, soll runter geregelt / ausgeschaltet werden, bzw wenn Raum zu kalt, dann soll nachgeheitzt werden. Kabel für den Innenraumfühler kann ich nicht ziehen, deshalb der Versuch übers Smarthome, um ezumindest noch was raus zu holen... Find den Ansatz hier schon ganz gut... hatte es auch mal über Skripte probiert, fehlt dann allerdings noch die Zeit um es richtig zu machen...

tp1de commented 5 months ago

Puhhh, so langsam bin es leid. Leider habe ich heat demand Funktion auf Wunsch eines Users so geändert, dass die Werte in der Laufzeit geändert werden können. Warum deltam bei von der Config abweicht, kann ich nicht so richtig nachvollziehen.

Ich sehe aber, dass es immer noch Verständnisprobleme zu den Parametern gibt - Auch bei Dir. Deltam muss ein positiver Wert > 0 sein (Empfehlung > 1):

Ich werde die Auswahl im Config Menü anpassen, sodass nur Werte zwischen 0,25 und 5,0 wählbar sind.

tp1de commented 5 months ago

Komme noch auf deinen vorherigen Kommentar zurück... jap, habe ne Brennwertanlage die modeliert, leider viel zu viel KW, und was auch noch dazu kommt ist das wir keine Raumtemperatur Aufschaltung haben, nur Außentemperatur geführt.... deshalb Versuche ich das hier über den Adapter..., Beispiel, wenn Raum zu warm wird z.B. über Sonne, die der Außentemperatur Sensor nicht kennt, da Norden, soll runter geregelt / ausgeschaltet werden, bzw wenn Raum zu kalt, dann soll nachgeheitzt werden.

Ja genau dafür nutze ich die hd Funktion. Dann sollte aber der Heizkreis ausgeschaltet werden. Eine geringere Vorlauftemperatur durch runtersetzen den Solltemperatur verhindert bei mir das Takten nicht. Deltam sollte dann aber groß genug sein, um den Heizkreis nicht nach wenigen Minuten wieder einzuschalten. Hängt vom Isolierungsstandard des Hauses / Raumes ab.

Track4123 commented 4 months ago

Hi, ich mal wieder. Wollte noch Feedback geben das es soweit jetzt clean ist. Logik ist soweit auch verstanden. Werde es weiter benutzen, dann aber halt nicht mit kompletten Ausschalten aber mit der reduzierten Soll Temperaturen. Schöne wäre vielleicht noch so etwas wie im Raumeinfluss der Buderus Regelung beschrieben

"Raumeinfluss EIN: 1 ... 3 ... 10 K Werte: Abweichungen der Raumtemperatur in der eingestellten Höhe werden durch Parallelverschiebung der Heizkurve ausgeglichen (nur geeignet, wenn die Bedieneinheit in einem geeigneten Referenzraum installiert ist). Je höher der Einstellwert ist, umso größer ist die Gewichtung der Raumtemperaturabweichung und der maximal mögliche Einfluss der Raumtemperatur auf die Heizkurve."

Weiß nicht genau wie die Regelung das berechnet, ab die Parallelverschiebung kann man ja über den temp soll hin bekommen. Das schöne mit dem wäre das es in beide Richtungen arbeitet, wenn zu warm geht Vorlauf runter, wenn zu kalt geht er hoch... (zusätzlich zur Außentemperaturregelung)

Ich hatte eigentlich gehofft das Buderus und Bosch das über den Smarthome Controller hin bekommen, das somit ist akt. Temp direkt an die Regelung geht, aber Pustekuchen :-( Die sind nur so inteligent um den Temp Soll runter zu setzten auf den kleinsten Soll Wert der SmartThermostate, wenn die aktuelle Temp drüber ist, bzw. den Max Soll von allen wenn die akt. Temp drunter ist... Die direkte Einbindung an die Regelung der RCXXX geht leider nur mit TADO, wenn es Smart sein soll...bzw die Buderus Raumthermostate (in Funk sehr teuer)... deshalb probiere ich den Raumeinfluss irgendwie in die Vorlaufregelung einzubauen :-)

Aber danke erstmal für die Version zum Sparen bzw. Verringerung der Takte