FHEM > Codeschnipsel

FHT-Boost - erweiterte Version

<< < (3/4) > >>

broadway:

--- Zitat von: maeb3 schrieb am Mi, 23 Januar 2013 22:20 ---Hallo,
Nach meinem Verständnis passiert folgendes:
- Mit jedem Update der desired-temp schlägt TC_boost_notify an (z.B. desired-temp=20,5)
- Wenn dann das Delta > 1,5 und desired < 30 ist (z.B. measured=18, desired=20,5) wird TC_boost_Target auf 20,5 gesetzt und desired auf 30
- außerdem wird dann TC_boost_State on gesetzt und der TC_boost_check gestartet
- Alle 2 Minuten wird geprüft, ob measured bis auf 1 C an TC_boost_Target rangekommen ist (damit wird dann der Boost beendet)

--- Ende Zitat ---

Genau.


--- Zitat ---
- Wenn in der Zwischenzeit aber der desiredTemp_writer zuschlägt (alle 30 Minuten), wird die aktuelle desired Temp (30 C) geschrieben

--- Ende Zitat ---

So wie ich deine Prozedur lese, "schreibt" der Temp_Writer ja nicht desired-temp 30, sondern liest diese aus und trägt sie ins LogFile ein. Der Temp_Writer löst NICHT das Boost Notify aus.


--- Zitat ---
Damit ist beim TC_boost_notify $soll=30 und somit die erste Bedingung nicht erfüllt ( if($soll lt 30.0) ) und dann wird geheizt, bis die 30 erreicht sind.

--- Ende Zitat ---

WENN das Boost Notify getriggert wird, dann nur weil das FHT gerade desired-temp sendet.
Und schau mal auf deinen eigenen Satz: "...und somit ist die erste Bedingung nicht erfüllt" genau! Deswegen wird $soll=30 NICHT auf Target übertragen und die Abschaltung funktioniert.

Natürlich glaube ich dir, dass deine Bude zu warm war, aber an diesem Punkt kann es nicht liegen. Bei mir läuft der Boost jetzt schon einige Wochen auch mit Sollwertänderungen ohne Probleme.

sengelking:
Ich habe meinen Boost-Modus im Wiki veröffentlicht: http://www.fhemwiki.de/wiki/FHT-Boost
Kann gerne als Zusatz erweitert werden!

maeb3:
Hallo broadway,

du hast Recht. Da ich täglich die fhem.cfg wegsichere, konnte ich meinen Fehler im Nachhinein noch finden.

Ich hatte

--- Code: ---define TC_boost_Check at *00:02:00
--- Ende Code ---

in meiner fhem.cfg.

Richtig ist natürlich

--- Code: ---define TC_boost_Check at +*00:02:00
--- Ende Code ---

also mit + Zeichen, so wie du es auch in deinem Code-Beispiel geschrieben hattest.
Muss mir wohl beim übertragen passiert sein.

Beim Troubleshooting hatte ich dann unter anderem addlog deaktiviert und den Boost-Code nochmals neu eingetragen und nachdem es dann funktionierte fälschlicherweise angenommen, dass es am addlog lag. In Wirklichkeit lag es aber daran, dass ich beim zweiten Versuch den Code richtig (mit + Zeichen) übertragen hatte.

Danke für die Unterstützung.
Matthias

broadway:
Naja, da wäre es um 00:02 Uhr ja auch wieder kühler geworden. ;)

Freut mich, wenn's funktioniert.

stromer-12:
Ich habe es bei mir jetzt so verändert, das ich mit einen userreading je Thermostat und einem Notify für alle Thermostate den Boost für alle Thermostate realisiere.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln