Rolläden zufällig unter Berücksichtigung des Sonnenaufgang schalten.

Begonnen von Fredi69, 14 Februar 2017, 07:28:20

Vorheriges Thema - Nächstes Thema

Fredi69

Ich möchte gerne mein Rolläden in einem Bereich von 30 Min zufällig nach Sonnenaufgang hochfahren. Liegt der Sonnenaufgang aber vor 6:30, soll zufällig im Zeitraum zwischen 6:30 und 7:30 hochgefahren werden. Hat einer eine Idee wie man das umsetzen kann?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

bartman121

Hallo Fredi,

es gibt verschiedene Möglichkeiten den Sonnenaufgang zu ermitteln, eine Möglichkeit wäre hier:
https://wiki.fhem.de/wiki/SUNRISE_EL

Damit würde ich einen AT triggern (am besten 2 Stunden vorher) ....

in diesem AT versteckst du dann die eigentlich intelligenz:
https://forum.fhem.de/index.php?topic=41670.0

dort kannst du auch deine Zusatzbedingung verbauen:
Zitat
Liegt der Sonnenaufgang aber vor 6:30, soll zufällig im Zeitraum zwischen 6:30 und 7:30 hochgefahren werden.

Viel Erfolg

Cluni

Morgen!

Das habe ich auch so in etwa vor. Bisher habe ich aber noch nicht die konkrete Lösung. Aber ich denke, dass das so für den Morgen (und dann analog dazu für den Abend) klappen sollte:
1.) Die Anfangs- und Endzeit lasse ich (in einem definierten Bereich) per Zufallszeit ermitteln. Die Ermittlung der jeweiligen Zeit könnte man z.B. um Mitternacht machen. Ein Ansatz könnte dieser hier sein: https://forum.fhem.de/index.php?topic=29438.0
2.) Die ermittelten Zeiten kann man dann als früheste und späteste Schaltzeit in der Funktion sunrise("REAL",random(900),[Anfangszeit],[Endzeit]) benutzen (natürlich ist hier diese Angabe nur ein Anhaltspunkt und programmiertechnisch nicht korrekt notiert). Damit wäre der Start des Rollladen zum Sonnenaufgang +/- einer Zufallszeit von maximal 900 Sekunden, bzw. frühestens/spätestens zu den um Mitternacht berechneten Zufallszeiten.

Wie man das jetzt sauber in eine Perl-Funktion hinein packt, muss ich noch schauen. Außerdem muss die Berechnung für die jeweiligen Rollläden wie schon gesagt irgendwann vor der möglichen Startzeit angeworfen werden.

Vielleicht hilft dir das ja schon ein Stück weiter. Wenn du eine funktionierende Lösung hast, dann wäre es natürlich nett, wenn du sie hier allen mitteilst. ;)

Was ich sonst noch vor habe: Ich versehe meine Rollladen-Aktoren mit zusätzlichen Userattributen:
attr [Aktor] userattr Automatik_hoch:aus,Zeit,Astro Automatik_runter:aus,Zeit,Astro Automatik_hoch_Position:Auf,Luft Himmelsrichtung:N,O,S,W Auto_Abschattung:ja,nein,verspaetet Zeit_hoch_frueh Zeit_hoch_spaet Zeit_hoch_WE_Urlaub Zeit_runter_frueh Zeit_runter_spaet

Ob diese zusätzlichen Attribute schon vollständig sind oder noch geändert werden, muss ich mir noch überlegen. Diese Dinge sollen in die Berechnungen einfließen. So habe ich die Zeiten direkt bei meinem Aktor - so finde ich das übersichtlicher, als wenn das irgendwo an anderer Stelle in Fhem geschrieben steht. Die Himmelsrichtung möchte ich zusammen mit Informationen des aktuellen Wetters (Twilight, aktuelle Temperatur, ...) für eine automatische Abschattung nutzen. Über die Auswahl der jeweiligen Automatik möchte ich die Sache noch etwas flexibler machen. Ob das alles so einfach umzusetzen ist, wage ich zu bezweifeln. Aber ich werde es versuchen... :D

Gruß Bernd

Cluni

Ach - wo wir hier vom Thema sprechen - kann mir jemand verraten, wie ich ein userattr so definieren kann, dass eine Zeiteingabe für dieses Attribut verlangt wird? Also etwas in der Richtung:
attr [Aktor] userattr Zeit_hoch:{HH:MM:SS}
Irgendwie finde ich das nirgendwo...

Fredi69

Wie ich den Sonnenaufgang ermittele ist mir klar. So eine Steuerung läuft bereits. Wenn die Sonne aber bald wieder z.B. um 5:30 aufgeht nützt mir das nichts. Hat sowas noch keiner umgesetzt?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Cluni

