A BMP280 a barometrikus nyomás és hőmérsékleti érzékelő amely pontos légköri nyomást és hőmérséklet -leolvasást biztosít. Általában használják Időjárás -megfigyelés, magasságkövetés és környezetérzékelés- Ez az útmutató végigvezeti a beállítást és a BMP280 egy málna PI -vel felhasználás Python és I2C/SPI kommunikáció.
Mire lesz szüksége
- Málna PI (Bármely modell GPIO -támogatással, például PI 3, PI 4)
- BMP280 érzékelő modul
- Kenyérlemez és jumper vezetékek
- Python telepítve a málna pi -n
1. lépés: A BMP280 bekapcsolása a Raspberry PI -hez
A A BMP280 támogatja mind az I2C, mind az SPI kommunikációt.
I2C módhoz (ajánlott)
BMP280 PIN | Málna pi tű |
---|---|
VCC | 3.3 V (1. érintkező) |
GND | Föld (6. érintkező) |
SDA | SDA (3. érintkező, GPIO2) |
SCL | SCL (5. érintkező, GPIO3) |
SPI módhoz
BMP280 PIN | Málna pi tű |
---|---|
VCC | 3.3 V (1. érintkező) |
GND | Föld (6. érintkező) |
SCK | SCLK (23. tű, GPIO11) |
SDI | MOSI (19. érintkező, GPIO10) |
SDO | Miso (21. érintkező, gpio9) |
CS | CE0 (24. érintkező, GPIO8) |
Jegyzet: A BMP280 a 3.3 V -os. Nem Csatlakoztassa az 5V -re, mivel ez károsíthatja a modult.
2. lépés: Engedélyezze az I2C vagy az SPI -t a Raspberry PI -n
Az I2C kommunikációhoz
- Nyissa meg a Raspberry PI konfigurációs eszközt:
sudo raspi-config
- Navigál Interfész opciók> i2c és engedélyezze.
- Indítsa újra a Raspberry Pi -t:
sudo reboot
- Ellenőrizze, hogy a A BMP280 észlelhető Az I2C buszon:
A A BMP280 címen megjelenik a címensudo i2cdetect -y 1
0x76
vagy0x77
.
Az SPI kommunikációhoz
- Engedélyezze az SPI -t:
sudo raspi-config
- Navigál Interfész opciók> SPI és engedélyezze.
- Indítsa újra a Raspberry Pi -t:
sudo reboot
- Ellenőrizze az SPI felületet:
Látnod kellls /dev/spidev*
/dev/spidev0.0
és/dev/spidev0.1
.
3. lépés: Telepítse a szükséges könyvtárakat
- Frissítse a Raspberry Pi csomaglistáját:
sudo apt update && sudo apt upgrade -y
- Telepítse a szükséges I2C/SPI eszközök és Python könyvtárak:
sudo apt install -y python3-smbus python3-spidev python3-pip pip3 install adafruit-circuitpython-bmp280
4. lépés: Adatok olvasása a BMP280 -ból
Python kód az i2c módhoz
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 kód az SPI módhoz
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...")
5. lépés: A BMP280 alkalmazása a Raspberry PI -vel
- Időjárás -megfigyelés -Gyűjtse össze a hőmérsékleti és nyomásadatokat a valós idejű időjárási elemzéshez.
- Magasságmérés - Használja a nyomásadatokat a magasságváltozások becsléséhez.
- IOT projektek - Küldje el az érzékelő adatait felhőplatformokra a távoli megfigyeléshez.
- Otthoni automatizálás - Állítsa be a szellőztetést és a légkondicionálást a környezeti leolvasások alapján.
Hibaelhárítás
-
A BMP280 nem észlelt (
i2cdetect
nem mutat0x76
vagy0x77
)- Gondoskodjon a SDA/SCL csapok helyesen vezetékes.
- Ellenőrizze ezt Az I2C engedélyezve van felhasználás
sudo raspi-config
.
-
Helytelen olvasmányok
- Ellenőrizze laza csatlakozások vagy áramellátási problémák.
- Gondoskodjon arról, hogy az érzékelő legyen nem szabad a hirtelen hőmérsékleti változásoknak kitéve.
-
SPI kommunikációs problémák
- Győződjön meg arról, hogy az SPI engedélyezve van (
ls /dev/spidev*
fel kell sorolni az eszközöket). - Igazol Helyes CS PIN -választás A Python szkriptben.
- Győződjön meg arról, hogy az SPI engedélyezve van (
Következtetés
A BMP280 érzékelő biztosít pontos barometrikus nyomás, hőmérséklet és magasságmérések, ideálissá téve Időjárási állomások, IoT alkalmazások és környezeti megfigyelés- Az útmutató követésével könnyen integrálhatja a BMP280 -at Raspberry PI projektek A valós idejű adatgyűjtéshez és elemzéshez! 🚀