Eigentlich geht es auch darum.
Ich habe in meinem Wintergarten drei Dachfenster mit TFK's HMIP-SWDO, einem Wandthermostat HM-TC-IT-WM-W-EU und fünf Heizkörper mit
HM-CC-RT-DN Thermostaten. Das Wandthermostat und die Heizungsthermostate sind direkt verknüpft.
Normalerweise erstelle ich eine Gruppe und alles funktioniert bestens, aber... - geht nicht, weiß ich auch.
Das Wandthermostat wird nur manuell bedient und ich brauche nur die Funktion der "Fenster Auf" - Erkennung.
Nun dachte ich, ich schreibe ein kleines Script, welches diese Funktion übernimmt.
1. Wenn ein Fenster geöffnet wird, wird eine Systemvariable auf False gesetzt. (das funktioniert)
2. Diese Systemvariable ruft "bei Änderung" ein Scirpt auf. (das funktioniert)
3. Das Script liest den aktuellen Sollwert vom Wandthermostat aus und speichert ihn in einer weiteren Systemvariablen. (das funktioniert)
4. Das Script setzt den aktuellen Sollwert auf z.B. 8°C. (das funktioniert auch, allerdings etwas verzögert)
5. Wenn alle Fenster geschlossen sind, soll der gespeicherte Sollwert wieder an das Wandthermostat übergeben werden - und das geht nicht. Die Thermostate bleiben auf 8°C.
Hier nun mein Script:
Code: Alles auswählen
var svDachfenster = dom.GetObject("SV WG-Dachfenster").Value();
var AktuellerSollwert;
var GespSollwert;
var AbsenkTemp = 8.0;
! Wenn alle Fenster geschlossen sind
if (svDachfenster)
{
GespSollwert = dom.GetObject("SV Soll-Temp WG").Value();
dom.GetObject("BidCos-RF.OExxxxxxxx:2.SET_TEMPERATURE").State(GespSollwert);
}
else ! Wenn ein oder mehr Fenster geöffnet werden
{
AktuellerSollwert = dom.GetObject("BidCos-RF.OExxxxxxxx:2.SET_TEMPERATURE").Value();
dom.GetObject("SV Soll-Temp WG").State(AktuellerSollwert);
dom.GetObject("BidCos-RF.OExxxxxxxx:2.SET_TEMPERATURE").State(AbsenkTemp);
}
Beim Schließen der Fenster (if-Zweig) passiert allerdings nichts.
Vielleicht hat ja jemand eine Idee...
Vielen Dank im Voraus
Dirk