FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Shortie am 14 Februar 2021, 22:02:29

Titel: reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Shortie am 14 Februar 2021, 22:02:29
Ich versuche aktuell in einer Structure, welches alle meine Wohnzimmer Jalousien enthält, ein Reading zu setzen das ich mit dann im stateFormat der Structure ausgeben möchte. Das schreiben und ausgeben funktioniert auch schon soweit. Allerdings bekomme ich es nicht hin die korrekte Zeit zu setzen.

Definition des at:

defmod WohnzimmerJalousieRunter at *{sunset(0,"15:00","22:00")} set Structure_Wohnzimmer_Jalousien position 100;; setreading Structure_Wohnzimmer_Jalousien nextDown {(sunset(0,"15:00","22:00"))}


Das at erhält so die richtige Zeit und zeigt diese auch an und steuert die Jalousien korrekt an. Das Reading erhalt aber leider immer 24h zuviel, also z.b. 42:05:14, ziehe ich 24h ab passt die Zeit wieder mit der Anzeige im at überein. Nutze ich beim setreading sunset_abs zeigt er mir die heutige sunset Zeit an, auch wenn diese schon vorbei ist. Also aktuell 18:03:27. Laut der Zeit die im at gesetzt wird, müsste es aber in beiden Fällen 18:05:14 sein.

Laut der Commandref https://fhem.de/commandref_DE.html#SUNRISE_EL könnte das verhalten bei sunset sogar korrekt sein, wobei ich hier den Sinn nicht verstehe diese 24h zu addieren. Dann müsste aber sunset_abs doch die richtige Zeit liefern, da ja der aktuelle sunset vorbei ist und der nächste ja der morgige wäre.
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Otto123 am 14 Februar 2021, 22:25:25
Hi,

ich sehe jetzt keine Frage in deinem Post - gibt es eine?

sunset und sunrise liefert immer die Zeit für den nächsten Sonnenauf- Sonnenuntergang.
Die _abs Funktionen liefern den Zeitpunkt für den aktuellen Tag.
Klar das sich die Zeiten für heute und morgen unterscheiden?

Gruß Otto
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: rudolfkoenig am 15 Februar 2021, 08:57:44
Zitatwobei ich hier den Sinn nicht verstehe diese 24h zu addieren.
Versuch mal testweise sunset/sunrise durch sunset_abs/sunrise_abs zu ersetzen, das sind Zeiten die man "versteht"

Ergebnis: In der Fruehling gehen die Rolladen zweimal runter, im Herbst zweimal hoch.
Solange man die Rolladen komplett runter/hochfaehrt, faellt das nicht auf, sonst schon.

Wenn das Senden des on/off Signals die Fahrt stoppt (wie bei FS20), dann gibt es andere Effekte, wie "bisschen" geoeffnete/geschlossene Rolladen.
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Shortie am 15 Februar 2021, 21:54:00
Mein Problem ist, das das at mit sunset/sunrise entsprechend funktioniert. Das Reading das ich über den gleichen Aufruf an sunset/sunrise sende nicht. In beiden Fällen mache ich dies mit {(sunset(0,"15:00","22:00"))} siehe auch das define aus dem ersten Post.
Nutze ich sunset/sunrise bekomme ich z.B. 42:05:14 im Reading, nutze ich sunset_abs/sunrise_abs erhalte ich die Zeit für den aktuellen Tag, auch wenn der sunrise/sunset bereits in der Vergangenheit liegt und nicht für den nächsten.
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Otto123 am 15 Februar 2021, 22:32:03
Wenn Du also den absoluten Zeitpunkt für morgen wissen willst:
{sunrise_abs_dat(time() + 1*86400)}

Ich behaupte die deutsche Doku ist falsch! Und meine Annahme von #1 als Werte umgesetzt:
{sunrise} 30:49:05 (morgen)
{sunrise_abs} 06:50:54 (heute)
{sunrise_abs_dat(time() + 1*86400)} 06:49:05 (morgen)
{sunrise_abs_dat(time() + 0*86400)} 06:50:54 (heute)

bestätigt die englische Doku

Zitatsunrise_abs() and sunset_abs() return the absolute time of the corresponding event today (no 24 hours added).
sunrise_abs() - absolute Zeit des nächsten Sonnenaufgangs (ohne Stundenzuschlag)

Gruß Otto
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: rudolfkoenig am 15 Februar 2021, 22:37:13
Die Uebersetzung ist nicht auf meinem Mist gewachsen :)
Bin nur dafuer verantwortlich :(
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Otto123 am 15 Februar 2021, 22:51:24
@Rudi ich setze mich morgen mal hin und schreibe Patches. Ich habe woanders noch Typos gefunden ;)
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Christoph Morrison am 16 Februar 2021, 00:22:17
Zitat von: rudolfkoenig am 15 Februar 2021, 22:37:13
Die Uebersetzung ist nicht auf meinem Mist gewachsen :)

Hat jemand gerufen?
Titel: Antw:reading mit sunrise/sunset in at setzen, Uhrzeit ist 24h zu weit in der Zukunft
Beitrag von: Shortie am 16 Februar 2021, 18:52:57
Danke für die Hilfe und auch den Hinweis auf die englische Commandref. Jetzt verstehe ich auch den Unterschied der verschiedenen Funktionen und mit dem Vorschlag von Otto123 setzt er jetzt das Reading auf die richtige Uhrzeit.