Astro-Bindung minimal einrichten (Anfänger)
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo zusammen.
Ich bin baff über die Menge an Tipps. Am Wochenende werde ich die nächsten Schritte versuchen und mich melden. Vorab schon einmal ein dickes Danke schön.
Joska
Ich bin baff über die Menge an Tipps. Am Wochenende werde ich die nächsten Schritte versuchen und mich melden. Vorab schon einmal ein dickes Danke schön.
Joska
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo Peterpeter-pan hat geschrieben: ↑16. Jan 2019 22:00
Das Binding hast du ja schon installiert, wie du das mit den Things machen wilsst bleibt dir überlassen, aber vielleicht kannst ja aus meinen Textdateien das eine oder andere herauslesen und bei den Items brauchst du ja auch nicht alle auf einmal.
Wenn du mit dem allen (einigermassen) klar kommst, kann ich dir auch noch ein paar Rules zur Verfügung stellen.
Jetzt erst mal viel Spass beim Basteln.
Gruss - Peter
Ich habe erst einmal deinen Code in entsprechende Dateien im Openhab2-Verzeichnis iin den jeweiligen Unzerordnern erzeugt.
Prompt habe ich unter PaperUI einige Informationen zu Sonne und Mond. Noch ist mir nicht klar, wie die da hin kommen, aber ich werde weiter "graben"

Dabei ist mir aufgefallen, dass dort u.a, folgendes steht:
Entfernung
radio_button_unchecked
Datum aktueller Umlauf
19:08
trending_up
Entfernung zum Mond
358400.6 km
Die Information Datum aktueller Umlauf ist vom Typ Zeit, nicht vom Typ Datum.
In der Items-Datei ist jedoch eine Variable vom Typ datum genannt.
Mh, Fehler, Kopierfehler, auf jeden Fall Verständnisfehler

