Kusi's kleine Funk-Wetterstation

 Das Ding ist noch im Provisorischem Aufbau. Aber die Innenstation läuft bereits. Gesendet wird auf ca.433MHz. Aufgebaut ist das ganze mit zwei Arduino's. Einigen Sensoren, Funk Sender und Empfänger. Ein Netzwerkmodul und eine Echtzeituhr mit Stützbatterie.

 Der Empfänger:

Der Empfänger, empfängt nicht nur die Daten der Aussenstation. Er misst auch die Luft in meinem Wohnzimmer. Jede Stunde werden die Daten an den Server im Internet gesendet. Er Steuert gleichzeitig auch die Storen und das Licht. Zugleich hab ich auch eine Uhr eingebaut und mit Weckfunktion versehen. Meine kleine Chilipflanze ist Dankbar, das ich am Morgen nicht immer vergesse die Storen zu öffnen. Der Luftdrucksensor wurde von der Aussenstation in die Innenstation verlegt, da bei kalten und negativen Temperaturen eine zu ungenaue messung erfolgt.

 Die Aussenstation

Der Sender und die Sensoren sind getestet und Funktionieren. Der Sender ist noch ein wenig zu schwach. Deswegen wird die Leistung noch von <10mW auf ca. 35mW erhöht. Was aber dazu führt, das ich eine höhere Spannung benötige. Nun muss die Schaltung fest aufgebaut werden. Und im Messhäuschen montiert.
Heute (11.1.2015) habe ich angefangen den Sender aufzubauen. Auf dem Bord ist der Sender und der Luftfeuchtigkeitssensor. Die 12V vom Netzteil werden über die Platine geschlauft, da der stärkere Sender die höhere Spannung benötigt benötigt. Die 5V für die Sensoren, werden auch auf der Platine erzeugt. Somit habe ich für die Sensoren 1A zu Verfügung, da es mit den max. 200mA vom Arduino, extrem knapp werden kann. Der Sender habe ich nun an der endgültigen Position getestet. Und Läuft einwandfrei. 24.5.2015 Der ArduinoUno wurde gegen einen ArduinoMini getausch, der jetzt direkt auf die Platine gesteckt wird. Auf der Platine sind die 12V für den Sender, 5V für den Arduino und einige Sensoren und neu auch 3.3V für den UV Sensor. Die Windsensoren und Lichtsensoren werden mit einer Stecklieste mit der Platine verbunden. So kann ich jedes Teil ohne zu Löten einzeln ausbauen. (Foto folgt)

.

Das Messhäuschen

 Ist eine einfache Holzkonstruktion und wird auf einem ca. 1.5Meter hohen Pfosten montiert. Es hat genügend Abstand zum Haus und hat von Nord/Süd und Ost/West genügend Platz. Hier fehlt noch die Tür und die Befestigung für die Platte mit den Sensoren. Danach wird das ganze noch mit einem Wetterfesten Lack überzogen.

Heute (9.1.2015) habe ich dem Messhäuschen eine Innenwand und die Tür spendiert. Die Innenwand ist 5mm Dick, also ideal zum befestigen der Elektronik. Auf der Rückseite ist genügend Platz für das Netzteil. Die Rückwand und die Tür haben oben direckt unter dem Dach einen Spalt, wo die Warme Luft austreten kann. in den Boden Bohre ich noch ein paar Löcher. So ist sichergestellt, das ich die wirkliche Aussentemperatur messe und nicht irgendwelche Stauwärme.

Heute am 16.5.2015 habe ich das Häuschen draussen montiert und in betrieb genommen. Gesendet wurde von Anfang an richtig. Auch mit dem Empfang klappt alles hervorragend. Nur die PHP Verbindung zickte wider mal ordentlich. So kam es, das der offizielle Start der Wetterstation erst am 17.5.2015 0:10 war.

 

Neu ab 24.5.2015 Wird auch die Windgeschwindigkeit gemessen. Zudem wird der Hitzeindex oder der Windchill angezeigt. Aber erst, wenn diese Werte zum Tragen kommen.
Die Grafik für den aussenbereich wurde neu eingeteil. Die Werte liegen nun zwischen -20°C und + 40°C Wiso gerade diese werte? Höher oder Tiefer funktioniert die Elektronik nicht mehr genau. Und seit Januar 1987. Minus 21,1 Grad, sanken die Temperaturen in Bern nie mehr unter minus 20 Grad. Die höchste gemessene Temperatur in der Schweiz war Juli 1952 39° in Basel.

