Der BMP280 ist a Barometriedruck und Temperatursensor Dies liefert einen genauen atmosphärischen Druck und Temperaturwerte. Es wird üblicherweise für verwendet Wetterüberwachung, Höhenverfolgung und Umgebungssenkung. Diese Anleitung führt Sie durch das Einrichten und Verwenden der BMP280 mit einem Himbeer -Pi Verwendung Python und I2C/SPI -Kommunikation.
Was Sie brauchen werden
- Raspberry Pi (Jedes Modell mit GPIO -Unterstützung, z. B. PI 3, PI 4)
- BMP280 -Sensormodul
- Breadboard- und Jumper -Drähte
- Python installiert Auf dem Raspberry Pi
Schritt 1: Verkabelung des BMP280 mit dem Raspberry Pi
Der BMP280 unterstützt sowohl die I2C- als auch die SPI -Kommunikation.
Für den I2C -Modus (empfohlen)
BMP280 PIN | Raspberry Pi Pin |
---|---|
VCC | 3,3 V (Pin 1) |
GND | Masse (Pin 6) |
SDA | SDA (Pin 3, gpio2) |
Scl | SCL (Pin 5, gpio3) |
Für den SPI -Modus
BMP280 PIN | Raspberry Pi Pin |
---|---|
VCC | 3,3 V (Pin 1) |
GND | Masse (Pin 6) |
Sck | SCLK (Pin 23, GPIO11) |
SDI | Mosi (Pin 19, Gpio10) |
SDO | Miso (Pin 21, gpio9) |
CS | CE0 (Pin 24, GPIO8) |
Notiz: Der BMP280 arbeitet bei 3.3 V. Nicht Schließen Sie es mit 5 V an, da es das Modul beschädigen kann.
Schritt 2: Aktivieren Sie I2C oder SPI am Raspberry Pi
Für I2C -Kommunikation
- Öffnen Sie das Raspberry PI -Konfigurationstool:
sudo raspi-config
- Navigieren zu Schnittstellenoptionen> i2c und es aktivieren.
- Starten Sie den Raspberry Pi neu:
sudo reboot
- Überprüfen Sie, dass die BMP280 wird erkannt Im I2C -Bus:
Der BMP280 sollte unter der Adresse erscheinensudo i2cdetect -y 1
0x76
oder0x77
.
Für SPI -Kommunikation
- Aktivieren Sie SPI mit:
sudo raspi-config
- Navigieren zu Schnittstellenoptionen> SPI und es aktivieren.
- Starten Sie den Raspberry Pi neu:
sudo reboot
- Überprüfen Sie die SPI -Schnittstelle mit:
Sie sollten sehenls /dev/spidev*
/dev/spidev0.0
Und/dev/spidev0.1
.
Schritt 3: Installieren Sie die erforderlichen Bibliotheken
- Aktualisieren Sie die Paketliste Ihres Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Installieren Sie die erforderlichen I2C/SPI -Tools und Python -Bibliotheken:
sudo apt install -y python3-smbus python3-spidev python3-pip pip3 install adafruit-circuitpython-bmp280
Schritt 4: Daten aus dem BMP280 lesen
Python -Code für den I2C -Modus
import time
import board
import busio
import adafruit_bmp280
# Initialize I2C bus and BMP280 sensor
i2c = busio.I2C(board.SCL, board.SDA)
bmp280 = adafruit_bmp280.Adafruit_BMP280_I2C(i2c)
# Set sea level pressure (optional, for altitude calculations)
bmp280.sea_level_pressure = 1013.25
try:
while True:
print(f"Temperature: {bmp280.temperature:.2f} °C")
print(f"Pressure: {bmp280.pressure:.2f} hPa")
print(f"Altitude: {bmp280.altitude:.2f} m")
print("------------------------")
time.sleep(2)
except KeyboardInterrupt:
print("Exiting...")
Python -Code für den SPI -Modus
import time
import board
import busio
import digitalio
import adafruit_bmp280
# Initialize SPI bus and BMP280 sensor
spi = busio.SPI(board.SCK, board.MOSI, board.MISO)
cs = digitalio.DigitalInOut(board.D8) # Use GPIO8 (Pin 24) for CS
bmp280 = adafruit_bmp280.Adafruit_BMP280_SPI(spi, cs)
try:
while True:
print(f"Temperature: {bmp280.temperature:.2f} °C")
print(f"Pressure: {bmp280.pressure:.2f} hPa")
print(f"Altitude: {bmp280.altitude:.2f} m")
print("------------------------")
time.sleep(2)
except KeyboardInterrupt:
print("Exiting...")
Schritt 5: Anwendungen von BMP280 mit Raspberry Pi
- Wetterüberwachung -Sammeln Sie Temperatur- und Druckdaten für die Echtzeitwetteranalyse.
- Höhenmessung - Verwenden Sie Druckdaten, um Höhenänderungen abzuschätzen.
- IoT -Projekte - Senden Sie Sensordaten an Cloud -Plattformen für die Fernüberwachung.
- Heimautomatisierung - Passen Sie die Belüftung und Klimaanlage anhand der Umgebungswerte an.
Fehlerbehebung
-
BMP280 nicht erkannt (
i2cdetect
zeigt sich nicht0x76
oder0x77
)- Stellen Sie sicher, dass die SDA/SCL -Stifte sind richtig verkabelt.
- Überprüfen Sie das I2C ist aktiviert Verwendung
sudo raspi-config
.
-
Falsche Lesungen
- Überprüfen Sie Lose Verbindungen oder Stromversorgungsprobleme.
- Stellen Sie sicher, dass der Sensor ist Nicht plötzliche Temperaturänderungen ausgesetzt.
-
SPI -Kommunikationsprobleme
- Stellen Sie sicher, dass SPI aktiviert ist (
ls /dev/spidev*
sollte Geräte auflisten). - Verifizieren Richtige CS -Pin -Auswahl im Python -Skript.
- Stellen Sie sicher, dass SPI aktiviert ist (
Abschluss
Der BMP280 -Sensor bietet Genaue Barometrie-, Temperatur- und Höhenmessungen, ideal für Wetterstationen, IoT -Anwendungen und Umweltüberwachung. Wenn Sie diesem Handbuch folgen, können Sie den BMP280 problemlos in Ihre integrieren Raspberry PI -Projekte Für Echtzeit-Datenerfassung und -analyse! 🚀