Sunset in Zusammenspiel mit Lichtmessung Wetterstation

Begonnen von superverbleit, 24 Juli 2019, 22:12:05

Vorheriges Thema - Nächstes Thema

superverbleit

Hallo Zusammen,

ich würde gerne die Sunset Funktion nutzen, um abends meine Rollladen und Jalousien runter zu lassen.
Das funktioniert auch einwandfrei.
Leider kommt es häufig vor, das schon Sonnenuntergang gemeldet wird, obwohl es draussen noch einigermaßen hell ist.

Deshalb würde ich gerne die Sunset Funktion mit einer Lichtmessung der Wetterstation koppeln. Leider funktioniert das nicht richtig. Kann mir hier einer auf die Sprünge helfen.
Hier mein bisheriger Code:
*{sunset("REAL",0,"17:30","22:30")} and (Aussenbereich.DachWest.Lux < 15)  { 
  fhem("set UG.Abstell.Rollladen Ab");
  fhem("define SunsetAction1 at +00:00:30 set UG.Hobby.RollladenLinks Ab");
  fhem("define SunsetAction2 at +00:01:00 set UG.Hobby.RollladenRechts Ab");
  fhem("define SunsetAction3 at +00:01:30 set EG.Buero.Rollladen Ab");
  ...


Vielen Dank schon mal.

Grüße superverbleit

herrmannj

ja. Wir wissen allerdings nicht was nicht funktioniert und Deine Infos (code) sind dürftig, aber:

ich vermute mal ein "at". Und so wie das geschrieben ist passiert folgendes. Wenn zum Zeitpunkt des Sunsets die Helligkeit unter 15Lux ist dann fahren die Rollläden runter ("and" Verknüpfung). Wohl eher selten, oder ? ;)

Warum triggerst Du nicht _nur_ auf die Helligkeit ?

amenomade

Das? Ein "at"?? Neeee... So sieht ein "at" aus:
Zitatdefine <name> at [<timespec>|<datespec>] <command>
https://forum.fhem.de/index.php/topic,102522.msg960957.html#msg960957
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

herrmannj

naja. man weiß es ja nicht. ... Aber so beim genaueren hinschauen - hast Recht. :) Unabhängig davon wird das "and" wohl im Sommer trotzdem eher selten wahr, Frage an te bleibt also

amenomade

#4
Ahja... und
{
  fhem("set UG.Abstell.Rollladen Ab");
  fhem("define SunsetAction1 at +00:00:30 set UG.Hobby.RollladenLinks Ab");
  fhem("define SunsetAction2 at +00:01:00 set UG.Hobby.RollladenRechts Ab");
  fhem("define SunsetAction3 at +00:01:30 set EG.Buero.Rollladen Ab");}

kann man auch so schreiben:
set UG.Abstell.Rollladen Ab;; sleep 30;;set UG.Hobby.RollladenLinks Ab;; sleep 30;;set UG.Hobby.RollladenRechts Ab;;sleep 30;;set EG.Buero.Rollladen Ab
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

superverbleit

Hallo,

das Problem habt ihr genau richtig erkannt.
Zum Zeitpunkt des Sonnenuntergangs ist die Lichtmessung normalerweise nie unter 15 lux.
Deshalb passiert in meinem Konstrukt nichts.

Natürlich könnte ich nur die Lichtmessung nehmen, ich würde aber gerne zur Sicherheit den Sonnenuntergang dazu nehmen.

Gibt es eine Anweisung, die aktiv wartet, bis beide Bedingungen (Sonnenuntergang und Lichtmessung) wahr sind und dann erst meine Rollladen runterfährt?

Hier noch der Rest des Codes, es ist ein at, sorry.

define RollladenAb at *{sunset(0,"17:30","22:00")} and (Lichtmessung < 15) {

rabehd

#6
https://forum.fhem.de/index.php/topic,102522.msg960957.html#msg960957
Da wird eins der Probleme schon behandelt....
Auch funktionierende Lösungen kann man hinterfragen.

amenomade

Das musst Du anders lösen, z.B. mit einem DOIF
define RollladenAb DOIF ([{sunset(0,"17:30","22:00")}-03:00] and Lichtmessung < 15)
   (set UG.Abstell.Rollladen Ab)
   (set UG.Hobby.RollladenLinks Ab)
   (set UG.Hobby.RollladenRechts Ab)
   (set EG.Buero.Rollladen Ab)
attr RollladenAb wait 0:30:30:30
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

herrmannj

#8
zuerst steht ja mal die Frage des gewünschten Verhaltens:

der Rolladen geht runter wenn:
die Sonne untergeht (Zeitpunkt) _und_ die Helligkeit unter 15 Lux ist (doof)
die Sonne bereits untergegangen ist (Zustand) _und_ die Helligkeit unter 15 Lux ist. (hmm...)
die Sonne untergangen ist _oder_ die Helligkeit unter 15 Lux ist (whatever comes first)
...

Warum soll den sunset überhaupt mit den LUX gekoppelt werden ? Soll es vielleicht sowas werden:
wenn die Helligkeit unter 15 Lux ist, spätestens jedoch um 22:00?
wenn die Helligkeit unter 15 Lux ist, spätestens jedoch wenn die Sonne -6° unter dem Horizont ist? (ähnlich und adaptiv zur Jahreszeit)



amenomade

Also... die Frage hatte ich auch.
Ich habe
Zitatbis beide Bedingungen (Sonnenuntergang und Lichtmessung) wahr sind und dann erst meine Rollladen runterfährt?
so interpretiert:
Zitatdie Sonne bereits untergegangen ist (Zustand) _und_ die Helligkeit unter 15 Lux ist. (hmm...)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

rabehd

Anforderungsinterpretation:
Wenn die Helligkeit unter 15 und die Sonne heute schon untergegangen ist

Könnte es sein.
Für mich ein nortify/DOIF mit Trigger Helligkeit und Prüfung auf Zeitpunkt.
Auch funktionierende Lösungen kann man hinterfragen.

herrmannj

#11
möglich. Aber er schreibt "zur Sicherheit". Das könnte also auch dies sein:

Zitatwenn die Helligkeit unter 15 Lux ist, spätestens jedoch um 22:00?
wenn die Helligkeit unter 15 Lux ist, spätestens jedoch wenn die Sonne -6° unter dem Horizont ist? (ähnlich und adaptiv zur Jahreszeit)

Sonne bereits untergegangen _und_ Helligkeit unter 15Lux führt im Zweifel ja höchstens dazu dass die Fenster im Winter bei echt miesem Wetter (tm)* auch _vor_ sunset offen bleiben. (hmmm... )

*Sonne noch 'oben' _und_ weniger als 15Lux.. da ist schon was 'sehr seltenes' los ..

rabehd

Zitatdie Fenster im Winter bei echt miesem Wetter (tm)* auch _vor_ sunset offen bleiben
Wir wissen nicht ob er das so will. ;)
Manche Leute wollen kein schlechtes Wetter sehen, andere finden es schön aus der !warmen Stube" rauszuschauen.
Auch funktionierende Lösungen kann man hinterfragen.

herrmannj

es steht mir auch fern das zu beurteilen. Es ist mir wichtig zu hinterfragen ob dies so das Ziel ist damit der code auch macht was er soll ..

rabehd

geht mir auch so.
Woran scheitern die meisten IT-Projekte? An ungenügenden, unklar formulierten Anforderungen. :(
Auch funktionierende Lösungen kann man hinterfragen.