NEWS
Thermostat mit ext. Ist-Temperatursensor (Empfehlung)
-
@sascha_2506 Homematic kann das, und das funktioniert auch sehr gut. Viel besser als den Temperatursensor direkt vom Themostaten zu benutzen. Vor allem sind die Geräte damit direkt verbunden, so daß das auch funktioniert, wenn iobroker mal ausfällt, und ganz ohne scripte.
Dazu braucht man bei Homematic die Kombination Stellantrieb + Wandthermostat.
-
@da-phreak
ganz ohne Scripte? Wo bleibt denn da der Spaß ? Finde die Teile aber relativ teuer...von homematic -
@nick-the-bird-92 Deswegen ist der Rest bei mir auch Zigbee, aber bei der Heizung gibt es da für mich noch keinen Ersatz. Man muß halt gucken was man kauft ... mit iobroker tuts ne CCU1, die gibts für fast garnix auf ebay (Achtung: Dann kein Homematic IP). Die CCU muß ja nicht viel können, wenn die sonstige Logik über iobroker läuft. Fensterkontakte sind bei mir z. B. Zigbee und fahren die Heizung runter wenn Fenster auf.
Mit Geduld bekommt man auch die sonstigen Teile günstiger auf ebay, ist aber Glückssache.
-
@da-phreak
stimmt
meine aber eher die Thermomether, diese finde ich unverhältnismäßig teuer, dafür dass die eigentlich nichts können. Homematic hat bei meinen Heizkörperthermostaten am besten gepasst udn dazu gab es dann die Fensterkontakte (war aber auch mein erster Smarthome Schritt), da war ich noch Meilen vom Raspberry entfernt (wusste nicht mal was das ist ^^) -
Das selbe Problem hatte ich bei mir auch. Allerdings hatte ich nicht darauf geachtet, ob das Thermostat das kann sondern einfach eines gekauft, welches Zigbee spricht.
Meine Lösung: Ein kleines Skript, was auf den Sollwert des Thermostats die Differenz zwischen Temperatur des Thermostats und Temperatur des Thermometers addiert.
Im Detail: Ich habe mir einen Datenpunkt 0_userdata.0.SollTemperatur erstellt, in dem ich die gewünschte Temperatur einstelle.
Außerdem gibt es einen Datenpunkt 0_userdata.0.Fensteröffnung (boolean), an dem festgehalten wird ob eines der Fenster geöffnet ist.Im Skript:
const id_thermostat = "zigbee.0.847127fffe0a488b"; const id_thermometer = "zigbee.0.00124b0022e97dce"; async function setThermostat (obj) { if (getState ("0_userdata.0.Fensteröffnung").val) { setState (id_thermostat + ".target_temperature", 5); return; } // Differenz berechnen und auf max. +/-5°C beschränken let d = getState("0_userdata.0.SollTemperatur").val - getState(id_thermometer + ".temperature").val; if (d < -5) d = -5; else if (d > 5) d = 5; const old_temperature = getState (id_thermostat + ".target_temperature").val; const new_temperature = getState (id_thermostat + ".local_temp").val + d; const diff = old_temperature - new_temperature; if (diff < 0 || diff > 0.5) { setState(id_thermostat + ".target_temperature", new_temperature); } } on({id: new RegExp('0_userdata\\.0\\.SollTemperatur' + "$|" + 'zigbee\\.0\\.00124b0022e97dce\\.temperature' + "$|" + '0_userdata\\.0\\.Fensteröffnung' + "$|" + 'zigbee\\.0\\.847127fffe0a488b\\.local_temp' + "$"), change: "ne"}, setThermostat); setThermostat ({});
Beim Reduzieren der Temperatur habe ich noch eine Schwelle von 0.5°C eingebaut, da ich festgestellt habe, dass dadurch die Temperatur etwas schneller und besser erreicht wird und um die Änderungshäufigkeit etwas zu reduzieren.
-
Hallo Zusammen,
sorry für die späte Rückmeldung, Ostern war viel zu tun.
Was habe ich in der Zwischenzeit ausprobiert:
-Das Danfoss Ally Thermostat ausprobiert -> externer Temperaturwert konnte gesetzt werden hatte aber überhaupt keine Einfluss. Nach mehreren Tagen und Versuchen habe ich das Thermostat entnervt zurück geschickt.
-Homematic habe ich mir angeguckt -> ist nicht meins, gerade das scripten finde ich ja so klasse, da ich wirklich alles exakt so programmieren kann wie ich es gern hätte. Aber trotzdem danke für den Tipp.-PID Regelung selbst programmiert -> funktioniert wunderbar (allerdings musste ich dafür vom Deconz auf den Zigbee Adapter wechseln weil sich unter Deconz das Eurotronic Spirit Ventil nicht auf manuellen Modus umstellen ließ)
-@Zarello Deine Variante habe ich noch nicht probert, klingt aber auch nicht schlecht. Allerdings zeigt dann das Thermostat immer eine "falsche" Setztemperatur an oder?
-
@sascha_2506
Homematic kannst du aber auch komplett in iobroker einbinden absolut kein Problem -
@sascha_2506 sagte in Thermostat mit ext. Ist-Temperatursensor (Empfehlung):
-@Zarello Deine Variante habe ich noch nicht probert, klingt aber auch nicht schlecht. Allerdings zeigt dann das Thermostat immer eine "falsche" Setztemperatur an oder?
Das stimmt natürlich, da mein Thermostat allerdings nur die Temperatur anzeigt, wenn man drauf drückt und es sowieso kaum zu sehen ist zwischen Couchlehne und Schrank, stört mich das überhaupt nicht.
Ich benutze es auch nicht um die Temperatur zu verstellen, das mach ich über die Vis (Handy, Tablet oder PC) - und wenn mir das zu unkomfortabel wäre, würde ich mir eine Lösung über Telegram basteln. -
Ich bekam gerade folgende Frage per Chat:
Was tut das Script, wenn der Datenpunkt 0_userdata.0.Fensteröffnung auf true steht?
Ich antworte mal hier, damit andere, denen sich die Frage stellt, auch etwas davon haben
Nochmal kurz die Stelle um die es geht:if (getState ("0_userdata.0.Fensteröffnung").val) { setState (id_thermostat + ".target_temperature", 5); return; }
Wenn in dem Objekt Fensteröffnung der Wert true steht, dann wird das Heizkörperthermostat auf 5°C gesetzt. Das ist die niedrigste Einstellung, die bei dem Thermostat möglich ist und entspricht der Frostschutztemperatur.
Also: Fenster offen -> Heizung aus. Durch das return wird danach auch keine weitere Anweisung dieser Funktion ausgeführt.Das Objekt Fensteröffnung wird durch ein anderes Skript gesetzt, da ich zum einen in dem Zimmer mehrere Fenster habe und zum anderen auch noch weitere Dinge darüber steuere.
-
Die Shelly TRV kannst Du dafür nutzen, da Du die IST Temperatur über HTTP API oder mqtt setzen kannst. Damit bist Du völlig unabhängig von der Hardware und kannst über den IOBroker steuern. Damit ist auch die Frage des Protokolls des Temperatursensors obsolet.