NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@Boronsbruder Danke für den Tip, habe jetzt auch eine Gruppe dafür angelegt
@SBorg Wenn keine Fehler passieren wird es doch langweilig
-
@boronsbruder
Jetzt wurde die 1.75 zur Verfügung gestellt. Hat sie auch den Fehler mit
totalrainin (fehlendes "r"), oder ist dieser Fehler nun behoben. ImReadme steht dazu nichtsEs geht um die DP1500.
-
@martybr
Ist behoben.
Du kannst das auch im log des wetterstation.sh-skripts sehen:PASSKEY=*****&stationtype=GW1000A_V1.7.5&runtime=968721&dateutc=2022-10-01+22:58:45&tempinf=79.34&humidityin=39&baromrelin=30.091&baromabsin=28.467&tempf=52.16&humidity=97&winddir=228&windspeedmph=2.91&windgustmph=3.36&maxdailygust=10.29&solarradiation=0.00&uv=0&rainratein=0.047&eventrainin=0.150&hourlyrainin=0.020&dailyrainin=0.020&weeklyrainin=0.020&monthlyrainin=0.150&yearlyrainin=23.256&totalrainin=23.256&wh65batt=0&freq=868M&model=GW1000A_Pro
=> totalrainin=23.256
-
@boronsbruder
Super. Vielen Dank. Dann starte ich mal das UpdateP.S.
Wo finde ich das Log? -
@martybr
in der .conf logging auf true, dann sollten sie im gleichen Verzeichnis liegen.Es gibt übrigens jetzt eine wsview plus-app.
Sieht hauptsächlich hübscher aus... -
@boronsbruder
Danke für die Infos. Ich werden dann das Log aktivieren. -
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Du kannst bei Gelegenheit bei den "Getesten Stationen" den Froggit DP1500 hinzufügen.
Danke und done
-
Hallo @SBorg ,
kann man bei Deinem Statistikscript auch eine Rückrechnung anstoßen?
Ich hatte durch Falschmessungen etliche Male -5000 C in meiner Datenbank und und nach Korrektur der Werte in der InfluxDB, bleiben natürlich die falsche Durschnittstemperatur, falsche Anzahl an "sehr kalten Tagen" , etc. übrig.
Grüße,
Kay -
Hi, leider nein, da die Werte (zumindest etliche) auf vorherigen Werten aufbauen. ZB. die Höchsttemperatur des Monats ist easy. Da kann ich einfach über alle Datensätze iterieren und den höchsten Wert festhalten. Fertig
Bei den Gradtagen muss ich dann aber mehrere Bedingungen pro Wert kontrollieren und dann je nach Ergebnis feststellen ob dies ein xy-Gradtag ist. Das dauert bei ~ 3.000 Datensätzen pro Tag schon einen Augenblick. Deswegen wird dann das heutige Ergebnis zum vorherigen einfach dazu addiert, also gestriger Wert von xy-Gradtag plus 1 von heute und sofort wieder neu gespeichert. Am Monatsersten werden dann nur noch die Werte gelesen und passend zum Monat/Jahr gespeichert und alles wieder genullt.
Man müsste also um die Routine eine Schleife bauen, die dann dem Skript "vorgaukelt" es ist zB. Mai und dann für die Tage 1-31 jeweils das Skript durchläuft. Dann haättest du erst die korrekten Werte für Mai 202x (x=man müsste natürlich auch das Jahr noch dementsprechend vorgaukeln falls es nicht das aktuelle ist).
-
@sborg
Alles klar. Die Frage war es auf jeden Fall wert, gestellt zu werden -
Die "Wetterwarnungen" scheinen auch zumindest passabel zu funktionieren, wobei mich das ein wenig überrascht. Wir haben hier im Verhältnis gesehen ziemlich günstige Hardware und nur Wissen von einem Laien, der sich dieses aus Wikis und diversen Beiträgen "aus den Fingern saugt..."
Trotz alle dem, Meldung vom DWD:
Wetterwarnung des Skripts:
-
@viper4iob said in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg
Es sieht jetzt besser aus, ich denke es passt jetzt. Danke fürs schnelle fixen.Nebenbei bemerkt: ich habe eine Froggit HP1000SE Pro.
Zum Thema welche Wetterstation die 10 min Werte direkt sendet.@SBorg
Es scheint da doch noch ein kleines Problem zu geben.
Meine Wetterstation sendet ja die 10min Durchschnittswerte von Windstärke und -richtung direkt, d.h. das Skript braucht die nicht mehr berechnen.
Ich habe in der configUSE_AVG_WIND=true
stehen, mir ist aber aufgefallen, dass auf openSenseMap weiterhin die aktuellen Werte und nicht die Durchschnittswerte angezeigt werden.
Ist das vielleicht ein ähnliches Problem wie mit den Durchschnitts-DPs, als die nur mit den berechneten Werten gefüttert wurden, und wenn es keinen berechneten Wert gab, dann der normale Wert benutzt wurde, anstatt den 10 min Werten, die direkt von der Wetterstation kamen. -
Hat schon jemand etwas umgesetzt mit Windböen ? Es gibt ja Wind_Max nach welcher Zeit wird hier gerechnet?
Ich möchte einen Alarm bzw eine Anzeige haben welche mir bei Sturm möglichst schnell den höchsten Wert ausspuckt.
Also 10:11 Uhr 60 km/h 10:14 62km/h ...
Kann ich hier mit wind_max arbeiten oder lieber mit Wind? Bei Wind kommt es mir so vor das auch nur ein durchschnitt irgendwie angezeigt wird.
-
Ist es angedacht das super Skript "wetterstation-statistik.js" auf influx 2 umzustellen oder ist das gar schon geschehen? Aktuell bekomme ich folgende Fehler:
javascript.0 2022-11-11 10:26:00.095 warn TypeError: Reduce of empty array with no initial value at Array.reduce (<anonymous>) at Object.cb (script.js.XSkripte.wetterstation-statistik:7666:43) at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5809:71) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:322:37) at processImmediate (internal/timers.js:464:21) javascript.0 2022-11-11 10:26:00.092 warn States system pmessage io.messagebox.system.adapter.javascript.0 {"command":"query","message":{"result":[],"error":"Invalid call"},"from":"system.adapter.influxdb.1","callback":{"message":"select * FROM \"0_userdata.0.DP1500.Aussentemperatur\" WHERE time >= 1668034800000000000 AND time <= 1668121199000000000; select * FROM \"0_userdata.0.DP1500.Wind_max\" WHERE time >= 1668034800000000000 AND time <= 1668121199000000000; select * FROM \"0_userdata.0.DP1500.Regen_Tag\" WHERE time >= 1668034872000000000 AND time <= 1668121199000000000","id":2,"ack":true,"time":1668158760014},"_id":22946247} Reduce of empty array with no initial value javascript.0 2022-11-11 10:26:00.089 error script.js.XSkripte.wetterstation-statistik: Fehler beim Lesen der InfluxDB: Invalid call influxdb.1 2022-11-11 10:26:00.083 error queries: Error: 3 Error happened while processing 3 queries
Vllt habe ich es auch überlesen. Falls ja sorry dafür.
-
@schittl
siehe https://github.com/SBorg2014/WLAN-Wetterstation/issues/41ein :+1 beim issue würde helfen
-
Hallo lieber @SBorg, ich hoffe dir gehts gut!
Seit gestern herrschen bei mir negative Außentemperaturen und seitdem kommt bei Wolkenbasis nurnoch 0. -
@rushmed said in [Linux Shell-Skript] WLAN-Wetterstation:
Hallo lieber @SBorg, ich hoffe dir gehts gut!
Seit gestern herrschen bei mir negative Außentemperaturen und seitdem kommt bei Wolkenbasis nurnoch 0.Ich habe das gleiche Problem, genauer gesagt steht bei mir immer "null".
Ich habe mir das jetzt mal angeschaut, das Problem ist folgende Zeile der Funktion do_wolkenbasis() in der wetterstation.sub:
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-${MESSWERTE[2]})*125"| bc -l)
MESSWERTE[1] ist die Außentemperatur
MESSWERTE[2] ist der Taupunkt
Das bc Kommando hat scheinbar ein Problem, wenn MESSWERTE[2] negativ ist. Das kommt dann mit dem Minus Minus nicht zurecht und schmeißt einen Syntax Error.
Wenn man um den MESSWERTE[2] nochmal Klammern setzt, geht es wieder, die Zeile sieht dann so aus:
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-(${MESSWERTE[2]}))*125"| bc -l)
Danach das Wetterstationsskript oder falls eingerichtet den Dienst neu starten und dann sollte das wieder funktionieren. -
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-(${MESSWERTE[2]}))*125"| bc -l)
Cool, danke. Habs mal eingebaut.
Edit: Sieht gut aus!
-
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-(${MESSWERTE[2]}))*125"| bc -l)
super, funktioniert hier auch!
Danke! -
@viper4iob Danke funktioniert