20.6.2015 Die Aussenstation habe ich demontiert, da der Holzpfosten einem Fahnenmast Platz machen muss. Somit sind die Windsensoren endlich auf 5m Höhe. Das ganze sieht auch ein wenig besser aus. Zudem geht der lange Traum von einer eigenen Fahne im Garten in Erfüllung.

23.6.2015 So nun steht der ca. 5m hohe Fahnenmast und ganz oben thronen die Windsensoren. Jetzt muss nur noch das Messhäuschen wieder Montiert werden. Und dann kann die Station auch wider in betrieb genommen werden.

11.8.2015

Die Aussenstation ist jetzt knapp 3 Monate im dauerbetrieb. Die Innenstation noch länger. Abgesehn von Stromausfall und ausfall des Rauters, hatte ich bisher keine Probleme. Selbst die hohen Temperaturen in diesem Sommer hat der schaltung nichts ausgemacht. So schlecht, sind diese "Hobby Prozessoren" und Sensoren gar nicht. Mann kann durchaus etwas brauchbares daraus machen.

15.8.2015

Heute habe ich bei der Aussenstation den Temperatur und Luftfeuchtigkeitssensor DHT22 durch ein DHT33 Sensor ersetzt. Der unterschied ist, das der neue Sensor, einen geeichte Temperaturfühler hat und somit genauer misst. Die Licht Sensoren wurden angeschlossen, aber noch ohne Software und Glas zur Aussenwelt. Neu werden auch Spitzengeschwindigkeit gemessen. 

9.1.2016

 

Regensensor wurde in Betrieb genommen. Momentan ist gerade eine Regnerische Zeit. Zum Testen Ideal aber leider viel zu warm für diese Jahreszeit.

Auto-Reset des Senders wurde eingeführt. Es löst 1x in der Woche aus

Sender und Sensoren Debug wurde beim Sender Programmiert.

Ich war auch lange damit beschäftigt, einen Fehler zu Suchen. Der fiel mir erst ach längerem aufzeichnen der Werte auf. Sowohl der Windgeschwindigkeits Sensor und der Regen Sensor, werden mittels Interrupt ausgelesen. Obwohl der Regensensor nicht Angeschlossen war sondern nur ein ein Pullup Widerstand. Traten Fehler auf. Zur gleichen zeit, wie extreme Windspitzen gemessen wurden, zeichnete auch der Regensensor auf. Zuerst bekamm meine 5V Versorgungsspannung einen grossen Stütz Kondensator, um kurzzeitige, grosse Stromeinbrüche zu verhindern. Weiter spendierte ich diesen Sensoren einen Schmitt - Triger, um Störungen vom Readkontackt zu minimieren. Das brachte schon eine sehr grosse Verbesserung. Wichtig war auch, den Regensensor soweit unten am Mast wie möglich anzubringen, da zu starkes Schwanken der Mastspitze die Messwippe auslösen kann. Ich bin jetzt noch auf der Suche, nach einem 4-Poligen Kabel mit Abschiermung. Da die langen Leitungen neben dem Stahlmast immer noch zu viele Störungen aufnehmen. Beim Wind wären diese minimalen Fehler jetzt vernachlässigbar. Aber beim Regensensor, der eine sehr grobe Auflösung hat, haben diese zu starke Auswirkungen auf das Resultat.

Solange diese "Elementaren" Sensoren noch zu viele probleme machen, wollte ich diese erst ausbügeln, bevor die Lichtsensoren endlich montiert werden. Hier habe ich eine sehr gute Lösung gefunden, ohne das Licht mit Glas zu Filtern. Die Sensoren wurden in Epoxydharz vergossen, so das die Sensorflächen frei sind, aber die Lötstellen, Leiterbahnen und andere Bauteile vom Harz geschützt. Epoxydharz wird auch im Schiffsbau verwendet und ist sehr Witterungsbständig.

Nachtrag: Leider ist der Harz über den Winter spröde geworden. Dadurch sind die Kontakte oxidiert. Somit werde ich kin Licht messen.

 

12.1.2016

