NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@SBorg
Danke für die Rückmeldung. Ich hab den Issue auch unterstützt. -
@rand sagte in [Linux Shell-Skript] WLAN-Wetterstation:
So und wie formatiere ich den nun als lesbaren Zeitstempel im Grafana?:)
DP60 kommt rein, beim Rest schaue ich noch.
Schade das der nicht wenigstens auch ne Richtung hat...Gute Frage, nächste Frage. Mit der vorherigen Version hat das noch tadellos funktioniert. Die neue (und deren stellenweise geänderten Plugins) finde ich persönlich nicht so toll...
Supi, im "Ami-Format" funktioniert es wie gehabt:
Stelle ich dann ein User spezifisches ein:
Richtung würde wohl schwierig werden, da man dann eine Dreieckspeilung bräuchte mit zwei örtlich getrennten Antennen?
-
@xxjooo sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das mit der Doku ist nur fair. Ich werde mich mal daran versuchen und Dir/Euch zukommen lassen. Hoffe, dass das WE mir die Zeit erlaubt.
Keine Eile, lass dir Zeit.
-
Wo habt ihr euren DP60 gekauft? Bei froggit gibt's den ja für 60 Euronen.
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
@rand sagte in [Linux Shell-Skript] WLAN-Wetterstation:
So und wie formatiere ich den nun als lesbaren Zeitstempel im Grafana?:)
DP60 kommt rein, beim Rest schaue ich noch.
Schade das der nicht wenigstens auch ne Richtung hat...Gute Frage, nächste Frage. Mit der vorherigen Version hat das noch tadellos funktioniert. Die neue (und deren stellenweise geänderten Plugins) finde ich persönlich nicht so toll...
Danke, versuche ich mal
Edit
Richtung würde wohl schwierig werden, da man dann eine Dreieckspeilung bräuchte mit zwei örtlich getrennten Antennen?
Also eigentlich für ne Richtung doch nicht? Die Entfernung ist eigentlich viel komplizierter da so ein Blitz ja eigentlich doch recht unterschiedliche Stromstärken und damit Impulse generieren kann, aber das geht ja schon
Ich hab aber schon bei Lucy gefragt ob das nicht ne Option wäre (also zweiter DP60 paar Meter weg)
Vor allem bei der Unzuverlässigkeit von meinem, wäre das gar nicht schlecht nur wenn beide "Ja" sagen auch was anzuzeigen...@amiethaner said in [Linux Shell-Skript] WLAN-Wetterstation:
Wo habt ihr euren DP60 gekauft? Bei froggit gibt's den ja für 60 Euronen.
Ich hab meinen Kram in USA bestellt
-
@SBorg
Wann wird denn in der Statistik der
höchster Jahrestemperaturdurchschnitt
niedrigste Jahrestemperaturdurchschnitt
Wert befüllt? Erst nachdem schon ein Jahr Datenvorhanden sind?
Aktuell sind die beiden DPs bei mir nämlich (noch) leer. Aber mein Script läuft auch erst seit grob 2 Wochen.Ach ja mein DP60 und ein zweiter DP50 sollte dann auch nächste Woche kommen - hoffentlich.
-
@rand sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Also eigentlich für ne Richtung doch nicht? Die Entfernung ist eigentlich viel komplizierter da so ein Blitz ja eigentlich doch recht unterschiedliche Stromstärken und damit Impulse generieren kann, aber das geht ja schon
Denke mal das ist alles sehr hypothetisch, da zumindest ich mal überhaupt keine Ahnung davon habe
Wäre aber die Richtung mit der Mini-Antenne zu detektieren, wäre das auch bestimmt vorhanden. Ist ja quasi Mehrnutzen (=lässt sich teurer/besser verkaufen) ohne Mehr(material)aufwand.Aktuelle Mini-Roadmap für die nächsten Versionen: implementieren von Luftgüte- und Leckage-Sensoren + 2 weitere Überraschungswerte
-
@amiethaner sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Wert befüllt? Erst nachdem schon ein Jahr Datenvorhanden sind?
Jepp, das wird am 01.01.2022 um 01:03 Uhr (falls default) generiert, bzw. dann jeden 01.01.
Es würde nichts bringen jetzt schon einen Jahresdurchschnitt zu generieren, gerade weil das die rechen-/Datenbankintensivste Aktion ist. Das dauert auf einem PI3 mehre Minuten, da macht man das nicht öfters als nötig -
Hallo @SBorg,
irgendwie fluppt das bei mir immer noch nicht mit der Regenmenge ("0_userdata.0.Statistik.Wetter.aktueller_Monat.Regenmenge_Monat" und "0_userdata.0.Statistik.Wetter.Rekordwerte.value.Regenmengemonat") im Statistikscript.
Am 16.01. hatte ich auf v0.2.0 geupdated und die beiden Werte nochmal manuell angepasst.
Der Datenpunkt aus dem WLAN-Script "javascript.0.Wetterstation.Regen_Jahr_kumuliert":
Das passt soweit wunderbar.
Der Datenpunkt "0_userdata.0.Statistik.Wetter.aktueller_Monat.Regenmenge_Monat":
Für Rekord ist es identisch, nur eben einen Tag später versetzt.
Hast du noch eine Idee?
-
Zu den Jahreswerten noch ne doofe Frage:
Muss ich das komplette Jahr in der influxDB haben? Ich speichere aktuell die Daten nur sechs Monate lang. -
@rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Zu den Jahreswerten noch ne doofe Frage:
Muss ich das komplette Jahr in der influxDB haben? Ich speichere aktuell die Daten nur sechs Monate lang.Ich kann Dir aus dem Kontext der Scripte die Frage zwar nicht direkt beantworten. Ich kann Dir aber sagen, dass ich seit über zwei Jahren 250 Datenpunkte ohne Ende speichere und die Datenbank nicht mal 1Gigabyte groß ist. Stell also einfach mal alle geloggten DPs auf unendlich und freue Dich an langer Datenvorhaltung, die wenig Platz weg nimmt...
-
@rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Zu den Jahreswerten noch ne doofe Frage:
Muss ich das komplette Jahr in der influxDB haben? Ich speichere aktuell die Daten nur sechs Monate lang.Doofe Frage, ne... nur dumme Antworten...
Ja. Das ist auch der Grund warum das nur einmalig im Jahr ausgeführt wird. Erstens braucht man halt alle Werte des Zeitraumes, zweitens dauert das beim PI einfach. Wenn ihr alle 30 Sekunden ein Datenpaket loggt, sind das etwas mehr als 1 Million (!) Datensätze. Da dauert die Abfrage einen Augenblick, dann müssen 1 Mio. Addition durchgeführt werden und das Ergebnis wieder durch 1 Mio. geteilt werden, um den Durchschnitt zu errechnen.
Aber wie schon @XxJooO schreibt, die Datenbankgröße ist nicht so dramatisch. Wenn du die drei Werte 1 Jahr Jahr loggst, sind das nur wenige MB (rechnerisch müssten es <10MB sein).Ich könnte mir auch später noch DPs vorstellen wie bspw. Höchst-/Tiefswert vor einem Jahr, also Max./Min. vom 31.01.2020
-
@sonystar sagte in [Linux Shell-Skript] WLAN-Wetterstation:
irgendwie fluppt das bei mir immer noch nicht mit der Regenmenge...
Hast du noch eine Idee?Bist nicht alleine, ich habe es eben mal bei mir kontrolliert (da ich es nicht aktiv nutze fällt mir das nicht unbedingt auf).
Kann ich leider bestätigen und aktuell so mal überhaupt keine Idee.Eigentlich ist das kein Hexenwerk:
- ließ alle Regenmengen von Gestern ein
- finde den Maximalwert (da die Regenmenge pro DP nur fortgeschrieben wird und kein aktueller Messwert ist)
Dann kommt schon der ganze Voodoo:
if (Max_Regenmenge > 0) {Regenmenge_Monat = getState(PRE_DP+'.aktueller_Monat.Regenmenge_Monat').val + Max_Regenmenge; setState(PRE_DP+'.aktueller_Monat.Regenmenge_Monat', Number((Regenmenge_Monat).toFixed(2)), true);}
Wenn der Maximalwert größer als 0 (es hat heute also geregnet), dann hole den vorherigen Wert aus dem DP, addiere den Maximalwert hinzu und speichere ihn wieder im DP ab.
Da mit den Werten nichts mehr an anderer Stelle geschieht, bleibt eigentlich nur noch ein Fehler bei der Datenbankabfrage (zB. Zeitraum) oder fehlerhafter Messwert an sich. Schau ich mir jedenfalls an, aber eine echte Idee habe ich gerade nicht -
@sborg ,
Hi, ich habe auch noch eine Frage zu den DPs. Wenn ich das Script der V2.3 richtig interpretiere, dann sollte ja bei einer Station mit dem Protokoll 9 der Wert von DP Regenrate auf 0 gesetzt werden. Der DP bleibt aber weiterhin ungefüllt.
Dann wäre es total nett, wenn Du kurz erklären könntest, was die bei mir ungefüllten DP eigentlich für Werte zeigen sollten:
-
Regen_Event hat die Einheit "mm", sollte somit also sich wohl auf ein aktuelles Regenereignis beziehen. Dann müsste die Station ja vom Beginn Regen, also von da wo die gemessene Menge =0 bis da wo die gemessene Menge wieder 0 ist diese Menge aufaddieren und liefern. Ist das so gedacht?
-
Regen_Stunde hat die Einheit "mm", sollte also die gemessene Menge in der aktuell gerade laufenden Stunde abbilden
-
Regen_total hat die Einheit "mm". Auf welche Zeiteinheit aber bezieht sich total?
-
Regenrate hat die Einheit "mm/h" . Ist das nicht das Gleiche, wie Regen_Stunde?
-Regenstatus ist hingegen ein String und soll seinen Inhalt ändern in Abhängigkeit welchen Datenpunktes, der 0,1,4, 10 oder darüber enthält?
Ich frage so genau nach, da ich davon ausgehe, dass ich diese DPs mit einem Blockly über die Zeit aus dem von meiner Station gelieferten Wert für Regen_Tag berechnen kann. Ich benötige dafür aber die zeitlichen Bezüge, die sich mir leider aus Deinem Script mangels Kenntnissen nicht erschließen.
Vielen Dank!!!
-
-
@xxjooo
Regen total ist die Gesamtmenge innerhalb eines Jahres
Regen Stunde, die Menge in einer Stunde
Regenrate hingegen heisst so viel wie Regenintensität, bedeutet wie Stark es Regnen, was aber nicht heisst das eine Ganze Stunde soviel Regen fällt -
@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Regenrate hingegen heisst so viel wie Regenintensität, bedeutet wie Stark es Regnen, was aber nicht heisst das eine Ganze Stunde soviel Regen fällt
Ok, aber wie stark in welcher Zeit? Für Regenstatus soll es ja mehr als 0, 1, 4, oder mehr als 10 sein, damit in Abhängigkeit davon ein entsprechender string gefüllt wird. Aber welcher Wert abhängig von welcher Zeit? Ohne die Abhängigkeiten kann ich nix berechnen...
-
@xxjooo sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ok, aber wie stark in welcher Zeit?
Am Display steht bei Regenrate "mm/hr".
Also der hochgerechnete Wert, wenn es in der aktuellen Intensität 1 Stunde durchregnet. -
@xxjooo sagte in [Linux Shell-Skript] WLAN-Wetterstation:
dann sollte ja bei einer Station mit dem Protokoll 9 der Wert von DP Regenrate auf 0 gesetzt werden
Nicht ganz. Die Regenrate bleibt unverändert, da dieser Wert nicht berechnet wird sondern aus der Station kommt. Deswegen wird der auch bei dir nicht befüllt.
#Protokoll #9 liefert keine Regenrate(11); also auf "0" setzen if [ "$WS_PROTOKOLL" -eq "9" ] && [ -z ${MESSWERTE[11]} ]; then MESSWERTE[11]=0; fi
Sollte nur die Fehlermeldungen (zB. bei
./wetterstation.sh --debug
) unterdrücken. Mehr nicht
Auch wenn da im Kommentar "Regenrate" steht, wird an der folgenden Stelle der "Regenstatus" damit berechnet.
@Statistiker: Bitte den falschen Monatswert bei Regenmenge korrigieren ("0_userdata.0.Statistik.Wetter.Jahreswerte.Regenmengemonat") + den gespeicherten Monatswert nicht vergessen ("0_userdata.0.Statistik.Wetter.Data.2021.01").
IMHO Fehler gefunden, läuft heute Nacht mal bei mir im Test ob kein grober Schnitzer drin ist, danach könnt ihr alle testen. -
Guck mal was ich heute gesehen habe
Müssten doch eigentlich beide Werte gleich sein oder (wie bei den anderen)?
Edit. Habe gerade gesehen dass die -6.61°C am 31.1.2021 um ca. 7 Uhr waren und die -7°C am 01.02.2021 um 0:44 Uhr (Laut InfluxDB). Dann wäre das ja wieder korrekt?
Edit2: Dann wären im Umkehrschluss ja aber alle anderen Werte im Vergleich Gestern zu aktueller Monat falsch. Und außerdem gab es 0:49 Uhr nochmal -7,22 °C.Ich bin verwirrt.
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
@Statistiker: Bitte den falschen Monatswert bei Regenmenge korrigieren ("0_userdata.0.Statistik.Wetter.Jahreswerte.Regenmengemonat") + den gespeicherten Monatswert nicht vergessen ("0_userdata.0.Statistik.Wetter.Data.2021.01").
IMHO Fehler gefunden, läuft heute Nacht mal bei mir im Test ob kein grober Schnitzer drin ist, danach könnt ihr alle testen.Sorry, ist das ein Einheitenfehler oder ein Wertefehler wegen der Tagesverschiebung? Hab scheinbar den entscheidenden Teil nicht mitbekommen - also was muss ich auf was ändern