roe-dl / weewx-DWD

Darstellung von Wettersymbolen in WeeWX sowie Vorhersage- und Warndaten herunterladen und für WeeWX und Web-Darstellung aufbereiten
GNU General Public License v3.0
19 stars 4 forks source link

Vorhersagedaten um berechnete Größen erweitern #48

Closed olwaldi closed 1 year ago

olwaldi commented 1 year ago

weewx kann aus Wetterdaten abgeleitete Größen berechnen wie z.B. windchill. Die berechneten Daten werden in der weewx-sqlite-Datenbank gespeichert (und nicht dynamisch bei Bedarf berechnet).

Daher meine Anregung: Bitte in die forecast-sqlite-Datenbank auch die "berechenbaren" Größen mit aufnehmen, konkret wäre das vermutlich nur windchill. Die Formeln dafür sind in bin/weewx/wxformulas.py. Ich hatte versucht, in skin.conf die Berechnung durchzuführen, aber Python-Routinen kann man dort nicht aufrufen.

roe-dl commented 1 year ago

Bitte prüfen.

Achtung! Datei dwd-forecast-*.sdb bitte löschen.

olwaldi commented 1 year ago

Funktioniert, d.h. in der DB werden windchill-Daten eingepflegt. Allerdings wundert mich, daß windchill GRÖSSER ist als outTemp. Da hätte ich eine Absenkung erwartet. Anbei die forecat-DB. dwd-forecast-K2714.sdb.gz

roe-dl commented 1 year ago

Laut Wikipedia ist der Windchill nur bis 10°C definiert: https://de.wikipedia.org/wiki/Windchill

Vielleicht liegt es daran. Ich sehe mir die Berechnung nochmal an.

roe-dl commented 1 year ago

Ich habe die in wxformulas.py angegebene Gleichung für Grad Fahrenheit und Meilen pro Stunde in eine Gleichung für Grad Celsius und Kilometer pro Stunde umgerechnet. Dabei kommen mit geringer Abweichung die Faktoren heraus, die in dem Wikipedia-Artikel genannt sind und die der Berechnung hier zugrundeliegen. Einen Fehler kann ich im Moment nicht entdecken.

roe-dl commented 1 year ago

Davis schreibt in der technischen Dokumentation zur Vantage Pro Folgendes:

Newer product revisions (WeatherLink version 5.1 and Vantage Pro consoles with Sept 7, 2001 firmware and later) are based on the following formula: 35.74 + 0.6215T - 35.75 (V 0.16 ) + 0.4275T (V 0.16 ) As with the old formula, any place where the result yields a wind chill temperature greater than the air temperature, the wind chill is set equal to the air temperature. This always occurs at wind speeds of 0 mph or temperatures above 76°F. This also occurs at lower wind speeds with temperatures between 0°F and 76°F.

Daß die Formel Werte oberhalb der Lufttemperatur liefern kann, ist also normal. Es ist übrigens dieselbe Formel wie in wxformulas.py. Die Lösung, die Davis nutzt, taugt auch hier.

olwaldi commented 1 year ago

Ich habe auch etwas gegoogelt - windchill größer als Außentemperatur ist durchaus möglich. Und die aktuellen windchill-Werte passen recht gut zu den vorhergesagten.

Vielen Dank, Michael

roe-dl commented 1 year ago

Bei den berechneten Größen habe ich noch den Hitzeindex und die relative Luftfeuchte hinzugefügt. Außerdem werden Windchill und Hitzeindex in die HTML-Tabelle der Tagesvorhersage aufgenommen, wenn die Werte im definitionsgemäßen Bereich liegen.

olwaldi commented 1 year ago

Bei mir ist heatindex in der DB immer NULL. Aber das könnte daran liegen, daß die outTemp aktuell deutlich unter 26.7 liegt. Vorhersage für humidity funktioniert.

roe-dl commented 1 year ago

Es ist in der Tat so, daß die Werte nur berechnet werden, wenn die Temperatur über 26,7°C liegt. Anderenfalls ist der Wert None bzw. in der Datenbank NULL. Gestern hatte ich beim Ausprobieren noch kurz Gelegenheit, einen Wert zu sehen.