Astrobinding Rule Ich verstehe es nicht

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Murdock79
Beiträge: 46
Registriert: 26. Nov 2021 15:26
Answers: 0
Wohnort: Braunschweig

Astrobinding Rule Ich verstehe es nicht

Beitrag von Murdock79 »

Hallo,
ich habe OH 3 und möchte dass verschiedene Sachen eingeschaltet werden (Lampen, Rollos...) wenn die Sonne untergegangen oder aufgeht. Aber ohne eine Code zu schreiben, das klappt schonmal gar nicht bei mir. Die Anleitung von https://zukunftathome.de/aussenbeleucht ... -schalten/
habe ich nicht verstanden.

Das Astro Binding ist installiert und ich habe gelesen, dass man den Trigger wählen muss. (astro:sun:4a041c94f8:set#event)

So jetzt hänge ich an der Regel. Ich gehe also zu Rule und jetzt muss ich den when Befehl definieren.
Wie mache ich das?
Rules-> Regel erstellen, Namen vergeben das ist klar. Was stelle ich nun unter Trigger ein?
Muss ich vorher noch irgendwo das Item astro:sun:4a041c94f9:set#event irgendwie vordefinieren?
Unter When kann ich dann Item Event, Thing Event, Time Event, System Event oder Show All auswählen.
Muss ich vielleicht astro:sun:4a041c94f8:set#event als Item definieren?
Danke für eure Hilfe.

------------------------------------------------------------------------------------------------
"O Jahrhundert, o Wissenschaften!
Es ist eine Lust zu leben, wenn auch nicht in der Stille.
Die Studien blühen, die Geister regen sich.
Barbarei nimm dir einen Strick und mache dich auf Verbannung gefasst."
(Ulrich von Hutten/1515)

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von udo1toni »

Bevor Du anfängst... :) Schau mal bitte, ob Du in den Einstellungen die Position Deines openHAB Systems eingetragen hast. Wenn Du das tust, sollte in der Inbox automatisch ein Thing astro:sun:local erscheinen, welches auf Deinen Standort optimiert ist. 4a041c94f8 als ID ist einfach hässlich.
openHAB funkt nicht nachhause, auch nicht, um den Standort des Geräts zu senden (hätten wir gerne gehabt, um eine automatisch Übersicht zu erstellen, wenn, dann aber als Opt-In, aus Gründen :) und dann kann man sich die daten auch schenken...

Dann die Rule:

Im when-Bereich musst Du den Trigger auswählen. Da es sich um einen Range Event Channel handelt (den kann man nicht mit einem Item verlinken) musst Du als Triggertyp Channel auswählen. wenn Du die vorgeschlagene Änderung vornimmst, ist der korrekte Channel astro:sun:local:set#event.
Als Wert gibst Du START an.
Unter then kannst Du dann eintragen, was passieren soll.

Zur Erläuterung:
Das Astro Binding stellt zum einen Zeitpunkte bereit, in Form eines Datums mit Uhrzeit. Diese gibt es für jedes Ereignis als Start und als End Wert, außerdem gibt es eine Dauer. Der zugehörige Event Channel sendet dann jeweils zum errechneten Zeitpunkt einen Impuls für Start und einen Impuls für End.
Start und End ergibt sich daraus, was das Event per Definition ist, nämlich der Transit des Himmelskörpers über eine gedachte Linie. Sonnenaufgang: Die Sonne vollführt einen Transit über die 0° Höhenlinie, vom negativen in den positiven Bereich. Nun ist die Sonne aber kein Punkt, sondern ein Kreis. Entsprechend gibt es einen Beginn (die Sonne beginnt, die Höhenlinie zu berühren) und ein Ende (die Sonne löst sich von der Höhenlinie).
Je nach Jahreszeit findet der Transit an einer anderen Stelle des "Sinus" statt, auf dem sich die Sonne bewegt, weshalb die Dauer variiert.

Für das Event ist es erst mal unerheblich, ob man auf START oder auf END triggert, man muss sich nur bewusst sein, dass zwischen den beiden Zeitpunkten gerne mal 2 bis 8 Minuten liegen (je nach Event).

