Twilight
Twilight | |
---|---|
Zweck / Funktion | |
Virtuelles Gerät zur Berechnung der Dämmerungszustände für eine gegebene Position | |
Allgemein | |
Typ | Hilfsmodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Unterstützende Dienste/Wettermodule |
Modulname | 59_Twilight.pm |
Ersteller | Beta-User (Forum /Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Twilight ist ein Hilfsmodul, das für eine über Koordinaten spezifizierte Position diverse Dämmerungszustände, Zeiten und die Helligkeit berechnet und als Readings bereitstellt.
Voraussetzungen
Keine.
Da die Yahoo Weather API zum 03.01.2019 abgeschaltet wurde, kann Twilight aktuell keine Wetterdaten beziehen!
Das Modul wird gerade (09/2020) an diese geänderten Bedingungen angepasst, die Diskussion über diese Anpassungen findet in diesem Forenthread statt.
Anwendung
Define
define <name> Twilight [<latitude> <longitude> [<indoor_horizon> [<Weather_Position>]]]
Die Bedeutung der Parameter:
- latitude / longitude
- Geokoordinaten, für die die Werte berechnet werden sollen. Falls diese nicht angegeben sind, werden die Werte aus global verwendet. Falls auch dort keine Angaben zu finden sind, wird wie in global als Position Frankfurt/Main verwendet.
- indoor_horizon
- Virtueller Horizont
- Weather_Position
- Yahoo Wetter-ID für den gewünschten Standort; der eingegebene Wert wird als "internal value" WEATHER gespeichert (funktioniert ab Februar 2019 nicht mehr; siehe Hinweis am Beginn der Seite)
Attribute
Readings
Eine Auswahl der Readings, die das angelegte Twilight-Objekt enthält:
- sr*
- verschiedene Werte für den Sonnenaufgang ("sunrise"): astronomisch, bürgerlich, nautisch, ...
- ss*
- verschiedene Werte für den Sonnenuntergang ("sunset"): astronomisch, bürgerlich, nautisch, ...
- nextEvent
- Name des Ereignisses, das als nächstes eintreten wird (z. B. "ss_weather")
- nextEventTime
- Zeitpunkt, zu dem das (unter nextEvent benannte) nächste Ereignis eintreten wird
- light
- ein errechneter Helligkeitswert mit den folgenden möglichen Werten (zwischen 0 und 6):
- 0
- Völlige Dunkelheit; relativer Sonnenstand zum Horizont: -18°
- 1
- astronomische Dämmerung; relativer Sonnenstand zum Horizont: zwischen -12° und -18°
- 2
- nautische Dämmerung; relativer Sonnenstand zum Horizont: zwischen -6° und -12°
- 3
- bürgerliche Dämmerung; relativer Sonnenstand zum Horizont: zwischen 0° und -6°
- 4
- "indoor"-Dämmerung; Sonnenstand zwischen indoor_horizon (sofern der Wert ungleich Null ist) und 0°
- 5
- "Wetter"-Dämmerung; Sonnenstand zwischen indoor_horizon und einem virtuellen Wetter-Horizont (abhängig von der Angabe einer Weather_position)
- 6
- "normales" Tageslicht
- azimuth
- Azimut; Horizontalwinkel des Sonnenstands (0°=Norden, 180°=Süden, usw.)
- elevation
- Höhe des Sonnenstands
- twilight
- Dämmerungswert, errechnet aus der Höhe des Sonnenstands. Der Wert geht von 0% bis 100% bei einem Sonnenstand zwischen -12° und 6° (also während der Dämmerungsphase).
Funktionen
twilight($twilight, $reading, $min, $max)
Funktion im Modul, um bei der Dämmerungsberechnung Minimal-/Maximalwerte ("frühestens/spätestens") spezifizieren und das Ergebnis beispielsweise in einem at
weiterverarbeiten zu können.
Anwendungsbeispiel(e)
Kurzes Beispiel
Anwendung der Funktion twilight zur Zeitsteuerung:
define morgens at *{twilight("myTL","sr_indoor","7:30","9:00")} set Rollo on
Dieses at wird morgens zum Zeitpunkt sr_indoor des Twilight Objekts myTL - aber frühestens um 7:30 und spätestens um 9:00 Uhr - dem Gerät Rollo einen on-Befehl schicken. Das Objekt myTL muss natürlich vorher mit (beispielsweise)
define myTL Twilight 44.444444 8.888888 ...
definiert worden sein.
Ausführliches Beispiel
Twilight Anwendungsbeispiel mit detaillierten Erläuterungen