Nun will ich das gleiche einmal unter BasicUI als Page anlegen, finde aber noch nicht den Einstieg. Momentan ist meine Zeit allerdings auch recht bescheiden, aber ich bleibe dran.
Wenn ich nun im Ordner Sidemaps eine astro.sidemap anlege, ist die damit gründsätzliche für alle UIs verfügbar, oder gibt es eine direkte Verbindung z.B. mit der BasicUI?
Liebe Grüße, Joska
- peter-pan
- Beiträge: 2758
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo Joska,
als erstes mal schnell vorab. Du brauchst keine neue Sitemap anzulegen. Du kannst das in deine bestehende einbauen (falls du eine hast).
Wenn du jetzt mal auf die schnelle alle Daten inder Basic UI anschauen willst, lege einfach das Group Item "gAstro" aus der Items-Datei in deiner Sitemap an.
Das sieht dann etwa so aus:
wegen dem Radio-Button muss ich nochmal schnell nachschauen. Gebe nachher Bescheid. Ich glaube dazu brauchst du noch eine Regel.
als erstes mal schnell vorab. Du brauchst keine neue Sitemap anzulegen. Du kannst das in deine bestehende einbauen (falls du eine hast).
Wenn du jetzt mal auf die schnelle alle Daten inder Basic UI anschauen willst, lege einfach das Group Item "gAstro" aus der Items-Datei in deiner Sitemap an.
Das sieht dann etwa so aus:
Code: Alles auswählen
Group item=gAstro
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- peter-pan
- Beiträge: 2758
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Astro-Bindung minimal einrichten (Anfänger)
So Joska,
hier ist die Regel, die Mondumlaufdaten in einem Item zusammenfasst.
Die kannst du in deinem Unterordner für die Rules anlegen. Entweder mit einem Extra-Namen oder an das Ende der Datei, wo vielleicht schon die obige Regel drinsteht. Bitte achte aber darauf, dass die Regelnamen in deinem Setup immer einmalig sind (z.B. rule "moondistances"). Die Regel triggert in dem Rythmus, wie der Wert in deinem Thing eingestellt ist. Der logInfo-Befehl ist wie der Name schon sagt zur Info, dass die Rule auch läuft und der Counter reduziert die Ausgabe im Logger auf einmal pro Stunde.(Ich will ja nur wissen, ob die Rule noch läuft)
Wenn du die Gruppe "gAstro" in deiner Sitemap angelegt hast und die obige Regel noch eingefügt hast, sollte das Ergebnis dann etwa so aussehen: Es kann sein, dass die Icons nicht alle angezeigt werden, weil die meisten nicht standard sind. Die hab ich mir so im Laufe der Zeit aus dem Internet geholt.
Was noch interressant ist; morgen früh um 6:13 ist eine totale Mondfinsternis.
hier ist die Regel, die Mondumlaufdaten in einem Item zusammenfasst.
Code: Alles auswählen
rule "moondistances"
when
//Item Dummy2 changed to ON or
Item Date_distance changed // Item defined in astro.items and changed every five minutes(300 sec.) by astro.things
then
Date_Kilometer_actual.postUpdate(Date_distance.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_distance.state.format("%.0f km").toString)
Date_Kilometer_perigee.postUpdate(Date_perigee.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_perigee.state.format("%.0f km").toString)
Date_Kilometer_apogee.postUpdate(Date_apogee.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_apogee.state.format("%.0f km").toString)
mooncount = mooncount + 1
if (mooncount == 1 ) //Log only once an hour - just to see if rule is alive
{
logInfo("astro-rules" + '_99'," Moondistance updated every 5 Minutes by \"astro.things \" " + Date_distance.state + " / " + mooncount + " Log only once an hour")
}
if (mooncount >= 12) //refresh counter
{
mooncount = 0
}
end
Wenn du die Gruppe "gAstro" in deiner Sitemap angelegt hast und die obige Regel noch eingefügt hast, sollte das Ergebnis dann etwa so aussehen: Es kann sein, dass die Icons nicht alle angezeigt werden, weil die meisten nicht standard sind. Die hab ich mir so im Laufe der Zeit aus dem Internet geholt.
Was noch interressant ist; morgen früh um 6:13 ist eine totale Mondfinsternis.

Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- peter-pan
- Beiträge: 2758
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Astro-Bindung minimal einrichten (Anfänger)
So jetzt noch zu den Angaben in der Paper UI.
in meiner Paper UI sieht das ganze so aus:
Der Item-Type ist also Datum/Zeit(DateTime). Das "date" das du meinst, ist der Name des Kanals und "distance" die Gruppe. Dazu solltest du dir mal die Möglichkeiten des Bindings https://www.openhab.org/addons/bindings/astro/ zu Gemüte führen, aber vielleicht hat auch Marianne Spiller hierzu ein paar Tipps. Die Darstellung (also was ausgegeben werden soll) erfolgt über den "Formatter" im "Label" in den eckigen Klammern.
[%1$tH:%1$tM] = Stunde : Minute
[%1$tA, %1$td.%1$tm.%1$ty,%1$tH:%1$tM] = Tagesname , Tag . Monat . Jahr , Stunde : Minute
Aber frag mich nicht wie das genau geht, das kommt glaub aus Java. Ich mach's halt (trial and error).
So ich geh jetzt ins Bett, damit ich morgen früh die Mondfinsternis anschauen kann
.
Gruss - Peter
in meiner Paper UI sieht das ganze so aus:
Das Item in der Items-Datei sieht so aus:Dabei ist mir aufgefallen, dass dort u.a, folgendes steht:
Entfernung
radio_button_unchecked
Datum aktueller Umlauf
19:08
trending_up
Entfernung zum Mond
358400.6 km
Die Information Datum aktueller Umlauf ist vom Typ Zeit, nicht vom Typ Datum.
In der Items-Datei ist jedoch eine Variable vom Typ datum genannt.
Code: Alles auswählen
DateTime Date_distance "Datum aktueller Umlauf [%1$tH:%1$tM]" (gAstro) {channel="astro:moon:local:distance#date"}
[%1$tH:%1$tM] = Stunde : Minute
[%1$tA, %1$td.%1$tm.%1$ty,%1$tH:%1$tM] = Tagesname , Tag . Monat . Jahr , Stunde : Minute
Aber frag mich nicht wie das genau geht, das kommt glaub aus Java. Ich mach's halt (trial and error).
So ich geh jetzt ins Bett, damit ich morgen früh die Mondfinsternis anschauen kann

Gruss - Peter
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo Peter
Puuuh, wieder ein Danke für die ausf. Antwort. Im Moment komme ich nur zum Lesen, nicht zum umsetzen, aber hier geht ja nix verloren.
Das ist erst einmal genug Futter, nun werde ich Schritt für Schritt versuchen, dies zu verstehen. Sobald ich neue Fragen habe, bin ich wieder da
Liebe Grüße, Joska
Puuuh, wieder ein Danke für die ausf. Antwort. Im Moment komme ich nur zum Lesen, nicht zum umsetzen, aber hier geht ja nix verloren.
Das ist erst einmal genug Futter, nun werde ich Schritt für Schritt versuchen, dies zu verstehen. Sobald ich neue Fragen habe, bin ich wieder da

