Usando o BMP280 com o Raspberry Pi

Using the BMP280 with the Raspberry Pi

BMP280 é a Pressão barométrica e sensor de temperatura Isso fornece leituras precisas de pressão atmosférica e temperatura. É comumente usado para Monitoramento climático, rastreamento de altitude e detecção ambiental. Este guia o levará a configurar e usar o BMP280 com um Raspberry Pi usando Comunicação Python e I2C/SPI.


O que você precisará

  1. Raspberry Pi (Qualquer modelo com suporte GPIO, por exemplo, PI 3, PI 4)
  2. Módulo do sensor BMP280
  3. Fios de pão e jumper
  4. Python instalado No Raspberry Pi

Etapa 1: Fiação do BMP280 para o Raspberry Pi

O BMP280 suporta a comunicação I2C e SPI.

Para o modo i2c (recomendado)

Pino BMP280 Pino de framboesa pi
VCC 3.3V (pino 1)
Gnd Terra (pino 6)
SDA SDA (pino 3, gpio2)
SCL SCL (pino 5, gpio3)

Para o modo SPI

Pino BMP280 Pino de framboesa pi
VCC 3.3V (pino 1)
Gnd Terra (pino 6)
Sck SCLK (PIN 23, GPIO11)
SDI Mosi (pino 19, gpio10)
Sdo Miso (pino 21, gpio9)
Cs CE0 (pino 24, gpio8)

Observação: O BMP280 opera em 3.3V. Não Conecte -o a 5V, pois pode danificar o módulo.


Etapa 2: Ativar I2C ou SPI no Raspberry Pi

Para a comunicação I2C

  1. Abra a ferramenta de configuração do Raspberry Pi:
    sudo raspi-config
    
  2. Navegar para Opções de interface> i2c e ativá -lo.
  3. Reinicie o Raspberry Pi:
    sudo reboot
    
  4. Verifique se o BMP280 é detectado No ônibus i2C:
    sudo i2cdetect -y 1
    
    O BMP280 deve aparecer no endereço 0x76 ou 0x77.

Para comunicação SPI

  1. Ativar SPI usando:
    sudo raspi-config
    
  2. Navegar para Opções de interface> SPI e ativá -lo.
  3. Reinicie o Raspberry Pi:
    sudo reboot
    
  4. Verifique a interface SPI usando:
    ls /dev/spidev*
    
    Você deveria ver /dev/spidev0.0 e /dev/spidev0.1.

Etapa 3: Instale as bibliotecas necessárias

  1. Atualize a lista de pacotes do Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Instale o necessário Ferramentas I2C/SPI e Bibliotecas Python:
    sudo apt install -y python3-smbus python3-spidev python3-pip
    pip3 install adafruit-circuitpython-bmp280
    

Etapa 4: Lendo dados do BMP280

Código Python para o modo 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...")

Código Python para o modo 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...")

Etapa 5: Aplicações de BMP280 com Raspberry Pi

  1. Monitoramento climático -Colete dados de temperatura e pressão para análise climática em tempo real.
  2. Medição de altitude - Use dados de pressão para estimar alterações de altitude.
  3. Projetos de IoT - Envie dados do sensor para plataformas em nuvem para monitoramento remoto.
  4. Automação residencial - Ajuste a ventilação e o ar condicionado com base em leituras ambientais.

Solução de problemas

  1. BMP280 não detectado (i2cdetect não mostra 0x76 ou 0x77)

    • Garanta o Pinos SDA/SCL estão corretamente conectados.
    • Verifique isso I2C está ativado usando sudo raspi-config.
  2. Leituras incorretas

    • Verifique conexões soltas ou Problemas da fonte de alimentação.
    • Verifique se o sensor é não exposto a mudanças repentinas de temperatura.
  3. Questões de comunicação SPI

    • Verifique se o SPI está ativado (ls /dev/spidev* deve listar dispositivos).
    • Verificar Seleção correta de pinos CS no script python.

Conclusão

O Sensor BMP280 fornece Medições precisas de pressão barométrica, temperatura e altitude, tornando -o ideal para estações meteorológicas, aplicações de IoT e monitoramento ambiental. Seguindo este guia, você pode facilmente integrar o BMP280 ao seu Projetos de Raspberry Pi Para coleta e análise de dados em tempo real! 🚀

Deixe um comentário

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.