Wetteridee testen?

Hallo zusammen!

Die Wettervorhersage wird AFAIK durch das Sammeln unzähliger Messwerte und deren Verrechnung in was-weiß-ich-wievielen Algorithmen erzeugt. Der Aufwand dafür ist mit Sicherheit nicht gerade klein.

Meine Idee ist, eine nicht allzu große Zahl Messwerte pro Messpunkt in einem neuronalen Netzwerk zu verwurschteln und zu sehen, was dieses neuronale Netz daraus macht. Ich kann mir vorstellen, dass der o.g. „brute force“-Ansatz vielleicht zu guten Ergebnissen führt, aber dass mit einem deutlich kleineren Einsatz an Resourcen ein ebenso gutes Ergebnis erreicht werden kann.

Nunja, dazu wollte ich mich mal mit ESPs und diesen kombinierten Luftfeuchte-/Temperatursensoren beschäftigen, deren Name mir gerade nicht einfällt. Ach ja: DHT 11, oder?

Einen Mini-ESP und ein passendes DHT-Dingsda-Modul habe ich (Foto). Und wie man das Ding programmiert, habe ich auch schon herausgefunden (wirklich hilfreiche Seiten für Anfänger scheint es nicht zu geben).
Was fehlt, ist der Code, der Luftfeuchte und Temperatur ausliest und an einen Webserver (auch hier vorhanden) schickt.

Wenn es genug Leute gibt, die sozusagen ein einzelnes „Eingangsneuron“ in einer passend großen „Sensorfläche“ darstellen, sollte man das doch mal probieren können, oder nicht? Und die beteiligten ESPs als Teile des neuronalen Netzes zu benutzen müsste auch möglich sein, denke ich.

Ich hoffe, mein Geschreibsel ist verständlich :slight_smile: Kommentare zu meiner Idee und Hilfe beim Code sind sehr willkommen!

Gruß

Gregor

Wenn DHT, dann lieber den DHT22, ansonsten BME280, da hast Du auch den Luftdruck mit.

Gruß Tommy

Tommy56:
Wenn DHT, dann lieber den DHT22, ansonsten BME280, da hast Du auch den Luftdruck mit.

Der DHT11 ist halt erheblich günstiger. Wobei der Luftdruck allerdings ein ziemlich interessanter Messwert ist. Kann man das nicht so programmieren, dass erkannt wird, was dran hängt? würde mich wundern, wenn es nicht möglich wäre, das entweder zu erkennen oder mit einem Jumper o. ä. zu konfigurieren.

Gruß

Gregor

DHT hat ein eigenes Protokoll, BME289 spricht I2C.
Für den Preis eines DHT11 in DE bekommst Du annähernd einen BME280 beim fC.

Gruß Tommy

Wie willst du denn eine Wettervorhersage machen nur mit Hilfe von Temperatur und Luftfeuchte? :o

Hi

Der DHT11 soll nicht 'der Beste Seiner Art' sein - der DHT22 ist Da schon um Einiges genauer.
Allerdings lass ich viel über Ausfälle von DHTxx Sensoren, auch soll man Diese 'ab und zu' kalibrieren müssen (oder eben, wenn Diese ausgefallen waren - kA).
Selber habe ich wohl einen DHT22 auf dem Küchenkühlschrank liegen.
Ein Zweiter ist wohl ebenfalls irgendwo verbaut, wenn auch nicht aktiv.
Drei liegen noch in dem damaligen Blister-Spender, also jungfräulich.
Der BME280 ist gleich um Einiges teurer, vll. liest man auch deshalb - Er wird weniger oft benutzt - Nichts von Ausfällen.
Davon ab, bietet der BME280 die Daten schon fertig an, wenn ich mich recht entsinne, musste man die Messwerte des DHT22 noch umrechnen (ok, kein Hexenwerk) und außerdem ist der BME280 am I²C-Bus flexibler - also man wirft nicht den einen Pin nur für den einen Sensor weg.

Hätte mich ja mit BME280-5V schon eingedeckt, mein FC war aber gar nicht so freundlich und zählen konnte Er auch nicht richtig - wir haben dann beschlossen, daß Er Sein Leben weiter führen soll - aber ohne mich.
(jetzt muß ich jedes Mal checken, ob Dieser oder Jener FC 'mein Liebling' ist und ich dort doch nicht kaufen will)

MfG

Meine BME280-Module laufen auch problemlos an 3,3V am ESP8266.

Gruß Tommy

Was für neuronale Netzte meinst du?

Wenn du ein neuronales Netzt meinst wie man es nutzen kann um Dinge “vorhersagen” zu lassen oder handgeschriebene Zahlen zu erkennen usw:

So einfach ist das definitiv nicht.

Du musst erst einmal wissen was du als Ergebnis von neuronalen Netz erwartest
(Wetter wird morgen gut? Ja - Nein; Welche Temperatur wird es morgen wann haben usw.).

Darauf aufbauend musst du dir Gedanken über ein vernünftiges Model für dein neuronales Netz machen denn für jede Aufgabe gibt es verschiedene herangehensweisen an das Problem.
Das schließt nicht nur die Struktur des Netztes selbst ein sondern auch welche Aktivierungsfunktionen du im Ausgangslayer nutzt (für Zwischenlayer ists meistens ReLu).

Dazu must du dir unter anderem auch überlegen was für Wetterdaten du mit dem neuronalen Netz auswerten und wie du diese vorher aufbereiten willst (ja man kann bessere Ergebnisse erziehlen wenn man die Daten vorher richtig aufbereitet).

Was aber noch aufwändiger ist:
Du brauchst unzählige Trainingsdaten und Validierungsdaten damit du dein Model trainieren kannst und das ist ein Punkt der nicht wirklich trivial ist, weil du dir überlegen musst wo du die herbekommst, wie du sie aufbereitest, welche Strategie du zum Anlernen nimmst (da gibt es einige) usw.

Wenn du nochnie vorher was gemacht hast mit neuronalen Netzten ist das sicherlich absoluter Overkill.
Wenn du in die Thematik reinkommen willst probiert man sich für gewöhnlich erstmal mit so Dingen wie MNIST usw. arbeitet sich langsam hoch.

MNIST ist - wenn man den Dreh raus hat - nicht so schwer
aber mehr als das und ein Kurs habe ich bisher auch nicht gemacht.

Wenn du dich in die Thematik einlesen willst kann ich dir
http://neuralnetworksanddeeplearning.com/chap1.html

und den (freien) Kurs von Andrew NG auf Coursera empfehlen.
Sowie haufenweise Internetrecherche.

Das ist ein ziehmlich interessantes Themengebiet (leider keine mehr Zeit ratm)

Ein BME Teil gehört zu meiner nächsten Anschaffung, sie sind in vielen Kaufgeräten verbaut und laufen anscheinend problemlos. Einen DHT22 hab ich seit Jahren noch eingeschweißt herumliegen und werde ihn auch nie benutzen wegen den bekannten Problemen.. Mir liegt der BME680 in der Nase da er zusätzlich noch die Luftqualität misst. Außerdem funktionieren die nackten Teile schon ab 1,71V was interessant für den Akkubetrieb ist.

Gruß

Schau Dir aber vorher im Datenblatt die Messbedingungen (Heizen usw.) für die Luftqualität an. Ich habe sie nur überflogen und das Thema ad acta gelegt. Das sprich in meinen Augen gegen Akkubetrieb.

Gruß Tommy

Hab den aber auch schon in einem mobilen Gerät gesehen, z.B. dem Uradmonitor model D, siehe Anhang.
Aber danke für den Tipp! :slight_smile:

modul_d.pdf (263 KB)

Hi

Meine BME280 waren mit dem Zusatz -5V für 5V-Betrieb - der 'Normale' scheint ein 3,3V-Chip zu sein.

MfG

Man bekommt eine gute Trefferquote hin, wenn man das Wetter von heute
unter der Berücksichtigung des aktuellen Trends (vorgestern, etc) für morgen vorhersagt.

Wetter ändert sich überwiegend langsam, regelmäßig ist ‘morgen’ ein ähnliches Wetter wie ‘heute’.

Die Methode ist zwar nicht ‘Arduino/ESP’, aber wesentlich unaufwendiger und berückschtigt im Gegensatz zu einem simplen neuronalen Netz Trends.

Auch wenn die Stimmen doch recht negativ sind und der Erfolg vermutlich überschaubar, finde ich die Idee, bzw. den Lerneffekt zur Durchführung, sehr interessant.
Zum einen ist es sicherlich eine nette Spielerei die Wetterdaten vor Ort festzuhalten.
Zum anderen habe ich durchaus die Möglichkeiten auf eine große Knowledgebase, als auch die Technologien zugreifen zu können.
Microsoft ist da schon weit vorne, was API´s zu IoT, BigData Auswertungen, Prediction, usw. angeht. Da hätte ich zumindest den vollen Zugriff.
Gibt bestimmt auch andere (OpenSource, kostenlose, usw.) Alternativen, für mich wäre aber gerade das ein interessanter Aspekt.