Liebe Grüße, Joska
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo Konrad
Danke für die Erläuterung. Ich hatte testweise die Einträge von Peter Pan in die entsprechenden astro.dateien (items/sidemap/things/rules) kopiert und konnte danach in der PaperUI diverse Informationen sehen. Nachdem ich dann versucht habe, dies auch auf einem Tablet anzusehen (nix konfiguriert), war alles OFFLINE.
Damit sehe ich nun nichts mehr.
Sonnenhöhe ist eine Bezeichnung, die du für dieselbe eingetragen hast?
Warum startet die Folgezeile mit NUMBER?
Warum steht danach Sonnenhöhe [%.2f°]
Du merkst, ich taste mich schneckenlahm voran. Macht aber nix, irgendwann macht es KLICK
LG, Joska
P.S. Jetzt habe ich die PaperUI einige Zeit offen und plötzlich ist sie wieder aktiv, die Channels Online, die berechneten Daten zum Mond wieder sichtbar, zur Sonne aber nicht.
Danke für die Erläuterung. Ich hatte testweise die Einträge von Peter Pan in die entsprechenden astro.dateien (items/sidemap/things/rules) kopiert und konnte danach in der PaperUI diverse Informationen sehen. Nachdem ich dann versucht habe, dies auch auf einem Tablet anzusehen (nix konfiguriert), war alles OFFLINE.
Damit sehe ich nun nichts mehr.
Die unter 5 genannten Eintragungen versuche ich zu verstehen;schnitzer hat geschrieben: ↑17. Jan 2019 16:30
2. Unter Configuration -> 'Things findest du das Binding (sollte auf online stehen)
Siehe oben
3. Wenn du auf das thing klickst, erscheinen dir alle möglichen channel.
4. Gehe nun in VSC und erzeuge eine neue Datei (Name beliebig. xxxxx.items)
Das habe ich gemacht
5. In dieser Datei kannst du deine Items definieren.
Beispiel für die Sonnenhöhe:Den Bereich hinter channel kannst du mit drag/drop aus der paperui (klick ganz rechts in den angezeigten Channels)Code: Alles auswählen
//--- Sonnenhöhe Number Sonnenhoehe "Sonnenhöhe [%.2f°]" {channel="astro:sun:Sonne-Mitterteich:position#elevation"}
einfügen. Damit brauchst du nicht die ganze Zeile abtippen.
.
.
.
Gruß Konrad
Sonnenhöhe ist eine Bezeichnung, die du für dieselbe eingetragen hast?
Warum startet die Folgezeile mit NUMBER?
Warum steht danach Sonnenhöhe [%.2f°]
Du merkst, ich taste mich schneckenlahm voran. Macht aber nix, irgendwann macht es KLICK

LG, Joska
P.S. Jetzt habe ich die PaperUI einige Zeit offen und plötzlich ist sie wieder aktiv, die Channels Online, die berechneten Daten zum Mond wieder sichtbar, zur Sonne aber nicht.
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo
Wie an der Latenz zwischen den Einträgen zu sehen, komme ich nur sehr langsam weiter, auch weil mir immer wieder die Zeit fehlt. Egal, Hauptsache weiter.
Nun stehe ich wieder vor einem kleinen Problem. Nachdem ich die Items-Daten von Peter Pan so übernommen habe, fand ich oft nichts im Bereich der Sonnen-Daten in der PaperUI, dann plötzlich jedoch wieder alles, ohne dass ich konkret Änderungen vorgenommen habe. Im Moment sehe ich die Sonnenaufgangsangaben 2x, finde aber nur einen Sunrise-Eintrag in der Items-Datei.
Benenne ich diesen einen Eintrag um, z.B. von Sunrise_Time in Sunrise_Time2, dann sehe ich auch nur eine Sonnenaufgangszeit. Kann es sein, dass ich, ohne es bewusst(!) gemacht zu haben, an 2 Orten (interne DB und Items-Datei) die gleiche Variable gespeichert habe?
Der Ausschnitt in der Astro.Items lautet:
Group gAstro "Astro - Wetter" <sun_clouds> (home)
DateTime Current_DateTime "Heute [%1$tA, %1$td.%1$tm.%1$ty,%1$tH:%1$tM]" <calendar> (gAstro) {channel="ntp:ntp:local:dateTime"}
String CurrentTime2 "Zeit-String [%1$tH]" <time> (gAstro) {channel="ntp:ntp:local:dateTime" }
DateTime Sunset_Time "Sonnenuntergang [%1$tH:%1$tM]" <sunset> (gAstro) {channel="astro:sun:local:set#start"}
DateTime Sunrise_Time "Sonnenaufgang [%1$tH:%1$tM]" <sunris(gAstro) {channel="astro:sun:local:rise#end"}
Wie an der Latenz zwischen den Einträgen zu sehen, komme ich nur sehr langsam weiter, auch weil mir immer wieder die Zeit fehlt. Egal, Hauptsache weiter.