Die berechnung der Regentagesmenge, hat einen gewaltigen Haken! Resete ich den Empfänger bei Wartungen, sind die Daten weg. Beispiel: Geschiet das Reset 18:30, so fehlen bei der Windgeschwindigkeit ca. 20min an Daten. Da aber der Durchschnitt berechnet wird fällt das nich sonderlich ins Gewicht. Für die Regenmenge, die jede Stunde dazugezählt wird, Fehlen 10 Stunden! Nun hat die eingebaute Hardware-Uhr zusätzlich noch 56 Byte zu verfügung, die über die Stützbatterie geschützt sind. Davon nutzte ich nun 2Byte für den Aktuellen wert der addiert wird und 2Byte Für den Wert der übertragen wird. Somit ist Sichergestellt, das diese Werte nicht verloren gehen. Nun läuft der Test der Software 2-3 Tage. Solange wird die Tages Regenmenge nur in der "Tabelle der Woche" angezeigt. Es ist aber noch mit Fehlern zu Rechnen.  

Anmerkung: Heutezutage wird im Gigabyte oder Terabyte gerechnet. Da scheinen 56Byte geradzu lachhaft klein zu sein. Reicht aber schon zimlich weit, wenn mann nur einzelne Zahlen-Werte Speichern will.

31.1.2016

Gestern war ein Tag mit kräftigen Windböhen. Aber da diese extremen Windstösse nur sehr kurz waren wurden Sie nicht erfasst. Daswegen werden die jetzt die Spitzengeschwindigkeiten jede sekunden lang gemessen. Diese "kleine" Änderung bedingte aber das die Aussenstation bereits die Windspitzten berechnet, aussortiert und einzeln überträgt. Von den übertragenen Spitzen muss dan auch wider der Empfänger die höchste aussortieren.

30.5.2016

Der ganze Code, der Innen und Aussenstation wurde überarbeitet. Sämtliche Kabel zu den Wind und Regen Sensoren wurden durch Abgeschiermte Kabel ersetzt. Die Aussenstation, sortiert Windspitzen über 250km/h aus. Da die Windspitzen über 1000km/h grösst wahrscheinlich, messfehler vom Sensor sind. Sollten sie immer noch auftreten geht die Fehlersuche von neuem Los. Der Regensensor sollte nun ab Morgen richtig Laufen und ab Juni auch richtige Tageswerte Ausgeben. Die Debug übertragung wurde wider entfernt, da sie mehr Probleme machte als löste.

31.5.2016

So, nach einem verregneten Tag ist mir nur noch eines klar. Zwei Interrupts an einem Arduino mini funktioniert nicht! Es muss also eine andere lösung her. So eine Art Hardwarezähler für den Regensensor, der die Werte auf Anfrage ausspuckt. I2C oder Serial.

14.7.2016

 Mit dem neuen Projekt, schleicht sich gleichzeitig der Hardware Zähler für den Regen ein. Aber auch die Windgeschwindigkeit wird in einem separaten Prozessor ausgelagert. Die Ansteuerung erfolgt über I2C. Ich habe immer noch die Hoffnung das anschliessend alles läuft.

17.7.2016

So sieht jetzt die Elektronik aus, nach dem Upgrade. Für alle Interessierten, wird die Software von allen uP, noch zur verfügungestellt. Weiter unten ein Blockdiagram.
Entlich habe ich mehr Informationen zu Windböhen gefunden. Ich werde die Messzeit der Windspitze von 2 auf 5sekunden bei dem nächst Softwareupdate erhöhen.

Oben links: Arduino Mini Das Herzstück der Wetterstation Sammelt alle Daten und Kommuniziert.
Unten lins: DHT33 Luftfeuchtigkeit und Temperatursensor.
Mitte oben: Attiny 84 (Pink) Liest den Regensensor aus.
Mitte Mitte: Attiny 84 (grün) Liest die Windgeschwindigkeit aus.
Mitte unten: Freier vorbereiteter Steckplatz für noch ein Attiny 84. Für evetl spätere erweiterungen
Rechts oben neben dem Pinken uP: Shmitttrigger für Windgeschwindigkeit und Regensensor.
Rechts ganz am rand: 3 Schnitzstelle. von Oben herab. Windsensoren, Regensensor und I2C.
Rechts unterhalb der Schnittstellen: 5V Stabi IC mit Kondensator, Buchse für 12V Anschluss.
Ganz unten rechts: Sender mit Antenne.

Passend dazu, ein Blockdiagram:

