NEWS
Meine kleine Low-Cost Wetter Station
-
Als kleines Corona Projekt habe ich nun meine kleine Wetterstation fertig gestellt.
Da ich mich eher in die Rubrik ambitionierter Bastel-Laie einordnen würde habe ich was gesucht was für mich technisch zu bewältigen war.Im Grunde genommen ist softwareseitig schon alles ohne viel Aufwand schon vorhanden. Ich habe mich für ESPEasy entschieden.
ESPEasyInstalliert ist das auf einer NodeMCU V3. Da ich nicht so der große Löter bin und der I2C Bus für die Komponenten die selben Pins benötigt habe ich mir noch dazu dieses Board gekauft:
BoardDesweiteren habe ich bei AliExpress noch das Anemometer gekauft:
AnemometerUnd für den Temperatur/Luftdrucksensor noch das hier:
ShieldIn der nächsten Ausbaustufe wird dann noch der Regenmengenmesser hinzukommen:
rain meterDie Daten werden per mqtt in ioBroker bereitgestellt und in Grafana visuell dargestellt.
Da die Station an meinem Gartenhaus installiert ist und der Pool gleich daneben steht habe ich noch einen Temperatursensor DS18b20 für den Pool angeschlossen.
Den Helligkeitsensor nutze ich für das einschalten des Gartenlichtes ab einem bestimmten Dämmerungswertes. Ist auf alle Fälle genauer als das schalten nach der Astrozeit.
Irgendwo in einem Block hatte ich noch die Schwellwerte für Umrechnung der Umdrehungen des Windmessers in die Windstärke gefunden. Dazu habe ich mir eine Blockly gebastelt:
Ob das soweit stimmt? Keine Ahnung. Sieht aber erst mal gut aus
Als nächstes möchte ich daraus die Windgeschwindikeit in km/h berechnen.
Gefunden dazu habe ich folgende Formel:v [km/h] = 1.761 / (1 + rps) + 3.013 * rps
Wobei rps für eine Umdrehung steht.
Habe mir dafür auch schon ein Blockly zusammen geklickt. Denke aber das das falsch ist und ich die Gleichung aufteilen müsste da ja bekanntlich Punkt vor Strich Rechnung kommt
Die Station ist jetzt mit der Anordnung der Elemente nicht unbedingt eine Schönheit. Aber da bin ich eher der pragmatische Typ. Hauptsache es funktioniert.
Für Anregungen bin ich natürlich dankbar.
-
@karstent sagte:
Dazu habe ich mir eine Blockly gebastelt:
Möchtest Du wirklich bei Sturm 12 mal hintereinander einen Wert in den Datenpunkt schreiben (Ressourcen !). Verwende besser eine Variable und schreibe diese zum Schluss in den Datenpunkt.
-
Soweit ich das verstanden habe werden die Impulse auf der NodeMCU gezählt und nach Ablauf der von mir eingestellten 30 Sek mittels mqtt an ioBroker übermittelt.
-
-
Da habe ich scheinbar ein Verständnisproblem. Wenn aller 30 sek eine Zahl übermittelt wird (z.B. 20 ) Nun dachte ich das auf Grund der Einordnung in Blockly der Block zum tragen kommt in der der übermittelte Wert passt und dann der dazugehörige Wert der Windstärke in einen Datenpunkt geschrieben wird.
30 sek später kommt ein neuer Wert der auf Grund des "Filters" einen neuen Wert in dem Datenpunkt erzeugt.
Und wenn Sturm ist wird doch trotzdem nur aller 30 sek ein Wert übermittelt.
Oder bin ich völlig auf dem holzweg -
ok, ich glaube zu verstehen. Die Werte würden bei Sturm hintereinander bis 12 hochzählen. Wäre das dann so?
Eigentlich hatte ich eine Möglichkeit in Blockly gesucht um die grenzen besser abzutrennen.
Also wenn Wert von 10 bis 20 dann mache ... , wenn Wert von 21-30 dann mache ... -
@karstent sagte:
bis 12 hochzählen. Wäre das dann so?
Ja, deshalb setze erst eine Variable auf den Beaufort-Wert und schreibe diese zum Schluss in den Datenpunkt. Etwa so:
-
oh prima, danke. Also doch einen Denkfehler gehabt
-
gefällt mir sehr gut. Kannst du mir bitte mal zeigen wie das Anemometer an die NodeMCU angeschlossen wird?
-
ich habe nun mein Anemometer auch bekommen und es würde mir sehr helfen wenn du mir kurz sagen könntest wie du dieses an die NodeMCU angeschlossen hast?
-
Fehler beim erstellen
-
Du kannst Dir dafür einen Pin ( in meinem Fall D6) aussuchen und den anderen an Ground. Wichtig ist das in espeasy nur die ersten 4 Tasks den Pulscounter unterstützen. Also unter Devices Task 1-4 einen Auswählen und Pulscounter auswählen.
Vorher unter Hartware den D6 auf Input stellen. -
ok danke. hast du mal ein Bild wie du die NodeMCU mit dem Windmesser verdrahtet hast?
-
ein Bild habe ich leider nicht. Du musst einfach nur die eine Ader an (z.B. D& ) und die ander Ader an Ground vom NodeMCU. Mehr musst du nicht machen und dann so konfigurieren wie oben angegeben.
-
ok danke für die info. Das heißt dann kann ich mir den widerstand und den kondensator sparen...
-
Hast du die Berechnung von den kmh hinbekommen?
-
@saeft_2003 puh, da bich ich mir nicht sicher ob Deine Lösung nicht besser ist.
Ich habe mich daran orientiert ( Seite ganz unten)
http://wiki.gorjup.de/doku.php?id=public:fhem_wetterstation#webinterfaceDie Berechnung ruht noch. Habe mich noch nicht weiter damit beschäftigt.
-
Ich mache zum Test jetzt die kmh berechnung nach deiner Formel. Beim test kommen auch plausible kmh dabei raus.
Aber es wird sich erst zeigen wenn der windmesser wirklich im Einsatz ist.
-
Mein windmesser ist seit heute Mittag in Betrieb und es kommen doch plausible Windgeschwindigkeiten (kmh) dabei herraus.
Die grüne und rote Kurve ist sind Daten von einer echten Wetterstation und die bläuliche Kurve ist die von meinem Windmesser.
-
@saeft_2003
Ich würde gerne mal dein blockly für die Windgeschwindigkeit testen. Wäre es möglich dieses für mich zu exportieren
Danke