Für Rollläden verwende ich die bürgerliche Dämmerung, das ist der Transit der -6° Höhenlinie, da wird es dann gerade so dunkel, dass ich die Läden händisch schließen würde.
Außerdem kann man bei jedem Event drei Werte definieren, earliest, latest und offset. Mit earliest kann man den frühesten Zeitpunkt setzen, mit latest den spätesten Zeitpunkt, mit offset kann man eine zeitliche Verschiebung definieren.
Die Werte werden für jeden Channel getrennt eingegeben, für jedes Event gibt es drei Channel, die das betrifft, eben Start, End und RangeEvent.
Mit den werten kann man also begrenzen, wie sehr der Zeitpunkt variieren kann und zusätzlich über den Offset dafür sorgen, dass ein Event später oder auch früher ausgelöst wird, als vorgesehen, also beispielsweise gehen die Läden frühestens um 6 Uhr auf, auch wenn die bürgerliche Morgendämmerung bereits um 05:25 Uhr beginnt, außerdem öffnen sie vielleicht spätestens um 08:00 Uhr, auch wenn (im Winter) die Sonne noch nicht aufgegangen ist. Und vielleicht gehen die Läden immer 10 Minuten vor Bürgerlicher Abenddämmerung zu, weil es dann eben doch schon etwas zu dunkel ist...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Murdock79
Beiträge: 46
Registriert: 26. Nov 2021 15:26
Answers: 0
Wohnort: Braunschweig

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von Murdock79 »

Das hat wunderbar funktioniert. Vielen, vielen Dank. Das ging wirklich einfach und ich hatte da Wochen rumprobiert.

------------------------------------------------------------------------------------------------
"O Jahrhundert, o Wissenschaften!
Es ist eine Lust zu leben, wenn auch nicht in der Stille.
Die Studien blühen, die Geister regen sich.
Barbarei nimm dir einen Strick und mache dich auf Verbannung gefasst."
(Ulrich von Hutten/1515)

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von udo1toni »

Ja :) das ist einfach "gewusst wie"
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Mercur
Beiträge: 25
Registriert: 14. Aug 2021 19:37
Answers: 0
Wohnort: Ortenau

Re: Astrobinding Rule Ich verstehe es auch nicht

Beitrag von Mercur »

Hallo, hab eine einfache Astro-Regel aus OH2 übernommen:

rule "Beleuchtung ab Dämmerung"

when
Channel 'astro:sun:local:civilDusk#event' triggered START
then
logInfo("Astro", "Dämmerung Start = Beleuchtung EIN")
sendCommand(Schaltsteckdose1_Toggle, ON)
end

In den Einstellungen sind die Positionsdaten richtig eingetragen. Das Thing "Lokale Sonnendaten (astro:sun:local) ist online.
Trotzdem feuert die Rule erst 6 Stunden später (statt 18:30 um 00:30).
Wie kommts ?

Habt Ihr eine Idee ?
Openhab 3.4.4 auf Raspi 4; Bindings: Homematic, Z-Wave, Elero. Landroid, Pushover, Shelly

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von udo1toni »

Hast Du die Koordinaten über die eingebaute Karte eingegeben oder von Hand? Bist Du sicher, was die Koordinaten betrifft?
Wie ist der Rechner konfiguriert (insbesondere die Zeitzone...) Geht die Rechneruhr richtig?
Hast Du irgendwelche Dinge innerhalb des Channels konfiguriert, z.B. (versehentlich) ein Offset gesetzt?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Mercur
Beiträge: 25
Registriert: 14. Aug 2021 19:37
Answers: 0
Wohnort: Ortenau

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von Mercur »

