NEWS
Differenzen zwischen Soll und Ist
-
Hallo,
ich arbeite gerade an einem Script welches mir aus allen HM Wandthermostaten die Differenz liefert zwischen Soll und Ist Temperatur. Das Script generiert ein Objekt mit dem Namen DifWohnzimmer, DifSchlafzimmer etc.
Wie kann ich aber nun per Script herausfinden, welches Objekt den höchsten Wert hat? Diese Heizung mit der höchsten Differenz soll dann ein Token von ein paar Minuten zum Heizen bekommen.
Der rote Bereich stellt den Energiebezug vom Netzbetreiber dar. Der grüne Bereich, was die Sonne liefert. An Tagen wo ausreichend Sonne da ist, könnte man die Heizungen deckeln und verhindern, dass alle gleichzeitig angehen.
Ursprüngliche Frage: Wie kann ich das Objekt mit dem höchsten Differenzwert herausfiltern.
Gruß Marco
-
Versuche es mal so (nicht getestet):
`var idDif1 = '...'; ... var idDif8 = '...'; var difs = []; difs[0] = getState(idDif1).val; ... difs[7] = getState(idDif8).val; var ids = [idDif1,...,idDif8]; var idMax = ''; function maxDif() { var max = 0; for(var i = 0; i < 8; i++) { if(difs[i] > max) { max = difs[i]; idMax = ids[i]; } } Mache was mit idMax / max } maxDif(); // Script start on(idDif1, function(dp) { difs[0] = dp.state.val; maxDif(); }); ... on(idDif8, function(dp) { difs[7] = dp.state.val; maxDif(); });` [/i][/i][/i]
-
Danke Paul, das Script hat auf Anhieb gepasst.
Weiß jemand, ob man Direktverbindungen in der CCU2 deaktivieren kann? Auf der Oberfläche gehts nicht.
Sinn: Um das Script erfolgreich einsetzen zu können, muss ich zeitweilig die Direktverknüpfung zwischen HM-Thermostat und den Zwischenschaltern kappen. Die andere Möglichkeit, das Wandthermostat auf Manuell zu setzen funktioniert nicht, weil dann die Differenzen nicht mehr stimmen. Manuell ist bei mir 4,5°C. Das nutze ich bereits, wenn die MAX-Fenstersensoren Fenster offen anzeigen.
Gruß Marco