Micropython mit ESP32 - 11: Nochmals BME280

Diskussionen, Fragen und Antworten im Forum: Die Lektionen zu 'Micropython mit ESP32'


Das Begleitmaterial kannst du hier herunterladen:

https://www.hobbyelektroniker.ch/resources/PytEsp11.zip


Das Video findest du hier.


Jetzt ist es bestätigt: beide Versionen (5V und 3.3V) des Sensors funktionieren problemlos mit 3.3V. Ausserdem korrigieren wir den Luftdruck so, dass er mit den umliegenden Wetterstationen übereinstimmt. Eine Normalisierung mit Hilfe der Barometrischen Höhenformel wäre viel zu kompliziert. Es gibt aber einfachere Wege.


Falls du mich unterstützen möchtest:

Paypal: https://www.paypal.me/hobbyelektroniker

Patreon: https://www.patreon.com/hobbyelektroniker


Für Unterstützer auf Patreon steht das Video werbefrei zur Verfügung.

Kommentare 5

  • Was die Einstellung des Luftdruckes betrifft, so kann man als Faustformel nehmen, dass alle 8m der Luftdruck um 1hPa abnimmt.

    Wenn man z.B. mit seinem Smartphone die Standorthöhe des Sensors ermittelt (beim Phone beispielsweise mit der Kompass-App) so kann man die gemessene Höhe durch 8 dividieren und dieses Ergebnis zum gemessenen Luftdruck addieren.


    Das ergibt den normierten Luftdruck auf Meereshöhe.


    Z.B. der BME280 zeigt 997hpa an und ist auf einer Höhe von 132m installiert -> 132/8 = 16,5 -> 997+16,5 = 1013,5hPa Standardluftdruck auf NN.

    • Das Ergebnis hängt in diesem Fall von der genauen Messung der Höhe ab. Ich nehme an, das Handy nimmt hier GPS zu Hilfe. Kann es unterscheiden, ob ich mich im 1. oder dem 20. Stockwerk eines Hochhauses befinde? Da aber die wenigsten Leute in einem Hochhaus wohnen, sollte das in der Praxis kaum eine Rolle spielen. Interessant ist auch dieser Online - Rechner: https://rechneronline.de/barometer/ .

      Er berücksichtigt auch noch die Temperatur.

    • Ich habe ja auch so eine Station „gebaut“. Allerdings hängt bei mir der bme280 direkt an einem Raspberry Pi (im ersten Obergeschoss ;-) ).

      Die Höhenmessung mit dem Smartphone ist relativ genau. Zusätzlich habe ich noch eine topologische Karte eines GIS Systems zur Hilfe genommen, um den gemessenen Wert einschätzen zu können. Anschließend habe ich die Messwerte des Sensors mit zwei online verfügbaren, professionellen Wetterstation in der Nähe abgeglichen. Dabei musste ich den gemessenen Wert vom Smartphone um einen Meter nach oben korrigieren. Seit dem, unterscheiden sich die Messwerte nie mehr als max. 0,5hPa (Stichproben). Ich denke, das ist ein recht guter Wert für so eine Faustformel.


      Gruß Kai

    • Ich habe mal zusätzlich zur von mir erwähnten "Fausformel" auch die Formel von der "rechneronline" Seite, die von Dir oben verlinkt wurde, eingebunden und lasse mir beide Werte anzeigen. Dabei liegen diese etwas auseinander. Wenn ich das mit dem Werte der professionellen Station vergleiche, liegt der "Faustformelwert" etwas drüber, der Wert, der die Temperatur mit einberechnet etwas darunter. Die Abweichungen sind aber in einem Bereich < 0,5 hPa.

      Beispiel :

      Messwert Station: 1010,3

      Fausformel: 1010,52

      Genaue Formel: 1009,89


      Mal schauen wie sich das über einen längeren Zeitraum entwickelt.


      Wer viel misst, misst Mist oder wie war das? :)


      Die Rechenformel ist sicher genauer, wenn man sich auch auf seine Temperaturmessung verlassen kann.

      Nun steht z.B. die professionelle Station (ca. 3km entfernt) auf freiem Feld. Meine Außentemperatur messe ich im Garten, der von Häusern "umzingelt" ist. Das bedeutet, dass gerade bei Frost die Messungen der Temperatur um einige Grad auseinander liegen kann. Da ist es bei mir meist 2-3 Grad wärmer. Das gleiche im Sommer... Die Umgebung heizt sich mehr auf (Fassaden) und es kühlt, vor allem Abends, langsamer ab als auf der Flur. Diese Faktoren sollten aber nicht den Luftdruck beeinflussen, doch sie tun es mit der "genauen" Formel.


      Na was soll es. Auf den ersten Blick wirkt das Thema "Wetterstation" simpel... aber so simpel wie es scheint, ist es nicht.

      Aber hier geht es ja in erster Linie um Elektronik und Programmierung .... darum lass ich es jetzt mal gut sein.


      Gruß Kai

    • Hallo Kai,


      früher, als man noch Quecksilberbarometer einsetzte, erfolge die Korrektur einfach mit einer mechanischen Stellschraube, die die Skala um einige mm Quecksilbersäule (damals war hPa noch ziemlich unbekannt) verschob. Trotzdem waren die Leute zufrieden mit ihrem Barometer.


      Das kleine Mikropython-Projekt wird auch keine genaue Erfassung der Wetterdaten erlauben. Der BME - Sensor ist einfach ein gutes Beispiel dafür, wie man solche Sensoren anspricht und welche Probleme sich dabei ergeben. Wichtiger als die absoluten Werte sind die Veränderungen, also zum Beispiel die Luftdruckänderung bevor das Wetter 'kippt'. Das lässt sich dann schön in einer Kurve darstellen.


      Um Wetterprognosen zu erstellen, genügt der Sensor sowieso nicht. Diese kommen dann aus dem Internet. Eine gute Gelegenheit um etwas über die Auswertung von JSON - Dateien zu lernen. Auch Node-RED und MQTT sollten hier ein Thema werden.


      So wird das Problem hier mit einem einfachen Korrekturfaktor gelöst, der durch Vergleich mit einer zuverlässigen Station errechnet wird. Wenn das an ruhigen Tagen mit weit auseinanderliegenden Isobaren gemacht wird, sollte das genau genug werden. Ich habe einen Korrekturfaktor gewählt, dabei aber nicht überprüft, ob allenfalls eine einfache Addition eines Korrekturwertes besser wäre.


      Gruss

      René