Zum Hauptinhalt springen

Umgebungssensor

Dokumentation des BME280-Sensors


1. Einführung

Der BME280 ist ein hochpräziser Sensor, der Temperatur, Luftfeuchtigkeit und Luftdruck misst. Aufgrund seiner Zuverlässigkeit wird es häufig in der Umweltüberwachung und bei Wetterstationen eingesetzt. Der Sensor kommuniziert über die I2C-Schnittstelle.


2. Technische Eigenschaften

  • Temperaturbereich: -40 bis 85 °C (Genauigkeit ±1,0 °C)
  • Feuchtigkeitsbereich: 0 % bis 100 % RH (Genauigkeit ±3 % RH)
  • Druckbereich: 300 bis 1100 hPa (Genauigkeit ±1 hPa)
  • Betriebsspannung: 1,8 V bis 3,6 V
  • Schnittstelle: I2C (Standard) oder SPI
  • Abmessungen: 2,5 mm x 2,5 mm x 0,93 mm
  • Stromverbrauch: 0,1 µA im Schlafmodus, 1,8 µA bei 1 Hz Abtastrate

3. Pin-Konfiguration

BME280 Pinbelegung


4. Verwendung von BME280 mit CircuitPython

Bibliotheksinstallation:

  1. Die Bibliothek wird automatisch installiert, wenn Sie einen Codeblock verwenden, der den DHT11-Rucksack in Elioblocs verwendet.

  2. Andernfalls installieren Sie die Bibliothek Adafruit CircuitPython BME280 mit dem Bibliothekspaket CircuitPython von Adafruit.

Codebeispiel:

import time
import board
import adafruit_bme280

# Initialisierung des BME280-Sensors
i2c = busio.I2C(board.IO9, board.IO8)
bme280 = adafruit_bme280.Adafruit_BME280_I2C(i2c, address=0x76)

# Optional den Meeresspiegeldruck je nach Standort anpassen
bme280.sea_level_pressure = 1013.25

while True:
print(f"Temperatur: {bme280.temperature:.1f} °C")
print(f"Luftfeuchtigkeit: {bme280.humidity:.1f} %")
print(f"Druck: {bme280.pressure:.1f} hPa")
print(f"Höhe: {bme280.altitude:.2f} Meter")

time.sleep(2.0)

Hinweise:

  • Die Variable sea_level_pressure kann für genauere Höhenmessungen an Ihren Standort angepasst werden.

5. Allgemeine Anwendungen

  • Wetterstationen
  • Umweltüberwachung
  • Höhenmesser
  • IoT-Geräte zur Überwachung von Klima und Luftqualität