Ecco una semplice guida su come utilizzare il sensore di pressione barometrica e temperatura BMP180 con il tuo Raspberry Pi. Il sensore BMP180 è in grado di misurare la pressione atmosferica e la temperatura, rendendolo utile per stazioni meteorologiche, rilevamento dell'altitudine e altre applicazioni di monitoraggio ambientale.
Cosa ti servirà
- Raspberry Pi (qualsiasi modello con supporto GPIO, ad esempio Pi 3, Pi 4)
- Modulo sensore BMP180
- Breadboard e cavi jumper
- Un computer con accesso SSH al Raspberry Pi o una tastiera e un monitor collegati
- Python installato sul Raspberry Pi
Passaggio 1: Collegamento del BMP180 al Raspberry Pi
Il BMP180 comunica con il Raspberry Pi tramite il protocollo I2C.
Collegamenti (Modalità I2C)
| Pin del BMP180 | Pin del Raspberry Pi |
|---|---|
| VCC | 3.3V (Pin 1) |
| GND | Massa (Pin 6) |
| SDA | SDA (Pin 3, GPIO2) |
| SCL | SCL (Pin 5, GPIO3) |
Passaggio 2: Abilitare l'interfaccia I2C sul Raspberry Pi
- Apri lo strumento di configurazione del Raspberry Pi:
sudo raspi-config - Vai su Interface Options > I2C e abilitala.
- Riavvia il Raspberry Pi:
sudo reboot
Passaggio 3: Installare le librerie necessarie
- Aggiorna il tuo Raspberry Pi:
sudo apt update && sudo apt upgrade -y - Installa gli strumenti I2C e le librerie Python necessarie:
sudo apt install -y i2c-tools python3-smbus python3-pip sudo pip3 install bmp180 - Verifica che il BMP180 sia rilevato sul bus I2C:
Dovresti vedere l'indirizzo del dispositivo (solitamentesudo i2cdetect -y 10x77) nell'output.
Passaggio 4: Lettura dei dati dal BMP180
Usa il seguente script Python per leggere i dati di temperatura e pressione dal BMP180.
Esempio di codice Python
import time
import bmp180
# Crea un oggetto sensore
sensor = bmp180.BMP180()
# Leggi e visualizza temperatura e pressione
while True:
temperature = sensor.read_temperature()
pressure = sensor.read_pressure()
altitude = sensor.read_altitude()
print(f"Temperatura: {temperature:.2f} °C")
print(f"Pressione: {pressure / 100.0:.2f} hPa")
print(f"Altitudine: {altitude:.2f} m")
print("------------------------")
time.sleep(2)
Passaggio 5: Applicazioni del BMP180
- Stazioni meteorologiche: Misura la pressione atmosferica e la temperatura per prevedere i modelli meteorologici.
- Rilevamento dell'altitudine: Usa il sensore per tracciare i cambiamenti di altitudine, utile per progetti con droni o attività all'aperto.
- Monitoraggio ambientale: Monitora le condizioni ambientali, come i cambiamenti di pressione, che potrebbero indicare una tempesta o altri fenomeni meteorologici.
Risoluzione dei problemi
-
Dispositivo non rilevato:
- Assicurati che i pin SDA e SCL siano collegati correttamente.
- Verifica che l'interfaccia I2C sia abilitata sul Raspberry Pi.
-
Letture imprecise:
- Assicurati che il sensore non sia esposto a temperature estreme o cambiamenti di pressione durante la lettura.
- Verifica la corretta calibrazione del sensore se i risultati sembrano errati.
-
Errori I2C:
- Controlla eventuali conflitti di indirizzo sul bus I2C.
Conclusione
Il BMP180 è un sensore semplice ma potente che può essere facilmente integrato nei tuoi progetti Raspberry Pi. Con questa guida, puoi leggere i dati di pressione e temperatura per una varietà di applicazioni, dalle stazioni meteorologiche al rilevamento dell'altitudine.