Nun stehe ich wieder vor einem kleinen Problem. Nachdem ich die Items-Daten von Peter Pan so übernommen habe, fand ich oft nichts im Bereich der Sonnen-Daten in der PaperUI, dann plötzlich jedoch wieder alles, ohne dass ich konkret Änderungen vorgenommen habe. Im Moment sehe ich die Sonnenaufgangsangaben 2x, finde aber nur einen Sunrise-Eintrag in der Items-Datei.
Benenne ich diesen einen Eintrag um, z.B. von Sunrise_Time in Sunrise_Time2, dann sehe ich auch nur eine Sonnenaufgangszeit. Kann es sein, dass ich, ohne es bewusst(!) gemacht zu haben, an 2 Orten (interne DB und Items-Datei) die gleiche Variable gespeichert habe?
Der Ausschnitt in der Astro.Items lautet:
Group gAstro "Astro - Wetter" <sun_clouds> (home)
DateTime Current_DateTime "Heute [%1$tA, %1$td.%1$tm.%1$ty,%1$tH:%1$tM]" <calendar> (gAstro) {channel="ntp:ntp:local:dateTime"}
String CurrentTime2 "Zeit-String [%1$tH]" <time> (gAstro) {channel="ntp:ntp:local:dateTime" }
DateTime Sunset_Time "Sonnenuntergang [%1$tH:%1$tM]" <sunset> (gAstro) {channel="astro:sun:local:set#start"}
DateTime Sunrise_Time "Sonnenaufgang [%1$tH:%1$tM]" <sunris(gAstro) {channel="astro:sun:local:rise#end"}
-
- Beiträge: 8
- Registriert: 16. Jan 2019 20:21
Re: Astro-Bindung minimal einrichten (Anfänger)
Hallo Peterpeter-pan hat geschrieben: ↑20. Jan 2019 21:58 So Joska,
hier ist die Regel, die Mondumlaufdaten in einem Item zusammenfasst.
Code: Alles auswählen
rule "moondistances" when //Item Dummy2 changed to ON or Item Date_distance changed // Item defined in astro.items and changed every five minutes(300 sec.) by astro.things then Date_Kilometer_actual.postUpdate(Date_distance.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_distance.state.format("%.0f km").toString) Date_Kilometer_perigee.postUpdate(Date_perigee.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_perigee.state.format("%.0f km").toString) Date_Kilometer_apogee.postUpdate(Date_apogee.state.format("%1$ta, %1$td.%1$tb. ") + " / " + Kilometer_apogee.state.format("%.0f km").toString) mooncount = mooncount + 1 if (mooncount == 1 ) //Log only once an hour - just to see if rule is alive { logInfo("astro-rules" + '_99'," Moondistance updated every 5 Minutes by \"astro.things \" " + Date_distance.state + " / " + mooncount + " Log only once an hour") } if (mooncount >= 12) //refresh counter { mooncount = 0 } end
Ich habe die rule ausprobiert und bekam dann regelmäßig Fehlermeldungen; [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'moondistances': The name 'mooncount' cannot be resolved to an item or type;
Nachdem ich die Variable mooncount an Anfang der Datei mittels VAR mooncount = 0 definiert habe, verschwindet schonmal die Fehlermeldung.
Ich vermute, Du hast mir einen Ausschnitt gezeigt, und die ganzen Variablen am Anfang definiert!?
Ich mach mal ganz langsam weiter. Joska
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Astro-Bindung minimal einrichten (Anfänger)
Eigentlich sollte das nicht möglich sein. Was aber durchaus sein kann, ist, dass Du durch Rumprobieren die Daten durcheinander gebracht hast.Joskahab hat geschrieben: ↑10. Feb 2019 14:04 Benenne ich diesen einen Eintrag um, z.B. von Sunrise_Time in Sunrise_Time2, dann sehe ich auch nur eine Sonnenaufgangszeit. Kann es sein, dass ich, ohne es bewusst(!) gemacht zu haben, an 2 Orten (interne DB und Items-Datei) die gleiche Variable gespeichert habe?
Um saubere Verhältnisse zu schaffen, kannst Du openHAB anhalten und anschließend den Cache bereinigen. Der nächste Start dauert dann etwas länger, sollte aber alles sauber anlegen. Die Schritte im Einzelnen:
Code: Alles auswählen
sudo systemctl stop openhab2.service
sudo openhab-cli clean-cache
sudo systemctl start openhab2.service
Auf den ersten Blick sieht es danach aus, dass Deine Lösung, die Variable mooncount betreffend korrekt ist.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet