NEWS
Raumthermostat steuert Heizung und Klimaanlage?!
-
Hey,
ich hab da was vor und will mal hören ob jemand sowas schon umgesetzt hat?
Ich habe aktuell HM-Wandthermostate die per Schaltaktor die FBH schalten. Klappt und so. Jetzt gibt es in zwei Räumen noch ab nächster Woche Klimaanlagen für den Sommer. Für die Klimageräte wirds nen Adapter geben.
Jetzt die Idee: Im Sommer sind die Heizungsthermostate ja an sich nicht in Benutzung weil keine Heizung gebraucht wird … aber dann wollen die Klimageräte gesteuert werden. Es wäre doch also cool auch im Sommer die Heizungsthermostate als Steuer-Master zu haben für die Standardsteuerfälle und Temperatureinstellung und so ...
Die Idee wäre also die Direktverknüpfung zum Schaltaktor wegzumachen und am Ende entweder alles direkt zu implementieren und das Thermostat nur noch als Temperatur-Einstellrad zu nehmen oder irgendwie virtuell zu verknüpfen und dann per Skript zu steuern ...
Ingo F
-
Die Idee wäre also die Direktverknüpfung zum Schaltaktor wegzumachen und am Ende entweder alles direkt zu implementieren und das Thermostat nur noch als Temperatur-Einstellrad zu nehmen oder irgendwie virtuell zu verknüpfen und dann per Skript zu steuern … `
Vielleicht so ?// 2-Punkt-Regler Raumheizung/-kühlung // Raumkurzname am Anfang des Datenpunktnamen und als JS-Gruppenname var raum = name.split(".")[2]; // halbe Hysterese in K var hh = 0.2; var xid = getIdByName(raum + ".Temperatur"); var wid = getIdByName(raum + ".Sollwert"); var hid = getIdByName(raum + ".Heizen"); var kid = getIdByName(raum + ".Kuehlen"); var jid = getIdByName("Heizperiode"); var x = getState(xid).val; // Istwert, Initialisierung für Script start var w = getState(wid).val; // Sollwert, Initialisierung für Script start var j = getState(jid).val; // Jahreszeit: Heizperiode if(j) setState(kid, false); else setState(hid, false); function hys() { if(j) { if (x <= w - hh) { setState(hid, true);} else if (x >= w + hh) { setState(hid, false);} } else { if (x >= w + hh) { setState(kid, true);} else if (x <= w - hh) { setState(kid, false);} } } hys(); // Script start on(xid, function(dp) { x = dp.state.val; hys(); }); on(wid, function(dp) { w = dp.state.val; hys(); }); on(jid, function(dp) { j = dp.state.val; if(j) setState(kid, false); else setState(hid, false); hys(); });