Wetterstation Die Wetterstation ist als Projekt angelegt und wird daher laufend erweitert und optimiert. An dieser Stelle möchte ich technische Details der Wetterstation aufzeigen aber auch aktuelle Projektvorhaben und umgesetzte Erweiterungen oder Verbesserungen. Das sind einerseits Informationen zu Hard- und Software, andererseits aber auch Erfahrungen und Modifikationen der Anlage.
|
![]() |
![]() |
erste Modifikation In der kalten Jahreszeit besteht die Gefahr, dass der Niederschlagssensor einfriert oder durch den Schnee völlig überfüllt wird und damit keine Messwerte mehr liefert.
|
![]() |
Abhilfe soll hier eine Niedervolt-Heizfolie (12V) schaffen. Kosten: 7,35€/Stück
|
![]() |
Heizung Damit der ganze trichter beheizt werden kann, sind 2 Heizfolien erforderlich. Die Folien sind selbstklebend und werden wie gezeigt auf der Unterseite des trichters aufgeklebt. Anschließend werden die Drähte verlötet und mit Schrumpfschlauch (mit Innenkleber) geschützt. |
![]() |
Ein Heizelement gibt ca. 13Watt an
Heizleistung ab. Dies ist jedoch deutlich mehr als erforderlich
und daher werden die Elemente in Reihe geschaltet. Daraus folgt: Halbe Betriebsspannung
je Element -> also 25% der Leistung. In Zahlen ausgedrückt
etwa 3Watt pro Element. Dies reicht aus um den trichter vor Vereisung zu schützen.
Lose Drähte werden mittels Heißkleber so fixiert, dass sie keinesfalls die Regenwippe
berühren bzw. blockieren können.
|
![]() |
für die Steuerung Ein Thermostat im benachbarten Anschlußkasten schaltet die Versorgungsspannung ein, sobald die Außentemperatur unter +3°C fällt.
|
Messwerte erfassen, archivieren und darstellen Was bietet uns hier der Hersteller an? Mittlerweile ist es gängige Praxis, dass Hersteller neben dem Verkauf ihrer Geräte auch Portale für deren Nutzung betreiben. Ziel ist es dem Kunden ein kostenpflichtiges Abo zu verkaufen, sodass dauerhafte Umsätze generiert werden.:-( So ist es leider auch beim hier vorliegenden Hersteller. Die Messwerte der Wetterstation können zwar live auf dem PC/Smartphone mitverfolgt werden, eine Speicherung der Daten ist jedoch nicht ohne Weiteres möglich. Bei der angebotenen kostenlosen Plattform sind die Auswertemöglichkeiten eher bescheiden. Die Darstellung der Messwerte wird vom Hersteller größtenteils fest vorgegeben und die deutsche Übersetzung ist mangelhaft. Die komfortable Darstellung der Messwerte ist kostenpflichtig. Diese Lösung kommt definitiv nicht in Frage. Was liegt nun näher, als die eigene Verarbeitung und Speicherung der vorliegenden Messdaten? Mal überlegen, was ist zu tun???
- Daten aus der Wetterstation auslesen
- Ein Mini-PC für die Ablaufsteuerung
|
![]() |
Kommunikation mit der Wetterstation Eine Abfrage der Daten kann nun unter: http://192.168.178.116/v1/current_conditions erfolgen. |
![]() |
Beispiel hier: Temperatur 36,9 F entspricht 2,7°C
|
![]() |
Datenbank Auch die Bezeichnung der Messwerte wird 1:1 in die Spaltenüberschrift übernommen. z.B. "temp", "hum", "dew_point"... Nachdem die Messwerte empfangen und umgerechnet wurden, erfolgt die Ablage in der Datenbank. Die Datenbank speichert hierzu jeweils die zugehörige Uhrzeit mit Datum. Damit ist gewährleistet, dass Auswertungen über beliebige Zeiträume möglich sind. |
![]() |
Beispiel: Tagestemperaturverlauf, incl Auswertung der min / max Werte sowie deren Uhrzeit |
Damit die Abfrage und Speicherung automatisiert werden kann ist ein wenig
Programmieraufwand notwendig. Ich habe ein php-Skript geschrieben, welches genau diese
Aufgaben erledigt.
Hierzu ist allerdings ein lokaler Webserver erforderlich, welcher den php-Code versteht
und ausführen kann.
Beispiel: Apache (freeware)
Dieses Skript ist vom Prinzip her eine Webseite, welche beim Aufruf einen vorgegebenen
Programmcode startet.
Die folgenden Ausschnitte zeigen die wichtigsten Funktionen des Skripts. |
![]() |
Datenbank einrichten Die Userdaten stehen in der externen Datei inc/db.php |
![]() |
Die Struktur aus dem Antwortstring bleibt grundsätzlich erhalten. Die Kenntnis dieser Struktur hilft sehr beim Verständnis dieser Funktion. |
![]() |
Temperatur: Grad Celsius = 5/9*(Farenheit-32) Windgeschwindigkeit: km/h = 1,609*mph Luftdruck: hPa = 33.86*inHG |
![]() |
Datenbank beschreiben Zuletzt folgt die Speicherung der der SQL-Datenbank. */3 * * * * /usr/bin/wget -O - -q -t 1 http://192.168.178.12/wetterstation.php |
|
Datenbank auslesen und Webseite erstellen Die zuvor erfassten Daten können nun zur Darstellung auf einer Webseite aus der Datenbank abgefragt werden. Bei der Gestaltung der Seite sind der Kreativität keine Grenzen gesetzt. Ich zeige hier ein einfaches Beispiel, wie sämtliche Messwerte übersichtlich in einer Tabelle dargestellt werden können. Schauen wir uns zunächst noch einmal die Struktur der aufgezeichneten Messwerte an: Die Tabelle in der Datenbank enthält für jeden Messwert jeweils eine Spalte; also Temperatur, Luftfeuchtigkeit, Niederschlagsmenge usw. Die Überschriften der Spalten wurden nach dem Format von Davis benannt. Temperatur heißt dort 'temp', Luftfeuchtigkeit heißt 'hum' usw.... Wir selbst wissen zwar was damit gemeint ist, aber für eine allgemein verständliche Darstellung auf der Webseite sollen die ausführlichen Begriffe verwendet werden. Außerdem soll zu jedem Messwert die zugehörige Einheit dargestellt werden. Daher wird in der Datenbank eine weitere Tabelle mit dem namen 'Struktur' angelegt, welche die Zuordnung der namen und der jeweiligen Einheiten beinhaltet. Beispiel: temp -> Temperatur -> °C Wenn wir nun eine Anfrage an unsere Wetterdatenbank stellen, so erhalten wir beispielsweise: 'hum, 83.6' Mit der Antwort 'hum' fragen wir bei der zweiten Tabelle nach und bekommen als Antwort 'Luftfeuchtigkeit, % rel.' Mit beiden Antworten können wir nun auf der Webseite den Messwert 'Luftfeuchtigkeit: 83,6% rel.' darstellen. |
Wetterkamera Die tabellarische Darstellung der Messwerte und die Darstellung in Diagrammform vermitteln einen präzisen Eindruck über die aktuelle Wetterlage bzw. deren Verlauf. Häufig kann aber eine visuelle Information viel mehr über die aktuelle Wetterlage aussagen als zahlreiche Messwerte. Wie heißt es so schön? "Ein Bild sagt mehr als tausend Worte". Daraus entstand die Idee einer Wetterkamera. Umgesetzt wird dieses Projekt, wie bereits zuvor, mit dem Minicomputer (hier: Raspberry pi). Folgende Aufgaben sind hier zu erfüllen: - Aktuelles Foto von einer Außenkamera anfordern - Fotobearbeitung (Auflösung, Größe) - Messwerte aus der Datenbank abfragen - Abfrage der Wetterwarnungen beim DWD - Größe und Position des Windpfeils berechnen, Größe ändert sich je nach Windstärke - sämtliche Informationen, Icons und Flächen ins Foto einblenden - jede Minute ein neues Foto auf den Webserver hochladen - die letzten 60 Fotos werden auf dem Webserver gespeichert und können als Animation abgespielt werden. Danach werden die Fotos gelöscht. - Die Aufnahmerichtung schwenkt einmal pro Stunde über den Ortskern hin und her. (seit Version 5.0) Sämtliche Einblendungen sind dynamisch und werden in Abhängigkeit der Wetterdaten, Tageszeit und Warnmeldungen erzeugt. Folgende Informationen können aus dem Bild der Wetterkamera entnommen werden: - optischer Eindruck der aktuellen Wetterlage - Windrichtung, Windstärke - Temperatur, Taupunkt, Luftdruck, Luftfeuchte - Niederschlagsintensität und Menge - Sonnenaufgang/-untergang - Sichtweite über Markierungen im Bild ![]() ![]() ![]() zu bewerten ist die Horizontlinie, die unmittelbar unten an die Makrierung angrenzt. Foto links und mitte : Sichtbedingung erfüllt, Foto rechts: Sichtbedingung nicht erfüllt - aktuelle Wetterwarnungen (seit Version 4.3) - Werte des Regensensors (seit Version 6.5) ![]() |
Niederschlagssensor Im laufenden Betrieb der Anlage war immer wieder festzustellen, dass bei leichtem Regen die Regenrate mit 0mm/h angezeigt wird. Wie kommt das? Um dies zu verstehen müssen wir uns einmal die Funktionsweise der Messung genauer anschauen: Die Wetterstation erfasst die Niederschlagsmenge über einen sogenannten Kipplöffelsensor. Hierbei wird der Niederschlag über einen Trichter gesammelt und dem Kipplöffel zugeführt. Beim Erreichen einer bestimmten Füllmenge wird der Kippvorgang ausgelöst. Der Löffel entleert sich. Durch das Zählen der Kippvorgänge wird die tatsächliche Regenmenge ermittelt. Was bedeutet dies für die Praxis? Bei kleinen Niederschlagsraten kommt es nicht, bzw. sehr stark verzögert zur Auslösung. Die Wetterstation nimmt geringe Niederschläge folglich nicht wahr. Abhilfe schafft hier ein zusätzlicher Sensor: ![]() Zum Beispiel der Regensensor m152k von Kemo, er arbeitet nach dem kapazitiven Erkennungsprinzip und kann bereits wenige tropfen auf der Sensorfläche erkennen. Vorteil: die Sensorfläche ist elektrisch isoliert und kann daher nicht oxidieren. Der Relaisausgang des Sensors wird mittels Microcontroller (ESP8266) erfasst und die Information an den zentralen Webserver weitergeleitet. Dort erfolgt der Eintrag der Messwerte in die bereits beschriebne mySQL Datenbank. Durch die schräge Montage kann das Wasser schneller ablaufen. Die Kabelbinder sollen verhindern, dass sich Vögel auf den Sensor setzen. Was wurde damit erreicht? Ergebnis: bei leichtem Regen wird nun in der Tabelle (Menupunkt Messwerte) und im Bild der Wetterkamera der Hinweis "Sprühregen" angezeigt. Beachte: Da wir nun das Messprinzip kennen, wissen wir, warum die Regenrate mit 0mm/h angezeigt wird. |