25.7.2016
Die Software wurde Aktualisiert. Die Windspitzen wurde die Messzeit von 2 auf 5 Sekunden angehoben. Neu kommt noch eine Blitzerkennung hinzu. Die Idee und Schaltung ist von Burkhard Kainka www.elektronik-labor.de Die Software habe ich in "Arduino C" umgeschrieben und für meine Wetterstation angepasst.
ACHTUNG: Meine Schaltung zeichnet Blitze auf. Es ist NICHT als Vorwarnung gedacht!


2.8.2016
Grafik wurde angepasst. Die Tagesregenmenge wird jetzt als "Messbecher" angezeigt. Die stündliche Regenmenge wurde in das oberste Diagramm verschoben. Somit ist die Abhängigkeit von Temperatur, Luftfeuchtigkeit und Regen besser sichtbar.


14.8.2016
Seit 18:30 (erster korrekter Eintrag 20:11) Funktioniert nun die Übertragung der "Blitze" resp. Störungsspitzen sogenannte Sferics. Der wert sprang auch gleich hoch. Zwischen 20:00 und 21:00 Wurden in den Alpen, zwischen Interlaken und Lugano, auf www.blitzortung.org, Blitze registriert. Das wäre eine Distanz von ca. 80km - 120km. Anschliessend "wanderten" die Blitze weiter Richtung SSO und hing 22:00 zwischen Tessin und Graubünden und die Anzahl Blitze nahm zu. Die Distanz entspricht dabei etwa 180km.
Wenn das Teil jetzt tatsächlich auf über 200km Blitze registriert, könnten die Werte etwa stimmen. Meine Erfahrung, ist aber, dass ich wahrscheinlich wieder mal Mist messe.


1.11.2016
So etliche Gewitter und auch Gewitterfreie Tage später bin ich zur Erkenntnis gekommen, dass der Blitzsensor grundlegend funktioniert. Aber zu viele Störungen von der Restlichen Elektronik empfängt. Der Unterschied zwischen keinem Gewitter über Europa und heftigem Gewitter direkt über Siselen, ist so minim das der Detektor so nicht einsatzfähig ist. Nach einer Lösung suche ich noch.
Dafür kommen die Lichtsensoren wieder ins Spiel. Also ein 2ter versuch mit vergiessen der Sensoren. Diesmal aber mit Flüssiggummi. Der Sollte dann das ausdehnen und zusammenziehen im Sommer und Winter (hoffentlich) überstehen.
Ein kleiner PC Lüfter habe ich in dem Messhäuschen noch montiert. Der läuft mit gedrosselter Leistung ca. 8V statt 12V. Das langsame drehen reicht für eine bessere Luft Umwälzung, aber ohne einen kühlenden Luftzug zu erzeugen. Somit entsteht keine stauwärme mehr im Sommer.


25.4.2017
Das Projekt Wetterstation ist vorerst abgeschlossen. Hier die letzten Änderungen
Die Lichtsensoren, machen zu viele Probleme und legen Regelmässig die komplette Wetterstation lahm. Somit entfallen diese komplett. Der Luftdruck wurde korrigiert. Er arbeitet nun korrekt, was der Vergleich zu einer namhaften Wetterprognose Seite zeigte.

 

8.4.2018 Nach einem Jahr gets Schon wider weiter!

So, lange habe ich nicht mehr geschrieben, aber trotzdem gibt es doch ein Paar Änderungen. Zum einen, wurde Das Projekt Treibhaus zum festen Bestandteil meiner Wetterstadion. Deswegen ist der Menüpunkt von Oben ins Menu rechts beim Wetter  gerutscht. Die Anzeige auf der Homepage ist nun übersichtlicher. Der Komplette Code, Der Aussenstation und vom Treibhaus ist Online.

Und im überarbeite ich die Innenstation komplett. Wenn alles klappt, wird diese durch einen Raspberry Pi ersetzt. Aber das ist etwas für 2019/2020. Den das Programmieren wir doch etwas komplexer.

13.4.2018

Beim Akku vom Treibhaus hat der Tiefenentladungsschutz zugeschlagen. Das heisst, das der Akku nicht mehr an der Solarzelle geladen werden kann. Er benötigt also etwas Starthilfe. Schade, den jetzt genau jetzt wäre die Temperaturen über Nacht interessant.

 

15.4.18

