NEWS
(Gelöst) Geräte in bestimmten Zeiten laden.
-
Hallo!
Ich versuche mich gerade intensiver mit Blockly zu beschäftigen, bin aber noch relativ neu auf dem Gebiet. Meine Idee ist es, bestimmte Geräte zu festgelegten Zeiten aufzuladen – aber nur, wenn jemand von uns zuhause ist.
Als Beispiel habe ich eine elektrische Zahnbürste genommen: Sie soll alle fünf Tage geladen werden, aber nur, wenn jemand zuhause ist. Ich nutze dafür eine Shelly, die das Laden steuern soll.
Fünf Minuten vor nächstem Laden soll Zähler abgenullt werden.Leider funktioniert mein Blockly-Skript nicht wie geplant – manchmal wird die Shelly schon am zweiten oder dritten Tag aktiviert. Irgendwo habe ich wohl einen Denkfehler oder etwas falsch programmiert.
Vielleicht gibt es auch eine ganz andere, einfachere Möglichkeit, das umzusetzen. Danke für jede Hilfe!
-
@andre1de 4k Briefmarken sind nicht zu entziffern
-
@homoran hab's geändert
-
@andre1de
was bezweckst du mit diesem Zeitplan?
Was erwartest du von dem Zeitbereich? -
@homoran said in Geräte in bestimmten Zeiten laden.:
was bezweckst du mit diesem Zeitplan?
Was erwartest du von dem Zeitbereich?dass jeden 5. Tag zwischen 7:15 bis 18:00 das Laden gestartet wird, aber wenn jemand zuhause ist. Ob jemand zuhause ist muss immer geprüft werden. Bei mir jede 15 Minuten. Falls jemand das Haus verlässt, muss Laden gestoppt werden und wenn wieder da ist, muss das Laden vorgesetzt werden.
-
@andre1de sagte in Geräte in bestimmten Zeiten laden.:
dass jeden 5. Tag zwischen 7:15 bis 18:00 das Laden gestartet wird,
das ist ein Widerspruch in sich
Triggern auf Änderung der Anwesenheit
wenn einer da
prüfen, ob der Zeitraum passt.
prüfen ob Timestamp des letzten Ladens + 5 Tage erreicht ist
wenn nicht und Ladung aktiv
stopp Ladung -
@homoran Und es ist mein Problem, dass ich das nicht sehe
In der Summe möchte ich meine sechs Stunden Ladung haben, aber in der Zeit zwischen 07:15 und 18:00 kann's passieren, dass wir haus verlassen, dann muss das Laden angehalten werden und dann wieder vorgesetzt, wenn jemand wieder zuhause ist. Dieses Ladung reicht für fünf Tage. Also muss jede 5. Tag wiederholt werden. -
@homoran said in Geräte in bestimmten Zeiten laden.:
Triggern auf Änderung der Anwesenheit
wenn einer da
prüfen, ob der Zeitraum passt.
prüfen ob Timestamp des letzten Ladens + 5 Tage erreicht ist
wenn nicht und Ladung aktiv
stopp LadungOk. Ich werde es testen. Danke!
-
@andre1de sagte in Geräte in bestimmten Zeiten laden.:
dass ich das nicht sehe
was?
@andre1de sagte in Geräte in bestimmten Zeiten laden.:
in der Zeit zwischen 07:15 und 18:00
dein schedule triggert aber nur um 07:15 und um 18:00
-
@homoran
Nicht jede 15 Minuten zw. 07:15 und 18:00 ?
-
@andre1de ok, das hab ich nicht gesehen. Bin reinweg von einem Zeitraum ausgegangen.
Dieser Wizard ist ein Graus.Javascript arbeitet ereignisbasiert.
So ein dauernder zeitlicher Trigger widerspricht dem System.Allerdings ist in meinem Vorschlag auch noch ein Pferdefuß.
Wenn keiner nach Hause kommt, sondern alle dauerhaft da sind greift der Trigger nicht.
Dann müsste da doch noch was zusätzlich rein.Ganz andere Frage:
Was erwartest du dir von diesem Konstrukt? -
@homoran
Ich habe leider eine schlechte Erfahrung mit einem Gerät gemacht, dessen Akku beim Laden angefangen hat zu brennen. Zum Glück waren wir zu Hause. Außerdem passiert es manchmal, dass man vergisst, bestimmte Geräte rechtzeitig aufzuladen – und dann ist zum Beispiel morgens die Zahnbürste plötzlich leer.
Deshalb möchte ich einige Geräte automatisch laden lassen, aber nur, wenn wir tatsächlich zu Hause sind. Da viele dieser Geräte keine Aktoren sind, lässt sich ihr Ladezustand nicht direkt auslesen. Aber basierend auf Erfahrungswerten könnte man im Skript ungefähre Ladeintervalle festlegen. -
@andre1de sagte: jeden 5. Tag zwischen 7:15 bis 18:00 das Laden gestartet wird, aber wenn jemand zuhause ist.
Vorschlag:
Anmerkung: Die Variable tage enthält die Zahl der Tage seit 1.1.1970.
-
@homoran said in Geräte in bestimmten Zeiten laden.:
Triggern auf Änderung der Anwesenheit
wenn einer da
prüfen, ob der Zeitraum passt.
prüfen ob Timestamp des letzten Ladens + 5 Tage erreicht ist
wenn nicht und Ladung aktiv
stopp LadungIch habe sowas zusammen gebastelt. Hoffentlich wird in 5 Tagen funktionieren, wenn alles richtig ist:
Aber die Ladezeit 360 min. vergessen... Mache nach. -
-
@andre1de sagte: Hoffentlich wird in 5 Tagen funktionieren
Es wird so nicht funktionieren.
-
@paul53 Ok. Danke! Schmeiße es weg. Arbeite mit deinem Vorschlag.
-
@andre1de sagte: Arbeite mit deinem Vorschlag.
Die nächste Aufladung erfolgt nächsten Donnerstag bei diesem Vergleich:
-
@paul53
Ich bin gerade beim Umsetzen von deinem Skript und habe eine Frage:- wird Objekt "Minuten_Ein" jeden Tag um 07:15 auf "0" gesetzt?
-
@andre1de sagte: wird Objekt "Minuten_Ein" jeden Tag um 07:15 auf "0" gesetzt?
Ja. Bei dir ist es "Zahnbürste.Ladezeit".