NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@sborg
Werde ich heute Abend mal versuchen auszulesen -
Hallo zusammen!
Ich habe gestern erfolgreich eine Froggit WH2600 PRO eingerichtet!
Funktionert einwandfrei, vielen Dank für die Klasse Arbeit!
Grüße an Alle!
-
ich hätt wiedermal eine Idee (vom Cousin abgeschaut)
-
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hab jetzt in Grafana herausgefunden, dass die längste Trockenperiode heuer vom 28.03. - 14.04. war.
Kann ich das in die beiden DP übertragen? Wenn ja, wie?Wenn ich mich nicht gerade verrechnet habe müssten das 18 Tage sein.
Als trägst du unter0_userdata.0.Statistik.Wetter.Jahreswerte.Trockenperiode
und0_userdata.0.Statistik.Wetter.Rekordwerte.value.Trockenperiode
jeweils 18 ein ("Bestätigt" an haken).
Dann unter0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode
noch 18 Tage im April 2021Allerdings wird das nur die Anzeige korrigieren. Aus irgendeinem Grund läuft aber da etwas bei dir schief. Nenne es Bauchgefühl oder what else, aber mich stört die "javascript-Instanz.1". Den Jahreswechsel-Reset hat er noch durchgeführt, dann war nix mehr. Selbst wenn der Rekordwert flöten ging, hätte er schon einen neuen anlegen müssen, außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...
Deswegen trage obiges erst nach dem hier ein:
- lösche mal alle drei obigen Datenpunkte
- führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt
ev. führt das ja zum Erfolg. Es dürfte sich dann an den TS' und LCs nichts mehr ändern bis "kein Regen" > 18 Tage bzw. beim Jahreswert zum 01.01.2022 der Jahresreset erfolgt.
-
@iotobias freut mich
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
ich hätt wiedermal eine Idee (vom Cousin abgeschaut)
Schau nicht so viel bei Anderen...
Sind aber dank Influx auch wieder nur zwei relativ einfache Abfragen. Da sich das ja nicht dauernd ändert und zur Lastminimierung wäre es einmalig pro Tag bei den Mitternachtjobs gut aufgehoben.Meteorologischer Sommer ist vom 1.6. - 31.8. wenn ich mich nicht irre?
... und bevor ich es dann falsch mache (ohne deinem Cousin zu Nahe treten zu wollen): fehlt da nicht ein "o", hat ja nix mit einem "Meteor" zu tun? -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Dann unter 0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode noch 18 Tage im April 2021
Danke dir!
Hier auch "Bestätigt" an haken?aber mich stört die "javascript-Instanz.1"
Hatte es nur in der Testphase unter .1 laufen. Läuft jetzt schon ewig in .0
außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...
Gott sei dank nicht!
führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt
gemacht und bemerkt, dass er die DP nicht neu anlegt.
Hab dann Lokal und auf Github kontrolliert.
Im Script scheint "Trockenperiode, usw.) nicht auf. -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Meteorologischer Sommer ist vom 1.6. - 31.8. wenn ich mich nicht irre?
genau
... und bevor ich es dann falsch mache (ohne deinem Cousin zu Nahe treten zu wollen): fehlt da nicht ein "o", hat ja nix mit einem "Meteor" zu tun?
-
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hier auch "Bestätigt" an haken?
Da es ein reiner "Anzeige-DP" ist, ist es da egal. Mich stört halt immer nur die Einfärbung bei "unbestätigt", dass hat so irgendwie etwas von einem Fehlercharakter
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hab dann Lokal und auf Github kontrolliert.
Kann ja auch nicht, schei*e wenn man blöd ist...
Das ist doch nicht Shell-Skript, sondern Statistik...
Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:const DP_Check='Rekordwerte.Regenmengemonat';
in
const DP_Check='Rekordwerte.Trockenperiode';
Dann werden alle fehlenden DPs nach Start des Skriptes wieder angelegt
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:
erledigt
Dann hat er deswegen die Periode nicht berechnet?
-
@negalein Nein, die Änderung ist nur weil er sonst die Datenpunkte nicht mehr anlegt.
Ich vermute einen Fehler bzgl. des/der Datenpunkte/s wie bspw. "Read Only" oä.Met. Sommer-Temp
Regen ist aber K*cke, da er hier die Werte fort schreibt. Da muss ich mir in einer ruhigen Minute (=also nie ) erst mal wieder Gedanken machen.
Die Berechnungen/Datenbankabfrage macht eigentlich auch nur Sinn vom 01.06. - ~September
Die restlichen 9 Monate wäre sie ja unnütz, aber wie käme man aktuell an die Daten für den Met.-Sommer 2021? Einfach immer laufen lassen ist mehr als kontraproduktiv, da die Regenmenge wohl wieder in einem "Datenbankabfragedesaster" endet. Soll heißen, auf einem PI kann das wieder 1-2 Minuten dauern...
btw: so sieht die neue Version des Statistik-Skriptes derzeit aus. Alles wg. des JSC 3.x ...
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ich vermute einen Fehler bzgl. des/der Datenpunkte/s wie bspw. "Read Only" oä.
Quasi dieses ACK-Ding? Oder kann ich das selbst überprüfen?
in einer ruhigen Minute (=also nie )
Ich schick dir ein Ommmm
Die Berechnungen/Datenbankabfrage macht eigentlich auch nur Sinn vom 01.06. - ~September
Ja, eigentlich nur bis 31. 8.! Also am 1. 9. um 1:03 müsste er es berechnen.
Die restlichen 9 Monate wäre sie ja unnütz, aber wie käme man aktuell an die Daten für den Met.-Sommer 2021? Einfach immer laufen lassen ist mehr als kontraproduktiv, da die Regenmenge wohl wieder in einem "Datenbankabfragedesaster" endet. Soll heißen, auf einem PI kann das wieder 1-2 Minuten dauern...
Eventuell vorerst für 2021 als Option (true/false).
Wer will solls machen, wer eine schwache Maschine hat, kann dann eh entscheiden ob ers macht.btw: so sieht die neue Version des Statistik-Skriptes derzeit aus. Alles wg. des JSC 3.x ...
Also so wie oben gemeint mit dem ACK-Ding?
-
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Quasi dieses ACK-Ding? Oder kann ich das selbst überprüfen?
Jein. Ack ist nur für die "Weiterverarbeitung" ggf. nötig. Damit wird der Wert "bestätigt", quasi ein "schalte xyz ein" und der meldet dann zurück "eingeschaltet". Ich setze den Ack=true wo es möglich ist (bei Bulk-Updates per Simple-API-Adapter geht es bspw. nicht) nur weil die Einfärbung der DPs wie ein Fehler aussieht. Das verursacht bei dem ein oder anderen User dann schon Schnappatmung
Nachschauen kann man dann beim DP in den Objektdaten ob dort read/write auf true/false steht. Bei keinem Eintrag ist es automatisch true, also erlaubt@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ich schick dir ein Ommmm
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ja, eigentlich nur bis 31. 8.! Also am 1. 9. um 1:03 müsste er es berechnen.
01:03 Uhr wäre Statistik, das macht aber das Shell-Skript. Deswegen kann ich es einfach für die Monate 6,7 und 8 ausführen lassen, da die Mitternachtjobs gegen 23:58 Uhr laufen. Somit läuft es letztmalig am 31.08. gegen 23:58 Uhr. Man möge die dann ggf. fehlenden 1-2 Messwerte verzeihen
Da ich die Regenabfrage relativ komfortabel lösen konnte was die Verarbeitungszeit angeht, wird es bei aktiver InfluxDB automatisch aktiv. Muss es "nur" noch implementieren. Die Ausführung für dieses Jahr (wir haben ja bereits September, da läuft die Auswertung nicht mehr ) geht dann manuell per Parameter, sogar bei aktivem/laufendem Service:
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Also so wie oben gemeint mit dem ACK-Ding?
Nö, mit dem JSC 3.x muss ein JSON-String ein Array sein (aktuell passiert zwar noch nix, kann sich aber mit einer neuen Version jederzeit ändern). Das habe ich zwar geändert, dabei aber vergessen, dass ich es dann im Umkehrschluss auch als Array wieder einlesen muss. Als letzte Werte steht halt im JSON-String dann zufällig "ack: true", was er dann als Datenpunktwert nutzt...
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
geht dann manuell per Parameter, sogar bei aktivem/laufendem Service:
Cool, freu mich!
-
-
Flasche all, habe fertig
Bereit zum testen:
- sh + sub ersetzen
- js ebenfalls + einmalig ausführen wg. neuer DPs (.Info.Regenmenge_Met_Sommer + .Info.Temp_Met_Sommer_avg)
- zur Berechnung im Verzeichnis
./wetterstation.sh --metsommer
ausführen
Changelog:
+ Min-/Max-Aussentemperatur des heutigen Tages ~ Änderung bei Datenübertragung per Simple-API wg. InfluxDB 2.x + Meteorologischer Sommer Durchschnittstemperatur und Regenmenge + neuer Shell-Parameter --metsommer (zur manuellen Berechnung der Werte des meteorologischen Sommers)
Die meteoroligischen Sommerwerte werden bei aktivierter InfluxDB automatisch vom 01.06. bis zum 31.08. des Jahres ermittelt. Per Option "--metsommer" (Service muss dazu nicht deaktiviert werden!) lassen sich die Werte auch nachträglich für das laufende Jahr ermitteln, solange Daten für den Zeitraum vorliegen.
Die Ausführung in der Zeit vom 01.01. bis 31.05. wird mangels Daten nicht ausgeführt.Wie immer im GitHub...
-
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
zur Berechnung im Verzeichnis ./wetterstation.sh --metsommer ausführen
Super
/home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden. Daten vom 01.06.2021 bis 31.08.2021 wurden ermittelt... Ø-Temperatur: 20.04 °C Regenmenge : 343.9 l/m² dietpi@DietPi:/home/iobroker$
was bedeutet,
/home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden.
? -
@negalein
Dass er das Kommando in Zeile 136 nicht gefunden hat
(sorry der musste sein) -
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das er das Kommando in Zeile 136 nicht gefunden hat
(sorry der musste sein)
Ja, mit dem hätt ich rechnen müssen! -
@negalein Das muss aber schon länger sein, ist jetzt nur durch das händische starten aufgefallen.
wetterstation.conf mittels nano öffnen, dann STRG+[Unterstrich/Gedankenstrich] drücken, 138 eingeben und [ENTER] drücken.
Wie sieht die Zeile aus? Du musst da ein "am:" drin stehen haben, was da nix zu suchen hat
#138 ist im Original eine Leerzeile