derzeit stehe ich vor der Frage wie ich die Rolladen bei Sonnenaufgang automatisch herauffahren lassen kann.
Meine erste Idee regelmäßig nachts ein Event laufen zu lassen, dass ein einmaliges Event für den Zeitpunkt des Sonnenaufgangs erstellt, war nicht erfolgreich:
Das Event sollte also den Zeitpunkt des Sonnenaufgangs über OpenWeatherMap (ID 902) auslesen und ein entsprechendes einmaliges Event erstellen, das dann wiederum ein Flag setzt.
Hat sich bei diesem Ansatz lediglich ein kleiner Fehler eingeschlichen oder bin ich vollkommen auf dem Holzweg. Eventuell geht es aber auch viel simpler…
Für Hinweise zur Ergreifung des (potentiellen) Fehlers, wäre ich sehr dankbar.
Vielleicht habe ich Dein Problem nicht ganz verstanden, aber meiner Meinung nach machst Du das zu kompliziert.
Ich starte nachts ebenfalls ein Skript, das bei allen Rollladen abhängig von Sonnenaufgang/untergang (und ein paar anderen Parametern) je ein Event für das Herauffahren und Herunterfahren setzt. Ein extra Flag ist hier nicht nötig.
Nebenbei bemerkt werden Sonnenaufgang/-untergang auch bereits von PHP bereitgestellt: http://php.net/manual/de/function.date-sun-info.php
den Flag benötige ich, weil ich die Rolladen nicht einfach runterfahren lassen möchte, sondern von weiteren Faktoren abhängig mache.
Du lässt nachts also ein Script laufen und rufst addEvent im Script statt direkt über EVENTMETHOD auf. Das ist in der Tat eine Lösung. Danke!
@trilu: Node-blue wollte ich nach Möglichkeit eigentlich umgehen (als alter Coder…), aber der Timer ist ja wirklich genial. Ich dachte node-blue wäre mehr oder weniger ein Wrapper für die RPC-Funktionen, aber da steckt ja viel mehr dahinter!
Hast du einen Screenshot wie du das zusammengebaut hast? Mir fehlt noch ein wenig das Verständnis wie die Verbindungen zusammengehören.
node blue ist wirklich klasse für sowas - bin eigentlich auch mehr am schreiben als klicken…
Garden_Deco ist nur eine variable als enabler für die Zeitschaltung. true heisst, der Timer is aktiv, bei false wirds ignoriert…
“On” habe ich mit sunset und “off” mit sunrise verknüpft. Heute abend mal schauen ob das Flag korrekt gesetzt wird. Das Steuerelement setzt auf OpenWeatherMap auf, auch gut zu wissen.
Das EN vorne ist standardmäßig aktiviert. Nur falls ein false dort angelegt wird, wird dieses von dem timer-Knoten gespeichert und ist auch nach dem Löschen des Einganges noch gesetzt bis wieder ein true angelegt wird. Solange aber nie etwas am Eingang verbunden war, ist alles gut.
Könnte man z. B. von 6:00 Uhr bis 22:00Uhr den enable Eingang auf true setzen?
Wenn dann im Timer sunrise und sunset gesetzt ist, dann würden die Rollos bei Sonnenaufgang, nicht aber vor 6:00 Uhr aufgehen und bei Sonnenuntergang, spätestens aber um 22:00 Uhr untergehen.
Wenn man einen Timer hat, der Wochentags (Mo-Fr) von 6:00-22:00 Uhr an ist und am Wochenende (Sa-So) von 7:30-22:00 Uhr, dann könnte man Wochentag und Wochenende unterschiedliche Zeiten vorgeben.
Wie macht man das aber zusätzlich mit Urlaub und Feiertag aus einem Kalender?
Klar kann man das .
Ich mache das ähnlich mit zwei Timern. Einem für den Sonnenaufgang und einem für den Sonnenuntergang. Bei Sonnenaufgang wird der eine True und 90 Minuten später false. Ausgewertet werden dann mit einem Switch die Flanken. Bei fallender Flanke geht der Rolladen spätestens hoch. Ansonsten eben, wenn während er True liefert ein Bewegungsereignis in der Wohnung ausgelöst wird (jemand ist wach und es ist nicht mehr mitten in der Nacht).
Die Berücksichtigung eines Kalenders ist leider noch nicht implementiert.
Da sich nun allerdings auch Node-Red-Knoten installieren lassen, dürfte sich da bestimmt etwas finden. node-red-contrib-ical-events
Wenn es nicht ganz so genau sein muss, kann man die Zeiten auch berechnen. Geht bestimmt auch zu scripten.
Mache ich auf einem ESP schon jahrelang so …