Macademia'nın robotik ve mühendislik programı · ücretsiz seviye tespiti ve kişisel öğrenme yolu
Sensör

BMP280 basınç sensörü

Hava basıncını ve sıcaklığı I2C ile veren sensör. Basınçtan rakım hesaplanabilir.

Laboratuvarda dene

Nasıl çalışır?

BMP280, havanın basıncını ölçer. Yükseldikçe üstümüzdeki hava azaldığı için basınç düşer; bu yüzden basınçtan rakım hesaplanabilir. Sensör I2C üzerinde 0x76 ya da 0x77 adresinde durur. Aynı iki kabloyu (SDA ve SCL) farklı adresli başka I2C cihazlarıyla paylaşabilir.

Adafruit_BMP280 kütüphanesinde bmp.begin(0x76) sensörü adresinden arar; kütüphanenin varsayılan adresi 0x77'dir. readPressure() basıncı Pa olarak, readTemperature() sıcaklığı santigrat olarak verir. readAltitude(P0) rakımı hesaplar ve deniz seviyesi basıncı P0'ı hPa olarak bekler.

İleri düzey: Rakım formülü 44330 × (1 − (P / P0) ^ (1 / 5,255)) standart atmosfer varsayımına dayanır. P0 hava durumuyla değiştiğinden rakım okuması da kayar; deniz seviyesine yakın yerlerde 1 hPa yaklaşık 8 m eder. Gerçek bir modülün besleme gerilimi için veri sayfasına bakılmalıdır.

Laboratuvarda nasıl bağlanır?

NeredenNereye
BMP280 VCCUno 5V
BMP280 GNDUno GND
BMP280 SDAUno A4
BMP280 SCLUno A5

Özellik panelinde Sıcaklık (-40 ile 85 °C), Basınç (300 ile 1100 hPa) ve I2C adresi (0x76 ya da 0x77) bulunur. Sıcaklık ve basınç program çalışırken değiştirilebilir. Koddaki adres özellik panelindeki adresle aynı olmalıdır.

Sık yapılan hatalar

  • Adresi unutmak. Sensör 0x76 iken parametresiz begin() ile "bulunamadı" sonucu almak.
  • Pa ile hPa'yı karıştırmak. readAltitude(101325) yazılırsa rakım çok yanlış çıkar.
  • SDA ve SCL'yi ters bağlamak. Sensör hiç bulunamaz.
  • begin sonucunu denetlememek. Sensör yokken anlamsız sayılar okunur.
  • Rakımı kesin saymak. Hava değişince P0 değişir ve rakım yer değiştirmeden kayar.
Esc
  • PanelAna sayfaSayfa
  • ModüllerTüm modüllerSayfa
  • ParçalarParça ansiklopedisiSayfa
  • Mühendislik yoluBüyükler için robotik: 128 parça, 7 seviyeSayfa
  • Robotik dersi (ESOF 323)Üniversite robotik dersi, 14 haftaSayfa
  • TestlerimMini testler ve puanlarSayfa
  • Blok atölyesiSerbest blok programlamaAraç
  • Devre laboratuvarıSanal Arduino ve devreAraç
  • Robot arenasıSanal robot sürüşüAraç
  • OyunlarBloklarla 8 öğretici oyunAraç
  • Mikro Kart atölyesiSanal LED kartı bloklarla programlaAraç
  • Robot atölyesiMikro Kart'ı robota tak, bloklarla görev yapAraç