Windrichtung per Vektorrechnung mitteln

Artikel von Fachleuten zu diversen Themen
Benutzeravatar
Wetterfrosch
Offline
Beiträge: 125
Registriert: 08 Dez 2020, 10:49
Wohnort: 79410 Badenweiler (350mNN) / Breisgau-Hochschwarzwald
Hat sich bedankt: 44 mal
Danksagung erhalten: 10 mal
Kontaktdaten:

Re: Windrichtung per Vektorrechnung mitteln

#11

Beitrag von Wetterfrosch »

Hi Werner,

ich habe bei Windstille zwei Optionen, entweder wird Nord ausgegeben oder es wird die Windrichtung ausgegeben, in der die Windfahne stehen blieb, d.h. die zuletzt registrierte Windrichtung.

Ich persönlich finde die zweite Variante für sinnvoller, das ist aber nur meine persönliche Meinung.

Eine "Norm" für Wetternetzwerke diesbezüglich gibt es meines Wissens nicht und eigentlich spielt es ja bei Windstille auch keine Rolle welche Windrichtung man meldet, da bei Windstille ja jedem klar ist, dass die angezeigte Windrichtung keine "echte" Windrichtung ist.
WernerWetter
Offline
Beiträge: 42
Registriert: 07 Dez 2020, 17:19
Hat sich bedankt: 6 mal
Danksagung erhalten: 10 mal

Re: Windrichtung per Vektorrechnung mitteln

#12

Beitrag von WernerWetter »

So, jetzt habe ich nochmal in einer Spezifikation des DWD (siehe #8) nachgeschaut. Da steht:

<< falls ff= 0 : setze alpha = 0° >>

Falls die (mittlere) Windgeschwindigkeit 0 ist, sollte auch die Windrichtung auf 0 gesetzt werden. Komisch, ist aber wohl so.
Benutzeravatar
Hans Wildermuth
Offline
Beiträge: 15
Registriert: 13 Dez 2020, 17:52
Wohnort: Schaftlach
Hat sich bedankt: 6 mal
Kontaktdaten:

Windrichtung mitteln im alten Forum

#13

Beitrag von Hans Wildermuth »

Das Ganze hatten wir im alten Wetterstationsforum schon ergiebig diskutiert und beschrieben. Der Link geht nicht mehr, es gibt aber noch einen Beitrag dazu im WZ-Forum:
Link zum WZ-Forum

Hansgruß
www.wetterstation-schaftlach.de
WMR928NX, 2 NETATMO, CONRAD-Telemetrie (offline)
WernerWetter
Offline
Beiträge: 42
Registriert: 07 Dez 2020, 17:19
Hat sich bedankt: 6 mal
Danksagung erhalten: 10 mal

Re: Windrichtung per Vektorrechnung mitteln

#14

Beitrag von WernerWetter »

u = SIN(w * pi / 180)
v = COS(w * pi / 180)
w in Grad!
Die Rückrechnung unter Quadrantenabfrage:

winkel = ATN(ABS(u) / ABS(v)) * 180 / pi
Und wenn v -> 0 geht haben "wir" ein Problem :ugeek: . Deshalb gibt es folgende Festlegung in diesem DWD-Papier, auf das Michael in #8 verlinkt hat:

Code: Alles auswählen

   if (fabs(v) < 0.0001) // Almost zero
    {
      if (fabs(u) < 0.0001) // Almost zero
        Serial.print("0.0");
      else if (u < 0.0)
        Serial.print("270.0");
      else
        Serial.print("90.0");
    }
    else
    {
      // Siehe Formel oben 
Benutzeravatar
Hans Wildermuth
Offline
Beiträge: 15
Registriert: 13 Dez 2020, 17:52
Wohnort: Schaftlach
Hat sich bedankt: 6 mal
Kontaktdaten:

Division durch Null

#15

Beitrag von Hans Wildermuth »

Hallo Werner,
jetzt musste ich doch mal in meinen alten Unterlagen nachschauen, immerhin habe ich mich seit 2005 nicht mehr damit beschäftigt.
Eine Division durch Null muß abgefangen werden durch Zuordnung eines festen Wertes.
Warum das in meinem Programm auch ohne dieses Abfangen funktioniert hat liegt daran, daß v in der Praxis nie zu Null wurde.
V wurde als 10-Minutenmittel aus Einzelwerten mit 2 Hz abgefragt mit einer Auflösung von 1 Grad. Es kam nie vor, daß die Windfahne 10 Minuten lang so stand, daß v=0 wurde. Immerhin lief das Programm etwa 15 Jahre lang.
Die Abfrage, wenn Windgeschwindigkeit=0, dann Windrichtung=unbestimmt (oder was auch immer) erfolgt erst nach der Mittelung.
Aber es ist natürlich praktischer, die Division durch Null abzufangen, damit das Programm nicht abstürzt.
Hansgruß
www.wetterstation-schaftlach.de
WMR928NX, 2 NETATMO, CONRAD-Telemetrie (offline)
WernerWetter
Offline
Beiträge: 42
Registriert: 07 Dez 2020, 17:19
Hat sich bedankt: 6 mal
Danksagung erhalten: 10 mal

Re: Windrichtung per Vektorrechnung mitteln

#16

Beitrag von WernerWetter »

DWD_Formel.png
DWD_Formel.png (8.63 KiB) 304 mal betrachtet
Anhand des folgenden DWD Papiers wird die der X/Y Wert mit der Windgeschwindigkeit ff multipliziert. Wenn die Windgeschwindigkeit 0 ist ist auch der Teiler 0.
Antworten