Sag mal, hast du überhaupt gelesen? Warum mache ich mir überhaupt die Arbeit zu antworten, wenn du eh nicht liest?


Gesendet von iPhone mit Tapatalk

Dietmar63

Ich habe eine fertige Funktion dafür uns schalte damit Stehlampen
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Fredi69

Zitat von: Cluni am 15 Februar 2017, 05:02:50
Sag mal, hast du überhaupt gelesen? Warum mache ich mir überhaupt die Arbeit zu antworten, wenn du eh nicht liest?

Ich habe sehr wohl gelesen was Du geschrieben hast, vielen Dank dafür.
Du hast aber geschrieben
ZitatBisher habe ich aber noch nicht die konkrete Lösung.
Und ich fragte jetzt ob es schon jemand konkret gelöst hat.
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Fredi69

Zitat von: Dietmar63 am 15 Februar 2017, 06:49:19
Ich habe eine fertige Funktion dafür uns schalte damit Stehlampen
Du meinst das Modul RandomTimer, welches ich auch bereits für Lampen nutze?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Cluni

Guten morgen,

du hast aber geschrieben:
Zitat von: Fredi69 am 14 Februar 2017, 23:03:24
Wenn die Sonne aber bald wieder z.B. um 5:30 aufgeht nützt mir das nichts.

Aber ich habe dir den Weg doch aufgezeigt, wie es zu machen ist:
1.) Alles muss natürlich VOR der Schaltzeit passieren und muss demnach z.B. immer um Mitternacht berechnet werden.
2.) Zufallszeit für deinen Fall z.B. zwischen 6:30 und 7:30 berechnen lassen.
3.) Diese Zeit in die Funktion für die Berechnung des Sonnenaufgangs als früheste Öffnungszeit einsetzen.
4.) Mit dem Ergebnis dieser Berechnung die Öffnung triggern.

Willst du etwa direkt ein fertiges Ergebnis haben?

Gruß, Bernd

Fredi69

Zitat von: Cluni am 15 Februar 2017, 08:54:26
Guten morgen,

du hast aber geschrieben:
Aber ich habe dir den Weg doch aufgezeigt, wie es zu machen ist:
1.) Alles muss natürlich VOR der Schaltzeit passieren und muss demnach z.B. immer um Mitternacht berechnet werden.
2.) Zufallszeit für deinen Fall zwischen 6:30 und 7:30 berechnen lassen.
3.) Diese Zeit in die Funktion für die Berechnung des Sonnenaufgangs als früheste Öffnungszeit einsetzen.
4.) Mit dem Ergebnis dieser Berechnung die Öffnung triggern.

Willst du etwa direkt ein fertiges Ergebnis haben?

Gruß, Bernd
Danke, der Weg dorthin war mir klar und läuft zu 80% schon so.
Konkret habe ich z.B. aber keinen Ansatz wie man eine Zufallszeit zwischen 6:30 Uhr und 7:30 Uhr berechnet.
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Cluni


Cluni

Weil ich ja ein lieber und hilfsbereiter Mensch bin:

sunrise_abs("REAL",1200-rand(2400),randomtime("06,30,60"),randomtime("08,30,60"))

Schaltmoment ist somit frühestens um 6:30Uhr und spätestens um 9:30Uhr. Dabei wird zufallsmäßig entweder:
1. bei Sonnenaufgang nach 6:30Uhr und vor 9:30Uhr: +/-20min [1200-rand(2400)] um dem Sonnenaufgang herum geschaltet.
2. bei Sonnenaufgang vor 6:30Uhr+Zufallszeit von 60min: zwischen 6:30Uhr und 7:30Uhr geschaltet.
3. bei Sonnenaufgang nach 8:30Uhr+Zufallszeit von 60min: zwischen 8:30Uhr und 9:30Uhr geschaltet.

Reicht dir das? Ist das zufällig genug?

Fredi69

Zitat von: Cluni am 15 Februar 2017, 10:57:28
Weil ich ja ein lieber und hilfsbereiter Mensch bin:

sunrise_abs("REAL",1200-rand(2400),randomtime("06,30,60"),randomtime("08,30,60"))
....
Reicht dir das? Ist das zufällig genug?
Super, herzlichen Dank.
Ich habe viel zu kompliziert gedacht, so ist es extrem schlank und macht mit wenig Code genau was es soll.

Den Unterton ignoriere ich  ;)
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Cluni

Ist ja nicht schlimm, manchmal sieht man halt den Wald vor lauter Bäumen nicht.... [emoji39]

Schön, dass es dir geholfen hat! [emoji1360]

Gesendet von iPhone mit Tapatalk