So, nachdem so einiges diskutiert wurde und da Anfänger öfters nach einer verständlichen Anleitung für eine einfache Rolladensteuerung fragen. (Danke noch mal an xell66 und Sammy, die da noch eine Optimierungsidee hatten)
1.) Was wird benötigt? Das Addon CuXD. CuxD Installation
2.) Im CuXD müsst ihr nun einen Timer erstellen
2.1) CuXD findet ihr nach der Installation in der Systemsteuerung 2.2) Hier auf Geräte gehen 2.3) Hier erstellt ihr ein Gerät Typ 28 (Timer) Der Vorteil von CuXD ist, dass die Timer unabhängig von der CCU selber weiter laufen. Die Zeiten gehen bei einem Stromausfall nicht verloren (so wie Systemvariablen). Außerdem läuft Dank Uwe (dem CuXD Entwickler) das System stabil und entlastet die CCU und vermeidet so manch unnötiges Problem.
2.4) Den Namen könnt ihr frei vergeben. Dieser wird nachher in die CCU2 übernommen 3.) Nun benennt ihr in der Gerätesteuerung zwei Timer mit Rollos hoch / Rollos runter (damit die schön auseinander gehalten werden können) 4.) Nun brauchen wir noch einen Timer, der immer um eine bestimmte Uhrzeit ausgelöst wird. Ich empfehle 00:00:01. Benennt den einfach Täglich Wenn ihr die Alternative von Xell66 nutzt (siehe unten), dann überspringt Punkt 4 und 5 und ersetzt diese durch die Alternative 5.) Es wird ein Programm angelegt, was täglich läuft und die Sonnenaufgangszeit -x Sekunden und Aufgang +x Minuten in die entsprechenden Timer schreibt. Ich habe das via Skript gelöst.
5.1) Programm erstellen Der CCU-Status ist kein Muss. Wer das schon hat weiß warum der da drin ist. Für den Rest: Hier wird das Progamm nicht ausgeführt, wenn die CCU2 gerade neu gestartet wurde. Diese Zeile verhindert das. Hier der Link zu diesem Thema.
Es muss nur der Timer aus 4 als Auslöser eingetragen werden. Wichtig AKTUALISIERUNG .
Tipp: Sollte der Timer nicht auslösen kann auch TIMER GET kleiner gleich 0 oder EVENT gewählt werden.
5.2) unten wählt ihr Skript mit 1 Sekunde Verzögerung aus und hinterlegt das Skript hier:
Code: Alles auswählen
! Sonnenaufgang ermitteln
! ==================
dom.GetObject("CUxD.CUX2800001:X.TIMER_SET").State((system.SunriseTime("%F %X").ToTime()-1800).Format("%H:%M:%S"));
! Sonnenuntergang ermitteln
! ====================
dom.GetObject("CUxD.CUX2800001:Y.TIMER_SET").State((system.SunsetTime("%F %X").ToTime()+1800).Format("%H:%M:%S"));
Nun wird der aktuelle Sonnenaufgang und Untergang aus dem System ausgelesen und es werden 1800 Sekunden abgezogen bzw. addiert. D.h. die Verzögerung könnt ihr selber anpassen.
Es kann auch eine Systemvariable für die Verzögerung anlegt werden und diese anstelle von der festen Zeit (1800) in das Skirpt eingebaut werden
Bsp:
dom.GetObject("CUxD.CUX2800001:X.TIMER_SET").State((system.SunriseTime("%F %X").ToTime()-(dom.GetObject("SV_Verzögerung_Sonnenaufgang").State())).Format("%H:%M:%S"));
Das würde ich aber erst machen, wenn alles zufriedenstellend läuft
6.) Nun erstellt ihr ein Programm für Rollo hoch und eins für Rollo runter was beim Auslösen der Timer (siehe Punkt 3) ausgeführt wird. Wichtig auch hier: Timer bei AKTUALISIERUNG und ihr müsst die entsprechenden Timer auswählen.
Hinweis: Sobald ihr das Tägliche Programm einmal habt laufen lassen (was es automatisch bei Erstellung sowieso von alleine tut), ist das Programm für den nächsten Sonnenauf- bzw. Untergang einsatzbereit.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Alternative zu Punkt 4+5 ohne Skript/CuXD mit CCU interner Zeitsteuerung:
Hier wird der Timer für den Sonnenuntergang beim Erreichen der Astrofunktion Nacht auf 84600 Sekunden (60 Sekunden * 60 Minuten mal 23,5 Stunden) gesetzt. D.h am nächsten Tag löst er eine halbe Stunde vor Sonnenuntergang aus.
Nach dem selben System erstellt ihr ein Programm für den vorgezogenen Sonnenaufgangs-Timer.
Wichtig: Da der Timer bei dieser Art erst befüllt wird, wenn das Ereignis (Sonnenaufgang oder -untergang) erfolgt, wird das Rolladen Programm erst ab dem nächsten Tag gestartet). Die "Stoppuhr" läuft ja erst ab diesem Zeitpunkt los. Also nicht wundern, wenn die Programme nach Erstellung nicht direkt am Morgen/Abend laufen. Es ist alles gut
Bei der Alternativ Variante zu beachten (bei der CuXD Variante ist das wohl mit der Version 1.5 behoben):
Das Prinzip kommt derzeit nur an zwei Tagen im Jahr ins Straucheln (Umstellung auf Sommerzeit und zurück). Durch den festen Bezug auf eine automatisch intern errechnete Uhrzeit ergibt sich an diesen Tagen ebenso eine Verschiebung um +- eine Stunde.