Vielleicht sollte man die Daten allgemein zugreifbar ablegen und dann spielt jeder selbst mit seinem Neuronalen Netzwerk rum :slight_smile:

Wenn das mal nicht ein netter Spielkram für das gesammte Forum sein könnte... Viele einzelne Messpunkte würden in einer Datenbank schon deutlich mehr Spass/Sinn machen bei der Aufbereitung. Also ich könnte Kiel/Schleswig-Holstein anbieten... :smiley:

Ich glaube Golem hat so etwas doch mal mit Büro Temperaturen.

Gruß SG

Scherheinz:
Wie willst du denn eine Wettervorhersage machen nur mit Hilfe von Temperatur und Luftfeuchte? :o

Tommy hat ja schon angeregt, einen DHT zu nehmen, der auch den Luftdruck misst.

Aber davon abgesehen: Wenn man sich animierte Wetterkarten ansieht, sieht man immer ähnliche Dinge. Und was daraus wird, kann man - so macht man das AFAIK bislang - mehr oder weniger gut berechnen. Meine Idee ist einfach, ein neuronales Netz mit verschiedenen Messwerten zu füttern und es zu trainieren. Wie man das benutzen kann, um eine Vorhersage (wovon auch immer - Niederschlag, Temperatur ...) zu generieren, weiß ich (noch) nicht, aber ich kann mir vorstellen, dass man viele Millionen Rechenvorgänge, wie sie bei der klassischen Wettervorhersage anfallen, durch ein gut trainiertes neuronales Netz ersetzen kann. Ein neuronales Netz hat gegenüber der üblichen Methode einige Vorteile (wenn ich das richtig verstehe). Es kann zum Beispiel mit fehlerhaften oder unvollständigen/„unscharfen“ Daten besser umgehen als ein verhältnismäßig starrer Algorithmus, der auf Mathe bzw. Physik basiert. Deshalb ist die absolute Genauigkeit der Messwerte vielleicht gar nicht so wichtig - ich kann mir vorstellen, dass eine Angabe wie „wärmer als gestern“ ausreichend ist.

Das ist wie gesagt nur eine Idee, die ich aber gerne mal ein bisschen ausarbeiten und testen möchte.

Gruß

Gregor

Ich will dir das auch nicht ausreden, ganz im Gegenteil! :slight_smile: Aber entscheident für die Wetteränderungen sind doch die Winde vorallem wenn es um Niederschlag geht.

Kennst du diese Seite?

https://openweathermap.org/

Falls nicht, dort kann jeder die Daten seiner eigenen Wetterstation mit einbringen und daraus werden dann Karten und Voraussagen entwickelt, ist vielleicht interessant zu sehen.

Gruß

Scherheinz:
...Aber entscheidend für die Wetteränderungen sind doch die Winde ...

Gruß

Ventusky - Wind, Rain and Temperature Maps --- stimmt nicht immer alles, weil kaum was gemessen und fast alles errechnet ist, aber lehrreich ist es trotzdem.

Da kann wenige hundert Meter höher der Wind schon aus der entgegengesetzten Richtung wehen, und mit sehr unterschiedlicher Stärke sowieso ! Ventusky - Wind, Rain and Temperature Maps

Scherheinz:
Kennst du diese Seite?
https://openweathermap.org/

Nein, die kannte ich noch nicht. Sieht aber interessant aus. Ich werde mal gucken, ob die irgendwo beschreiben, wie deren Vorhersagen entstehen.

Gruß

Gregor

noiasca:
da ich in #12 auch schon darauf hinwies:
bitte noch mal zurückblättern und lesen - vielleicht steckt noch mehr Informationen im Post die du möglicherweise überlesen hast.

Ups, ja. Da habe ich einiges übersehen. Dann mache ich mich mal auf die Suche nach diesem Openweather-Dings.

Gruß

Gregor

PS: openweather.com ist jetzt wohl http://www.weatherforecastmap.com. Schön, dass die „Widgets“ für viele Orte haben. So ein Widget ist ein Stück HTML-Code, den man auf seiner Website platzieren kann. Mal sehen, wo ich das hintu’ …

PPS: Vielleicht interessiert das ja: Angefangen hat die Idee mit der Aufzeichnung von Wetterdaten, zunächst nur Luftfeuchte und Temperatur, weil ich diese Sachen bei mir liegen habe. Aus einer passend langen Messreihe könnte man vielleicht Dinge wie „vorgestern wars in Stuttgart ziemlich kalt, heute fiel die Temperatur innerhalb von zwei Stunden um zehn Grad, also schifft’s übermorgen“ erzeugen. Naja, dann kam einer meiner RPis dazu …