Utilisation du BMP280 avec le Raspberry Pi

Using the BMP280 with the Raspberry Pi

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

  1. Raspberry Pi (Tout modèle avec le support GPIO, par ex., PI 3, PI 4)
  2. Module de capteur BMP280
  3. Fils de planche à pain et de cavalier
  4. 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

  1. Ouvrez l'outil de configuration Raspberry Pi:
    sudo raspi-config
    
  2. Se diriger vers Options d'interface> I2C et l'activer.
  3. Redémarrez le Raspberry Pi:
    sudo reboot
    
  4. Vérifiez que le BMP280 est détecté sur le bus I2C:
    sudo i2cdetect -y 1
    
    Le BMP280 devrait apparaître à l'adresse 0x76 ou 0x77.

Pour la communication SPI

  1. Activer SPI en utilisant:
    sudo raspi-config
    
  2. Se diriger vers Options d'interface> SPI et l'activer.
  3. Redémarrez le Raspberry Pi:
    sudo reboot
    
  4. Vérifiez l'interface SPI en utilisant:
    ls /dev/spidev*
    
    Tu devrais voir /dev/spidev0.0 et /dev/spidev0.1.

Étape 3: Installez les bibliothèques requises

  1. Mettez à jour la liste des packages de votre Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. 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

  1. Surveillance météorologique - Collectez la température et les données de pression pour l'analyse météorologique en temps réel.
  2. Mesure d'altitude - Utilisez des données de pression pour estimer les changements d'altitude.
  3. Projets IoT - Envoyez des données de capteur aux plates-formes cloud pour la surveillance à distance.
  4. Automatisation - Ajustez la ventilation et la climatisation en fonction des lectures environnementales.

Dépannage

  1. BMP280 non détecté (i2cdetect ne montre pas 0x76 ou 0x77)

    • Assurer le Broches SDA / SCL sont correctement câblés.
    • Vérifiez que I2C est activé en utilisant sudo raspi-config.
  2. 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.
  3. 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.

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! 🚀

Laissez un commentaire

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.