Hallo udo1toni,
danke für deine schnelle Antwort !
Die Rechnerzeit ist die aktuelle Uhrzeit. Wird auch im Log richtig angegeben.
Die Koordinaten habe ich mit GoogleMaps nochmals geprüft. Sie stimmen überein.
Es ist kein Offset gesetzt.
-------------------------------------------------------- Jeden Tag 00:00 Uhr (Werden da die Zeitpunkte nur gespeichert ??? -------------------------
2023-03-11 00:00:31.106 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered START
2023-03-11 00:00:31.107 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered END
2023-03-11 00:00:31.108 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered START
2023-03-11 00:00:31.109 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered START
2023-03-11 00:00:31.110 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered END
2023-03-11 00:00:31.112 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:eveningNight#event triggered START
2023-03-11 00:00:31.113 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered END
2023-03-11 00:00:31.114 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:night#event triggered START
2023-03-11 00:00:31.115 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:morningNight#event triggered START
2023-03-11 00:00:31.126 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'Schaltsteckdose1_Toggle' received command ON

----------------------------------------------------------------- Kollision mit OpenWeatherMap ??? ----------------------------------------------------------
2023-03-11 20:37:57.413 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered START
2023-03-11 20:37:57.414 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:set#event triggered END
2023-03-11 20:37:57.416 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered END
2023-03-11 20:37:57.417 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered START
2023-03-11 20:37:57.418 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered END
2023-03-11 20:37:57.420 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered START
2023-03-11 20:37:57.422 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'localHours24ForecastTimestamp' changed from 2023-03-11T22:00:00.000+0100 to 2023-03-12T07:00:00.000+0100
2023-03-11 20:37:57.423 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:night#event triggered START
2023-03-11 20:37:57.424 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:eveningNight#event triggered START
2023-03-11 20:37:57.425 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered END
2023-03-11 20:37:57.426 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'localHours24Condition' changed from Bedeckt to Leichter Regen
2023-03-11 20:37:57.427 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'localHours24Temperature' changed from 2.57 °C to 5.32 °C
2023-03-11 20:37:57.428 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'localHours24WindSpeed' changed from 7.596 km/h to 15.948 km/h
2023-03-11 20:37:57.569 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'Schaltsteckdose1_Toggle' received command ON
Openhab 3.4.4 auf Raspi 4; Bindings: Homematic, Z-Wave, Elero. Landroid, Pushover, Shelly

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von udo1toni »

Das Astro Binding errechnet mit jedem Durchlauf alle Werte, Sonne und Mond betreffend, das Aktualisierungsinterval ist standardmäßig auf fünf Minuten eingestellt.

Wenn Du die Koordinaten händisch eingegeben hast: Bist Du sicher, dass Du die Reihenfolge korrekt eingehalten hast?
So sieht das log normalerweise aus:

Code: Alles auswählen

2023-03-08 05:09:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:morningNight#event triggered END
2023-03-08 05:09:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDawn#event triggered START
2023-03-08 05:09:00.001 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'SunPhaseName' changed from NIGHT to ASTRO_DAWN
2023-03-08 05:47:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDawn#event triggered END
2023-03-08 05:47:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDawn#event triggered START
2023-03-08 05:47:00.001 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'SunPhaseName' changed from ASTRO_DAWN to NAUTIC_DAWN
2023-03-08 06:24:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDawn#event triggered END
2023-03-08 06:34:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDawn#event triggered START
2023-03-08 06:57:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:rise#event triggered START
2023-03-08 07:00:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:rise#event triggered END
2023-03-08 07:00:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:daylight#event triggered START
2023-03-08 07:07:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDawn#event triggered END
2023-03-08 12:38:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:noon#event triggered START
2023-03-08 12:39:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:noon#event triggered END
2023-03-08 18:15:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:set#event triggered START
2023-03-08 18:15:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:daylight#event triggered END
2023-03-08 18:19:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:set#event triggered END
2023-03-08 18:34:00.002 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered START
2023-03-08 18:51:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered START
2023-03-08 19:06:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:civilDusk#event triggered END
2023-03-08 19:28:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered START
2023-03-08 19:28:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:nauticDusk#event triggered END
2023-03-08 19:28:00.002 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'SunPhaseName' changed from NAUTIC_DUSK to ASTRO_DUSK
2023-03-08 20:06:00.000 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:night#event triggered START
2023-03-08 20:06:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:astroDusk#event triggered END
2023-03-08 20:06:00.001 [INFO ] [openhab.event.ChannelTriggeredEvent ] - astro:sun:local:eveningNight#event triggered START
2023-03-08 20:06:00.002 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'SunPhaseName' changed from ASTRO_DUSK to NIGHT
gültig für 49.9,8.7,130 wobei die Höhe optional ist.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Mercur
Beiträge: 25
Registriert: 14. Aug 2021 19:37
Answers: 0
Wohnort: Ortenau

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von Mercur »

Die Position wurde in den Regionalen Einstellungen in der Map markiert. (48.55xx,7.96xx)
Die Koordinaten per copy and paste in GoogleMaps eingetragen. Stimmen überein.
Also kommt ein Übertragungsfehler oder falsche Reihenfolge ! leider ! :( nicht in Betracht.

Aktualisierung alle 300 sek. (Default)
Openhab 3.4.4 auf Raspi 4; Bindings: Homematic, Z-Wave, Elero. Landroid, Pushover, Shelly

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Astrobinding Rule Ich verstehe es nicht

Beitrag von udo1toni »

Kannst Du mal die Code-Ansicht des Things zeigen? (gerne ohne genaue Koordinaten) Bitte hier als Code einfügen.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten