NEWS
Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan
-
Liebe Forenmitglieder!
Ich habe ein Verständnisproblem.
und zwar:
Ich möchte meine Heizkörper (5 stück Dect 200) auf Komforttemperatur stellen, wenn ein von 3 Handys länger als 3 min (oder 5 min) im WLan sind.
Leider wird mein Script alle 2 bis 3 min ausgeführt obwohl es keine Änderungen im wlan gibt. und wir zu Hause sind, das überlastet meine Fritzbox und bekomme somit immer wieder Fehlermeldungen.!MOD-EDIT: Bild eingebunden!
-
Hast du oder die anderen ein IPhone?
-
@haselchen 2 iPhones und ein Samsung
-
@McWoolf
ganz abgesehen davon, dass das herunterfahren der Heizung bei kurz- und mittelfristiger Abwesenheit absoluter Blödsinn ist, weil die "eingesparte" Energie der Bausubstanz entzogen, und nach erneutem Hochfahren von dieser wieder aufgenommen wird. Dadurch ist die Einsparung sehr marginal, eventuelle Schäden in der Bausubstanz durch Kondensation aber nicht auszuschließen.Du solltest auf jeden Fall ein Stop timeout AUCH vor dem Timeout setzen, da bei kurzfristigem Wechsel der Anwesenheit sonst ggf. der Timeout mehrfach gestartet wird, wenn sich verschiedene Handys einbuchen.
Aber der Timeout nur einmal beendet wirdGanz abgesehen davon hast du in dem FALLS nicht bei jedem Handy.presence ein WAHR, sondern nur bei einem!
Zur besseren Übersicht solltest du beim ODER mal mit der rechten MAustaste klicken und auf externe Eingänge schalten -
@McWoolf sagte:
Leider wird mein Script alle 2 bis 3 min ausgeführt
Weshalb haben die Trigger andere Namen als die geprüften Datenpunkte und auch noch alle den gleichen ?
-
@Homoran sagte:
nicht bei jedem Handy.presence ein WAHR, sondern nur bei einem!
Ich sehe "= wahr" nur beim Gesamtausdruck, was umsonst ist, aber auch nicht stört.
-
@paul53 wenn du hier schon auftauchst kannst du mir bitte eine Frage beantworten ?
ein Falls ohne = true ist trotzdem ein true, wie sieht es hier in dem verketteten Ausdruck aus?
-
@paul53 sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
@Homoran sagte:
nicht bei jedem Handy.presence ein WAHR, sondern nur bei einem!
Ich sehe "= wahr" nur beim Gesamtausdruck, was umsonst ist, aber auch nicht stört.
Danke!
du bist ja schneller als der Schall: Antwort vor der Frage -
Meine Vorredner haben die wichtigen Sachen schon aufgelistet. Weshalb ich nach dem Handy gefragt habe , das Wlan dauerhaft halten mit dem IPhone hat bei mehren Kumpels immense Probleme gemacht. Das IPhone ist, trotz richtiger Einstellungen, wenn das Display aus war, kurzzeitig aus dem Wlan. Das reicht natürlich um diverse Skripte auszulösen.
Eine An- oder Abwesenheitserkennung mit diversen Adaptern war einfach nicht möglich. -
Na das erklärt ja jetzt einiges.
Genau aus diesem Grund soll ja nur abgeschaltet oder eingeschaltet werden, wenn eine Dauerhafte Änderung der Handyzustände ist, also alles über 5 min.
Soll heissen, wenn kein Handy länger als z.B. 15 min im "Haus" ist soll die Heizung gedrosselt werden. Eben NICHT abgeschaltet!!
Und das bekomme ich nicht hin, dass die Änderung mind. 5 min Anstehen muss, damit der Trigger überhaupt registriert wird.
Ich hoffe ich habe mich jetzt verständlicher ausgedrückt. -
Beobachte mal die Datenpunkte deiner Anwesenheit/Abwesenheit , ob die durchgängig true oder false sind. Wenn das nämlich zwischendurch, wie ich es beschrieben habe, nicht ist, dann löst dein Skript nämlich aus.
-
@Homoran sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
@McWoolf
ganz abgesehen davon, dass das herunterfahren der Heizung bei kurz- und mittelfristiger Abwesenheit absoluter Blödsinn ist, weil die "eingesparte" Energie der Bausubstanz entzogen, und nach erneutem Hochfahren von dieser wieder aufgenommen wird. Dadurch ist die Einsparung sehr marginal, eventuelle Schäden in der Bausubstanz durch Kondensation aber nicht auszuschließen.Ich will nix Ausschalten, nur net voll heizen wenn keiner da ist.
Du solltest auf jeden Fall ein Stop timeout AUCH vor dem Timeout setzen, da bei kurzfristigem Wechsel der Anwesenheit sonst ggf. der Timeout mehrfach gestartet wird, wenn sich verschiedene Handys einbuchen.
Aber der Timeout nur einmal beendet wirdBei kurzfristiger Abwesenheit soll auch gar nichts passieren, nur wenn kein von den drei Handys mind. 15 min da ist, soll die heizung auf Absenkung gehen.
Grund: Meine Frau arbeitet nach Dienstplan, sprich immer unterschiedlich. Wenn nun also das Standartprogramm abläuft passt das grundsätzlich, ABER: ist meine Frau dann genau Zaus wenn die Absenkung ein ist, ist ihr kalt!! und das will ich damit verhindern.Ganz abgesehen davon hast du in dem FALLS nicht bei jedem Handy.presence ein WAHR, sondern nur bei einem!
Zur besseren Übersicht solltest du beim ODER mal mit der rechten MAustaste klicken und auf externe Eingänge schaltenSorry das verstehe ich nicht.
-
@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Ich will nix Ausschalten, nur net voll heizen wenn keiner da ist.
rein physikalisch wird die Energie, die in der Bausubstanz (+den Möbeln, Geräten usw.) gespeichert ist dann wieder abgegeben und wird hinterher wieder neu "eingespeichert". dabei ist es unerheblich ob aus oder gedrosselt. Die Energiebilanz bleibt immer gleich.
lediglich bei sehr langen Abwesenheiten rechnet es sich, wenn die Bausubstanz einmal ein niedriges Niveau erreicht hat und nicht weiter sinkt.@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Bei kurzfristiger Abwesenheit soll auch gar nichts passieren, nur wenn kein von den drei Handys mind. 15 min da ist, soll die heizung auf Absenkung gehen.
klar!
Aber du startest den Timeout ggf. 3x wenn sich die drei Handys einloggen, beendest ihn aber nur einmal@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Sorry das verstehe ich nicht.
Was von den beiden Dingen?
zum ersten müsste es heißen Wenn Smasung.presence = true, oder Apfelmus.presence=true oder Apfelkompott = true.
Da es bei js aber auch reicht zu schreiben wenn Apfelkompott Dann mache (das =wahr wird immer angenommen, wenn nichts anderes da steht) stört es nicht wirklich. Damit wollte ich dich aber nicht verwirren.zum zweiten:
Um nicht so elend lange Blöcke zu haben kann man diese zusammenfalten.
Dazu mit der rechten Maustaste (hier z.B. den ODER-Block) anklicken und im Kontextmenü auf externe Eingänge stellen -
@Homoran sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Ich will nix Ausschalten, nur net voll heizen wenn keiner da ist.
rein physikalisch wird die Energie, die in der Bausubstanz (+den Möbeln, Geräten usw.) gespeichert ist dann wieder abgegeben und wird hinterher wieder neu "eingespeichert". dabei ist es unerheblich ob aus oder gedrosselt. Die Energiebilanz bleibt immer gleich.
lediglich bei sehr langen Abwesenheiten rechnet es sich, wenn die Bausubstanz einmal ein niedriges Niveau erreicht hat und nicht weiter sinkt.ok das ist ein anderes Thema, das brauchen wir nicht zu behandeln.
@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Bei kurzfristiger Abwesenheit soll auch gar nichts passieren, nur wenn kein von den drei Handys mind. 15 min da ist, soll die heizung auf Absenkung gehen.
klar!
Aber du startest den Timeout ggf. 3x wenn sich die drei Handys einloggen, beendest ihn aber nur einmalgenau da liegt mein Problem, das will ich ja nicht und weiß nicht wie ich es lösen soll.
Der Trigger soll erst ausgelöst werden, wenn ein Handy mind. 5 Min. online ist.@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Sorry das verstehe ich nicht.
Was von den beiden Dingen?
zum ersten müsste es heißen Wenn Smasung.presence = true, oder Apfelmus.presence=true oder Apfelkompott = true.
Da es bei js aber auch reicht zu schreiben wenn Apfelkompott Dann mache (das =wahr wird immer angenommen, wenn nichts anderes da steht) stört es nicht wirklich. Damit wollte ich dich aber nicht verwirren.genau das verstehe ich nicht, denn, wenn innerhalb meines Zeitraums und eines von den Dingen (Samsung, apple, apfelmus, odgl) online ist.......!
zum zweiten:
Um nicht so elend lange Blöcke zu haben kann man diese zusammenfalten.
Dazu mit der rechten Maustaste (hier z.B. den ODER-Block) anklicken und im Kontextmenü auf externe Eingänge stellenDas ist eine coole Funktion
-
@McWoolf
Also wenn Du Heizung über IOBroker wirklich vernünftig steuern willst, kommst mit dem bisschen Blockly nicht wirklich weit.
Wie hier schon erwähnt wurde, ist es eher schlecht, die Heizung nur ein und aus zuschalten, da die Bude so zu weit auskühlt und wesentlich mehr Energie rein geballert werden muss, um die gewünschte Temperatur zu erreichen. Wenn dann auch noch zu schnell wieder abgeschaltet wird, weil keiner mehr da ist, ist das pure Verschwendung.Ein Heizungsscript ist eine recht komplexe Geschichte und wächst mit der Zeit. Ich habe eins und muss sagen, das Ding ist fast ein Jahr gewachsen und funktioniert nun annähernd perfekt, bei einer 20%igen Energie Einsparung und deutlich wärmeren Räumen als vorher.
Lass Dir Zeit und überlege was alles berücksichtigt werden soll. Dazu gehören auch ein Raumtemperatur Anpassung bedingt durch Außentemperatur und Sonnenstand. Ich habe Südseite und selbst im Winter bei direkter Sonneneinstrahlung und -20° wäre eine eingestellte Temperatur von 20° zu viel und ich könnte mir die Sauna sparen
-
Danke Jan für deine Antwort.
Bei diesem Projekt geht es mir nicht primär darum einzusparen, sondern dass ich Skript verstehen lerne.
und jetzt komm ich einfach nicht weiter und suche Hilfe. -
@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
das will ich ja nicht und weiß nicht wie ich es lösen soll.
wie ich bereits schrieb muss dann ein möglich schon laufender Timeout unmittelbar vor dem erneuten Start gestoppt werden.
@McWoolf sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Der Trigger soll erst ausgelöst werden,
Der Trigger wird immer ausgelöst (Hier hatte @paul53 ja noch Fragen zu, was das überhaupt für Trigger sind).
Die Aktion wird durch den Tiemout verzögert.
Am besten setzt du mal ein paar sinnvolle debug-Bausteine an verschiedenen Stellen im Blockly ein, um zu sehen was überhaupt passiert.
Wenn dann die Äpfel ein Problem mit der "Anwesenheit" haben, kannst du alles richtig machen, aber das Skript wird nicht machen was es soll
-
@McWoolf
Dann bist hier und mit dem Projekt komplett richtig, denn mit meinem Heizungs-Blockly habe ich auch angefangen. Ebenfalls wie Du, erst mal nur ganz klein und habe dann schnell gemerkt, dass das zwar läuft aber Käse ist, weil entweder zu warm, oder zu kalt. Dann kamen die äußeren Parameter ins Spiel und ich dem Ziel einer angenehmen Raumtemperatur immer näher. Die Einsparung ist bei ner optimalen Steuerung übrigens nur ein schöner Nebeneffekt.Dann mal zurück zu Deinem Blockly. Hier empfiehlt es sich eine autonome Anwesenheitserkennung zu erstellen und mit der einen DP zu schalten. Diesen kannst dann schön in allen anderen Scripten verwenden, die auf Anwesenheit getriggert werden sollen. Somit muss das schon mal überhaupt nicht mit ins Heizungs Script rein
Dazu mal ein sehr einfaches Beispiel:
Wenn das ganze dann noch zeitlich geregelt werden soll, muss nur den DP "Anwesenheit" mit der Zeit vergleichen und nicht jedes mal wieder alle Handy abklappern.
-
@McWoolf sagte:
das will ich ja nicht und weiß nicht wie ich es lösen soll.
Wenn z.B. ein Handy einloggt und innerhalb der 5 Minuten Verzögerung ein zweites Handy einloggt, wird der Timer mehrfach gestartet und kann nicht mehr gestoppt werden. Der Mehrfachstart muss verhindert werden, z.B. so:
Du hast meine Frage noch nicht beantwortet:
@paul53 sagte in Heizkörper aufdrehen, wenn Handy mehr als 3 min im Wlan:
Weshalb haben die Trigger andere Namen als die geprüften Datenpunkte und auch noch alle den gleichen ?
-
Weil ich nur den "Ordner" vom Handy genommen hab.!
Hab ich abgeändert.MOD-EDIT: Bild sichtbar gemacht!