Auf dem Weg zu einer kleinen Wetterstation beschäftigen wir uns heute mit der Luftdruck- und Temperaturmessung und verwenden dafür den BMP085 inklusive Breakoutboard mit I²C-Schnittstelle, sowie einen Arduino unserer Wahl.
Zuerst verkabeln wir das Breakoutboard mit dem Arduino (hier ein Arduino Nano-Klon) nach folgendem Plan (auch oben im Bild zu erkennen):
Schaltplan (Arduino-Verdrahtung des GY-65 Breakoutboards):
mit der Maus über Elemente fahren (oder im Touch-Modus: Elemente antippen)...
Arduino (Pro Mini, Nano, Uno) | Arduino (Mega, Mega 2560) | GY-65 mit BMP085 |
VCC 5V | VCC 5V | VCC |
GND | GND | GND |
A4 (SDA) | D20 (SDA) | SDA |
A5 (SCL) | D21 (SCL) | SDL (SCL) |

GY-65 Breakoutboard (BMP085) – Pinout
Achtung, es gibt verschiedene andere Breakoutboards auf dem Markt die nicht über einen integrierten Spannungsregler verfügen, diese müssen dann mit 3,3V betrieben werden!
Anschließend installieren wir uns noch die Adafruit-BMP085-Bibliothek von der GitHub-Webseite und laden dann folgenden Sketch auf unseren Arduino:
Programmcode (Sketch):
#include <Wire.h> #include <Adafruit_BMP085.h> // Adafruit Bibliothek einbinden Adafruit_BMP085 bmp; void setup(){ // Seriellen Monitor aktivieren Serial.begin(9600); // Sensor initialisieren if (!bmp.begin()) { Serial.println("Keinen gültigen BMP085 Sensor gefunden!"); while (true) {} } } void loop(){ Serial.print("Temperatur: "); // readTemperature() Temperatur °C auslesen und anzeigen Serial.print(bmp.readTemperature()); Serial.print(" "); // Hier müssen wir ein wenig tricksen Serial.write(176); // um das °-Zeichen korrekt darzustellen Serial.println("C"); Serial.print("Luftdruck: "); // readPressure() Luftdruck in Pa auslesen und anzeigen Serial.print(bmp.readPressure()); Serial.println(" Pa"); Serial.print("Hoehe: "); // readAltitude() Höhe in meter auslesen und anzeigen Serial.print(bmp.readAltitude()); Serial.println(" meter"); Serial.println(); // Leerzeile anzeigen delay(5000); // 5 Sekunden warten }
… öffnen anschließend den seriellen Monitor und:
sehen dann eine ähnliche Ausgabe wie oben im Bild.
Allerdings ist die Höhenangabe nur eine ungefähre Angabe, Näheres findet man unter Barometrische Höhenmessung in der Wikipedia.
Weiterführendes Projekt:
Einfache (Raum-)Klimaüberwachung mit einem Arduino
Luftdruck, Temperatur, Luftfeuchtigkeit, Zeit und Datum
Bauteile (Bezugsquellen):
eBay: | Arduino Nano BMP085 Breadboard Breadboard Kabel GY-65 |
Amazon: | BMP085 Breadboard Breadboard Kabel GY-65 |
Gut?