Der neue Blitzdetektor ist in Betriebgenommen worden. Naja, eigentlich sollte dieser so Funktionieren und die Anzahl Blitze und die Distanz anzeigen. Aber ohne Gewitter in der nähe ist es schwer zu sagen ob er das auch wirklich tut. Dazugekommen ist eine neue Fotogalerie rund um die Wetterstation. Mit Aktuellen Fotos. Und noch zu guter letzt, der Akku konnte ich wieder reanimieren und die Treibhaustemperaturen werden wider durch die Nacht gemessen.

 

1.5.2018

Die Fehler beim Blitzdetektor wurden behoben. Nach einigen Startschwirigkeite sollte dieser nun laufen. Aber wie immer kaum hat man in der Werkstatt den Sensor zum laufen gebracht und den Senor montiert, ist die kurze Gewitterperiode bei uns vorbei. Das Anemometer habe ich umgebaut. Nun ist anstelle von einem mechanischen Readschalter, ein Hallsensor Honeywell SS466A verbaut. Der hat ganz klare vorteile gegenüber einem mechanischen Schalter: Kein Prellen vom Kontakt, keine Fehlschaltung durch bewegung und Vibration vom Mast, klares Signal Masse oder 5V was störungs unanfälliger ist als eine offene Leitung. Somit sollte es nun möglich sein Spitzengeschwindigkeit zu Messen. Diese hatte ich rausgenommen, da es zu viele unrealistische Werte gab.

 

3.5.2018

Nach kurzem hin und her, rauf und runter, läuft der Sensor. Die ersten vier Werte von der durchschnittsgeschwindigkeit, liegen auch näher zusammen. Sieht also schon vielversprechend aus. Jetzt muss nur noch die Spitzengeschwindigkeit zum Server übertragen werden.

 

6.5.2018

Als nächstes wird der Regensensor umgebaut. Wie der Windsensor, werde ich auch hier den Readschalter gegen einen Hallsensor tauschen. Da diese weniger störanfällig sind. So wurde heute Regen Detektiert ohne das ein Tropfen vom Himmel viel.

Laut Wetter Prognose sollte am Dienstag ein Gewitter durch das Seeland ziehen. Somit kann der Gewittersensor getestet Werden. Wenn alles Klapt wird die Grafik angepasst.

Weiterhin arbeite ich auch wider an den Lichtsensor, die bis anhin probleme verursacht hatten. Der Plan, diese werden komplett abgeschottet vom Rest, in Betrieb genommen und übertragen direkt über WLAN zur Homepage. Angeschlossen werden sie an einen ESP8266. Dieser hat die Fähigkeit, selbstständig komplett abzuschalten und erst nach vorgegebener Zeit neu zu Starten. Wenn der Prozessor 55minuten Schläft sinkt nicht nur der Stromverbrauch massiv. Auch werden die Sensoren beim Start neu Initialisiert was das Blockieren verhindern sollte, das bis anhin immer nach spätestens 2 Tagen auftrat. Die eingesparte Energie während der Ruhephase erlaubt, trotz WLan mit hohem Stromverbrauch den betrieb mit Akku und Solarzelle.

11.5.2018

Die Spitzengeschwindigkeit wird neu übertragen und Angezeigt. Überarbeitete Software vom Blitzsensor wird getestet. Das Senende und Empfangsprotokoll wurde geändert. Neu fragt die Innenstation die werte der Aussenstation alle 15 minuten ab. Wenn alle Werte übertragen sind kommt von der Aussenstation ein Signal das alle Werte gesendet wurden. So wird die Innenstation klar zum Master und die Aussenstation zum Slave. Da die Innenstation eine Uhr besitzt, sind die Messzeiten genauer.

Aber der eigentliche grund für diese Änderung ist die Zukünftigen RasperryPI Steuerung. Die Aufgaben werden getrennt, durch mehrere Programme erledigt. Grafische Oberfläche und Kommunikation mit dem Server, Senden, Empfangen und Speichern der Daten. Das Empfangen und Speichern der Daten Funktioniert schon ganz gut. Es Empfängt solang Daten bis es von der Aussenstation das "End Signal" bekommt. Anschliessend werden die Daten in eine Datei gespeichert. Nun währe die Idee, Das Empfangsprogramm zu Starten, Die Daten anzufordern und zu Speichern und nach dem Speichern das Programm wider zu beenden. Die in der Datei gespeicherten Werte könn dann, einerseits Angezeigt oder im Heimnetzwerk abrufbar gemacht werden und andererseits an den Server gesendet werden.

3h Später...

Und Zack, schon haben sich bei der Spitzengeschwindigkeit, fehler eingeschlichen!