Raspberry Pi Luftdruck Sensor BMP085

Mit dem Raspberry Pi Luftdruck Sensor BMP085 kann man neben der Temperatur auch den Luftdruck messen. Ich zeige euch wie das genau funktioniert, wie man den Sensor mit der GPIO Schnittstelle verkabelt und wie man Messwerte über ein Python Programm einließt und auf der Konsole ausgibt.

Raspberry Pi Luftdruck Sensor BMP085

Raspberry Pi Luftdruck Sensor BMP085

In meinen letzten Artikeln habe ich euch bereits mehrere Sensoren Vorgestellt, unter anderem den Temperatur Sensor 18B20 und den Luftfeuchtigkeits Sensor DHT11. Für eine Wetterstation benötigen wir aber noch mehr, so zum Beispiel eine Möglichkeit den aktuellen Luftdruck zu bestimmen. Einer kurzen Recherche zufolge gibt es da genau zwei relevante Modelle:

  • BMP085
    wird auch oft als GY-65 bezeichnet.
  • BMP180
    wird auch oft als GY-68 bezeichnet.

Die beiden Sensoren unterscheiden sich kaum. Beide haben einen Messbereich von 300 bis 1100 hPa und funktionieren in einem Temperaturbereich von -40°C und +85°C, also perfekt für eine Wetterstation. Der einzige Unterschied ist die Genauigkeit der Messwerte, für etwas mehr Geld bekommt man etwas genauere Werte:

  • BMP085
    Temperatur: ±2°C
    Luftdruck: -4 bis +4 hPa
  • BMP180
    Temperatur: ±1°C
    Luftdruck: -4 bis +2 hPa

Für diesen Artikel verwende ich den Raspberry Pi Luftdruck Sensor BMP085, jedoch kann man diese Anleitung auch fast 1:1 für den BMP180 verwenden.

Hardware

BMP085 vorneDer Raspberry Pi Luftruck Sensor BMP085 besteht aus einer kleinen Platine mit 6 Pins. Der Sensor und die Widerstände sind auf der Platine bereits fix integriert, wodurch die Arbeit mit dem Sensor relativ einfach wird. Von den 6 Pins benötigen wir für unsere Messung lediglich die folgenden 4:

  • VCC
    das ist die Stromversorgung. Wir verbinden diesen Pin mit dem +5 Volt Eingangspin der GPIO Schnittstelle (GPIO 1)
  • GND
    das ist die Masse (Erdung). Wir können diesen Ausgang mit einem beliebigen GND Pin der GPIO Schnittstelle verbinden, beispielsweise GPIO 6.
  • SDA und SCL
    diese beiden Pins verbinden wir mit den I2C Pins des Raspberry Pis. SDA (Daten) mit GPIO 2 und SCL (Takt) mit GPIO 3.

BMP085 PinbelegungDie genaue Verkabelung ist der oben gezeigten Grafik zu entnehmen. Man benötigt 4 Steckdrähte in meinem Fall männlich-weiblich die man von der GPIO Schnittstelle mit dem Steckbrett verbindet. Am Steckbrett ist der BMP085 Sensor angebracht.

Das Verkabeln ist etwas mühsam, da die Beschriftung der einzelnen Pins auf der Rückseite aufgedruckt ist und man so den Sensor mehrere Male anheben muss um zu konrollieren ob man auch wirklich den korrekten Pin anspricht.

Fazit

Der Raspberry Pi Luftdruck Sensor BMP085 ist recht schnell verkabelt. Dank dem Aufdruck der Pin Inormationen ist das kein Problem. Da die Platine schon alle Widerstände mitbringt benötigt man bei einem +5 Volt Anschluss am Raspberry Pi auch keine zusätzliche Hardware erforderlich. Nun können wir den Sensor verwenden und Messdaten lesen und diese Informationen ausgeben. Wie das funktioniert zeige ich im nächsten Artikel.

Wie messt ihr den Luftdruck? Kennt ihr sonst noch gute Alternativen zu den BMP085 und BMP180 Sensoren?

(Visited 3.090 times, 1 visits today)

Das könnte auch interessant sein...

6 Antworten

  1. Helmuth Baldzer sagt:

    Hallo,
    ich habe an meinem Raspberrypi B+ drei Sensoren geschaltet, VDD an 5V, Out an GPIO4 mit Pullup 4,7k an 3,3V. Alle erforderlichen Eintragungen habe ich gemacht, mehrfach ein reboot durchgeführt. Leider wird in Devices kein Fühler aufgeführt. Modprobe ist auch o.k. ohne Fehlermeldung. Haben sie eine Idee wo der Fehler steckt.

  2. Johann S. sagt:

    Hallo Helmuth Baldzer!
    Vermute mal, da ist ein Adressenkonflikt zwischen den Sensoren am I²C (auch TWI genannt)..:-(
    Oder läßt sich die I²C-Adresse der Sensoren ändern?

    • Helmuth Baldzer sagt:

      Hallo vielen Dank für die Antworten.
      Fehler wurde gefunden, lag in der config.txt
      Jetzt funktionieren alle Sensoren.

  3. Peter Schmidl sagt:

    Hallo!

    Tolles Projekt! Wie würde denn die Schaltung aussehen wenn ich sagen wir mal 12 dieser Sensoren gleichzeitig an den Raspberry Pi 2 anschließen möchte? Brauch ich da Zusatzhardware? Vielen Dank!

  4. pofoklempner sagt:

    Hallo Werner, habe Deinen Artikel leider erst jetzt gelesen. Du hast Du einige Fehler eingebaut. Die Platine muss mit 3,3 V betrieben werden, da der Raspi an der GPIO nur 3,3 V ab kann, nicht 5 V!!
    Zerstörungsgefahr!!! Außerdem müssen die Widerstände von I2C nach 5 V auf der Platine ausgelötet werden. Der Raspi hat Widerstände nach 3,3 V auf dem Board. Habe im Moment die Platine nicht zur Hand, deshalb kann ich die Widerstandsnummern nicht nennen.
    Beste Grüße
    Pofoklempner

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.