3.6 Temperatur und Luftdrucksensor BMP 280
Jetzt wollen wir die Temperatur und den Luftdruck mit dem Sensor BMP 280 messen. Und wir haben "das gleiche Spiel wie zuvor".
Die Hardware- und Elektronikgrundlagen
Wir benötigen für unsere nächsten Anwendungen:
-
OLED Display SSD 1306
-
Sensor BMP 280
Basis-Wissen Temperatursensor BMP280
Der BMP280 ist ein Sensor zur Messung von Temperatur und Luftdruck. Er ist kompakt, präzise und eignet sich gut für Wetterstationen und Höhenmessungen. Es gibt noch einen ähnlichen Sensor BME280, der Temperatur, Luftfeuchtigkeit und Luftdruck mist.
- Messbereich:
- Temperatur: -40°C bis +85°C (±1.0°C)
- Luftdruck: 300 hPa bis 1100 hPa (±1 hPa, entspricht etwa ±8.4 Meter in der Höhe)
- Schnittstelle: I2C oder SPI (wir verwenden die I2C-Version)
- Betriebsspannung: 1,8V bis 3,6V (wir verwenden die 3,3V-Version)
Die Datenübertragung findet per I2C statt. Für den I2C-Betrieb werden in der Regel vier Pins verwendet:
-
VCC: Versorgungsspannung (3,3V oder 5V)
-
GND: Erdung
-
SCL: I2C Clock (Signal für die Synchronisation der Datenübertragung)
-
SDA: I2C Data (Signal für die Datenübertragung)
Die Anwendungen
Zunächst nehmen wir nur den Temperatur- und Luftdrucksensor in Betrieb und dann erweitern wir das Script, sodass die Ausgabe nicht im Thonny-Kommandofenster erfolgt, sondern auf dem Display.
Sensoren und Display
Es gibt sehr viele I2C-Sensoren und Displays aller Art.
Nerd-Wissen I2C
Eine sehr gute Info zum I2C findet sich bei Wikipedia.
Inbetriebnahme des Lichtsensors
Der Aufbau sieht wir folgt aus:
Somit haben wir die bisherigen OLED-Anschlüsse, ergänzgt um den Lichtsensor.
-
Pin 38 an Masse
-
Pin 36 an Plus
-
Pin 21 (= GPIO 16, gelb) an OLED-Display SDA
-
Pin 22 (= GPIO 17, grün) an OLED-Display SCL
-
OLED-Display mit Plus und Masse verbinden
-
Temperatursensor BMP 280 mit Plus und Masse verbinden
-
BMP 280 SDA an an OLED-Display SDA (gelb)
-
BMP 280 SCL an an OLED-Display SCL (grün)
Wir haben wieder die Schritte
-
Adresse ermitteln mit dem I2C-Scanner. Ergebnis: 0x76
-
Bibliothek installieren. Wir verwenden die Bibliothek und das Beispiel von David Stellvan.
Link zur Bibliothek von David Stellvan. Abspeichern auf dem Pi Pico unter bmp280.py.
Übung
In dem Beispiel werden die Daten nur einmal angezeigt. Bauen Sie eine einfache Schleife (gerne ohne try-execpt) wie im Beispiel zum Lichtsensor, damit die Werte alle 2 Sekunden ausgegeben werden.
Ausgabe des Lichtsensors auf dem OLED-Display
Nun wollen wir die Helligkeit auf dem OLED-Display anzeigen.
Damit verlassen wir das Thema der Sensoren und gehen zu einem weiteren spannenden Thema: Eine WLAN-Verbindung zum Pi Pico herstellen.