Le BMP280 est un Capteur de pression barométrique et de température qui offre une pression atmosphérique précise et des lectures de température. Il est couramment utilisé pour Surveillance météorologique, suivi de l'altitude et détection environnementale. Ce guide vous guidera dans la configuration et l'utilisation du BMP280 avec un Raspberry Pi en utilisant Communication Python et I2C / SPI.
Ce dont vous aurez besoin
- Raspberry Pi (Tout modèle avec le support GPIO, par ex., PI 3, PI 4)
- Module de capteur BMP280
- Fils de planche à pain et de cavalier
- Python installé sur le Raspberry Pi
Étape 1: Câblage du BMP280 au Raspberry Pi
Le BMP280 prend en charge la communication I2C et SPI.
Pour le mode I2C (recommandé)
Broche BMP280 | Pin de framboise PI |
---|---|
VCC | 3.3V (broche 1) |
GND | Terre (broche 6) |
SDA | SDA (broche 3, gpio2) |
SCL | SCL (broche 5, gpio3) |
Pour le mode SPI
Broche BMP280 | Pin de framboise PI |
---|---|
VCC | 3.3V (broche 1) |
GND | Terre (broche 6) |
SCK | SCLK (broche 23, GPIO11) |
SDI | MOSI (PIN 19, GPIO10) |
Sdo | MISO (PIN 21, GPIO9) |
CS | CE0 (broche 24, gpio8) |
Note: Le BMP280 fonctionne à 3.3 V. Ne pas Connectez-le à 5V, car il peut endommager le module.
Étape 2: Activer I2C ou SPI sur le Raspberry Pi
Pour la communication I2C
- Ouvrez l'outil de configuration Raspberry Pi:
sudo raspi-config
- Se diriger vers Options d'interface> I2C et l'activer.
- Redémarrez le Raspberry Pi:
sudo reboot
- Vérifiez que le BMP280 est détecté sur le bus I2C:
Le BMP280 devrait apparaître à l'adressesudo i2cdetect -y 1
0x76
ou0x77
.
Pour la communication SPI
- Activer SPI en utilisant:
sudo raspi-config
- Se diriger vers Options d'interface> SPI et l'activer.
- Redémarrez le Raspberry Pi:
sudo reboot
- Vérifiez l'interface SPI en utilisant:
Tu devrais voirls /dev/spidev*
/dev/spidev0.0
et/dev/spidev0.1
.
Étape 3: Installez les bibliothèques requises
- Mettez à jour la liste des packages de votre Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Installez le requis Outils I2C / SPI et les bibliothèques Python:
sudo apt install -y python3-smbus python3-spidev python3-pip pip3 install adafruit-circuitpython-bmp280
Étape 4: lecture des données du BMP280
Code python pour le mode I2C
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...")
Code python pour le mode SPI
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...")
Étape 5: Applications de BMP280 avec Raspberry Pi
- Surveillance météorologique - Collectez la température et les données de pression pour l'analyse météorologique en temps réel.
- Mesure d'altitude - Utilisez des données de pression pour estimer les changements d'altitude.
- Projets IoT - Envoyez des données de capteur aux plates-formes cloud pour la surveillance à distance.
- Automatisation - Ajustez la ventilation et la climatisation en fonction des lectures environnementales.
Dépannage
-
BMP280 non détecté (
i2cdetect
ne montre pas0x76
ou0x77
)- Assurer le Broches SDA / SCL sont correctement câblés.
- Vérifiez que I2C est activé en utilisant
sudo raspi-config
.
-
Lectures incorrectes
- Vérifier Connexions lâches ou Problèmes d'alimentation.
- Assurez-vous que le capteur est Non exposé à des changements de température soudains.
-
Problèmes de communication SPI
- Assurez-vous que SPI est activé (
ls /dev/spidev*
devrait lister les appareils). - Vérifier Correction de la sélection des broches CS Dans le script Python.
- Assurez-vous que SPI est activé (
Conclusion
Le Capteur BMP280 proposer Mesures précises de la pression barométrique, de la température et de l'altitude, ce qui le rend idéal pour stations météorologiques, applications IoT et surveillance environnementale. En suivant ce guide, vous pouvez facilement intégrer le BMP280 dans votre Projets Raspberry Pi Pour la collecte et l'analyse des données en temps réel! 🚀