NEWS
Mehrere Fenstersensoren offen - Heizung aus
-
Hey Leute!
Hat vll jemand ein Blockly script um Mehrere Fenstersensoren zu prüfen und die Heizung zu steuern?
folgendes:
Ich habe an der Balkontür einen Sensor. Sobald der offen ist und bleibt (10minuten) soll die Bodenheizung ausschalten.
Das habe ich auch schon zusammen bekommen mit folgenden Script:weiters sollte er nun aber noch 2 Sensoren checken.
Ein Sensor im Badezimmer (Fenster) und die Badezimmer Tür.
Wenn BEIDE offen sind sollte er auch nach 10min die Heizung ausschalten.Also Entweder Balkontür offen (Heizung aus) oder
Badezimmer Fenster UND Badezimmer Tür offen (Heizung aus)Des weiteren sollte er die Heizung wieder einschalten wenn Balkon und Badezimmer Fenster wieder zu sind.
Danke!
-
@youthman1987 Da würde ich mir eine Variable "Badezimmerstatus" oder so spendieren und dann in einem Skript beides prüfen, also
- falls Status Badfenster sich ändert: Wenn Badfenster auf und Badtür auf dann Badezimmerstatus true sonst false
- falls Status Badtür sichz ändert: Wenn Badtür auf und Badfenster auf dann Badezimmerstatus true sonst false
und dann kannst du analog zu dienem Blockly ein 2. schreiben mit Trigger falls objekt Badzimmerstatus wurde verändert....
Einigermaßen verständlich?
Noch eine Anmerkung: Du hast in deinem Trigger "Falls VS_Tür1" und danach prüfst du in der If-Anweisung "Falls Wert vom Objekt ID VS_Tür1 = ...", das kannst du einfacher machen, indem du nur prüfst "Falls Wert = False", die Angabe der Objekt ID ist nicht nötig weil die schon im Trigger ist und damit im Blockly geladen ist, das macht den Blockly Code etwas eleganter
-
Schaue dir das mal an: https://forum.iobroker.net/topic/39686/gelöst-fensterkontakt-steuert-thermostat-logikfehler
Mein Problem war so ähnlich.
-
Danke Jungs! So hatte ich nun eine Idee und habe es wenn auch kompliziert, gelöst.
ich habe 2 Objekte angelegt "Badezimmerstatus" der auf true oder false per script schaltet.
Dann "Fensterstatus" zusammen mit Balkontür und Badezimmerstatus per script auf true oder false schaltet.
und dann noch das script was die Heizung ein und aus schaltet.
-
@youthman1987 Das erste Skript kannst du vereinfachen:
Die erste Falls-Anweisung bleibt (falls Türbad2=false und Fenster3=false dann badstatus false) und dann einfach sonst badstatus=wahr, die beiden letzten if-Anweisungen brauchst du nicht.Das mittlere Skript analog:
Letzte Falls Anweisung nehmen Falls Badezimmerstatus = wahr und VS_Tür1=wahr dann Fensterstatus=wahr sonst Fensterstatus=falsch, die ersten drei Falls Anweisungen kannst du dann weglassen -
dann muss ich beim ersten script aber die 2. if anweisung auch lassen oder?
BADTÜR darf ja offen sein wenn BADFENSTER zu ist. -
@youthman1987 Eine Logikfrage: Wenn ich das Skript richtig verstehe, wird deine Heizung nach 10 min immer ausgeschaltet, egal, ob das Fenster wieder zu ist oder nicht. Wäre es da nicht geschickt, auch im Timeout erst einmal zu überprüfen, ob das Fenster noch immer auf ist?
-
@wizzo3
Nein. Sobald das Fenster wieder zu ist wird die Heizung wieder eingeschaltet -
@youthman1987 Okay, danke für die Info...scheinbar wird dann ein Timeout unterbrochen,sobald die Vorbedingung nicht mehr gegeben ist...gut zu wissen
-
@wizzo3
Ja deshalb "Sonst stop timeout"
So habe ich es halt verstanden : -D -
@youthman1987 OhMann Hand an die Stirn knall man sollte alles lesen..Ja, DU hast natürlich recht, den Stop hab ich glatt übersehen.
-
@youthman1987 sagte: Balkontür offen (Heizung aus) oder Badezimmer Fenster UND Badezimmer Tür offen (Heizung aus)
Das kann man mit einem Trigger-Baustein und einer einfachen Verknüpfung erreichen:
-
@youthman1987 sagte in Mehrere Fenstersensoren offen - Heizung aus:
dann muss ich beim ersten script aber die 2. if anweisung auch lassen oder?
ja klar, nur ein if der rest fällt weg
-
Würde ich mir damit die erstellen Objekte sparen?
also alles mit 1 Script steuern? -
@youthman1987 sagte: Würde ich mir damit die erstellen Objekte sparen?
also alles mit 1 Script steuern?Ja.