Basınç sensörü, bir gaz ya da sıvının uyguladığı basıncı elektriksel bir sinyale çevirir. BMP280 ve BME280 gibi barometrik sensörler hava basıncını ölçer; hava durumu tahmini ve yükseklik hesabı için kullanılır. BME280 bunlara ek olarak nem de ölçer. Su, yağ ve hava hatlarındaki basınç ise vidalı gövdeli endüstriyel basınç sensörleriyle (transmitter) ölçülür. BMP280 ve BME280 I2C ya da SPI üzerinden 3,3V ile çalışır.
Hava istasyonları, drone'lar, akıllı saatler, kompresörler ve su tesisatları... Hepsinde bir basınç sensörü bulunur. Ancak hava basıncını ölçen küçük bir modül ile bir hidrofor hattındaki su basıncını ölçen sensör çok farklıdır. Bu rehberde basınç sensörü çeşitlerini, BMP280 ile BME280 farkını ve Arduino ile kullanımını anlatıyoruz.
Basınç sensörü nedir?
Basınç sensörü, bir gaz ya da sıvının yüzeye uyguladığı kuvveti (basıncı) ölçüp elektriksel bir sinyale çeviren sensördür. Çoğu modern sensörün içinde basınçla esneyen ince bir zar (diyafram) bulunur; zarın üzerindeki algılayıcılar bu esnemeyi direnç ya da kapasite değişimi olarak ölçer.
Basınç sensörü çeşitleri
| Tür | Ne ölçer | Örnek |
|---|---|---|
| Barometrik (mutlak) | Atmosfer basıncı, yükseklik | BMP280, BME280, LPS22HB |
| Diferansiyel | İki nokta arasındaki basınç farkı (hava akışı, filtre tıkanıklığı) | MPX5010DP |
| Gösterge (gauge) basınç | Ortam basıncına göre hat basıncı | XGZP6847A, vidalı transmitterler |
| Endüstriyel transmitter | Su, yağ, hava ve gaz hatlarındaki basınç | G1/4 paslanmaz basınç sensörü |
BMP280 ve BME280 arasındaki fark nedir?
BMP280 hava basıncını ve sıcaklığı ölçer; BME280 bunlara ek olarak bağıl nemi de ölçer. İkisi de Bosch tarafından üretilir, aynı bağlantıyı ve benzer basınç hassasiyetini kullanır. Modüller dışarıdan çok benzer göründüğü için karıştırılabilir; aldığınız modülün hangi çipi taşıdığını ürün bilgisinden ya da kütüphanenin okuduğu çip kimliğinden kontrol edin. Sıcaklık, nem ve basınç gereken hava istasyonu projeleri için BME280 basınç ve sıcaklık sensörü ya da BME280 nem, sıcaklık ve basınç sensörü uygundur.
BME280 Arduino'ya nasıl bağlanır?
- VCC: 3,3V (regülatörlü modüller 5V ile de beslenebilir; modülün özelliğini kontrol edin).
- GND: GND.
- SDA: Arduino Uno'da A4, ESP32'de genellikle GPIO 21.
- SCL: Arduino Uno'da A5, ESP32'de genellikle GPIO 22.
I2C adresi modüle göre 0x76 ya da 0x77'dir. Sensör bulunamazsa bir I2C tarayıcı koduyla adresi kontrol edin. Arduino'da Adafruit BME280 (ya da BMP280) kütüphanesi kullanılır; readPressure() Pa cinsinden basınç döndürür, 100'e bölünerek hPa elde edilir.
Basınç sensörüyle yükseklik nasıl hesaplanır?
Hava basıncı yükseklik arttıkça azalır; deniz seviyesine yakın yerlerde yaklaşık her 8-9 metrelik yükselişte basınç yaklaşık 1 hPa düşer. Kütüphanelerdeki readAltitude() fonksiyonu, deniz seviyesi basıncını referans alarak yüksekliği hesaplar. Doğru sonuç için bulunduğunuz yerin güncel deniz seviyesi basıncını (meteoroloji verilerinden) girmeniz gerekir; hava durumu değiştikçe basınç da değiştiği için mutlak yükseklik ölçümü birkaç metre ile on metreler arasında sapabilir. Bağıl yükseklik değişimi (ör. drone'un kalkıştan itibaren yüksekliği) ise çok daha doğru ölçülür.
Su ve yağ basıncı nasıl ölçülür?
Hidrofor, kompresör ve hidrolik hatlarda G1/4 gibi vidalı bağlantılı, paslanmaz gövdeli basınç sensörleri kullanılır; bunların çoğu 5V ile beslenip basınçla orantılı bir analog gerilim verir. Örneğin birçok modelde çıkış, basınç aralığının başında yaklaşık 0,5V, sonunda yaklaşık 4,5V'tur; kesin değerleri ürünün teknik belgesinden alın. Çıkış Arduino'nun analog girişine bağlanır ve gerilim, sensörün aralığına göre basınca çevrilir. Analog okuma ve ölçeklemenin mantığı için potansiyometre rehberimize bakabilirsiniz.
Adım adım hava istasyonu kurulumu
- BME280'i I2C ile bir Arduino ya da ESP32'ye bağlayın.
- Kütüphaneyi kurup sıcaklık, nem ve basıncı seri ekrana yazdırın.
- Basıncı birkaç saatlik aralıklarla kaydedin: hızlı düşen basınç genellikle kötüleşen havayı, yükselen basınç düzelen havayı gösterir.
- Sensörü güneş ışığından ve kartın ısısından uzak, havalandırmalı bir kutuya yerleştirin.
- Verileri bir ekranda gösterin ya da Wi-Fi ile telefona gönderin; bkz. ESP32 akıllı ev projesi.
Sık sorulan sorular
BMP280 nem ölçer mi?
Hayır, BMP280 yalnızca basınç ve sıcaklık ölçer. Nem de ölçmek gerekiyorsa BME280 kullanılmalıdır.
Hava basıncı birimi nedir?
Hava basıncı genellikle hektopaskal (hPa) ya da milibar (mbar) ile ifade edilir; 1 hPa = 1 mbar = 100 Pa'dır. Deniz seviyesinde standart atmosfer basıncı yaklaşık 1013 hPa'dır.
BME280 ile yükseklik ne kadar doğru ölçülür?
Bağıl yükseklik değişimleri birkaç on santimetre ile bir metre civarında çözünürlükle izlenebilir. Mutlak yükseklik ise hava basıncındaki günlük değişimlerden etkilenir ve yerel deniz seviyesi basıncı girilmedikçe sapma gösterir.
BME280 neden sıcaklığı yüksek gösteriyor?
Sensör kartın ya da mikrodenetleyicinin ısısından etkilenebilir; ayrıca sürekli ölçüm modunda kendisi de az da olsa ısınır. Sensörü ısı kaynaklarından uzaklaştırın ve kütüphanenin düşük ölçüm hızı (forced mode) ayarlarını kullanın.
Su basıncı sensörü Arduino'ya bağlanır mı?
Evet, analog çıkışlı (ör. 0,5-4,5V) basınç sensörleri doğrudan Arduino'nun analog girişine bağlanabilir. Çıkışı 5V'a kadar çıkan sensörleri 3,3V kartlara bağlarken gerilim bölücü kullanılmalıdır.
Özet
- Basınç sensörü basıncı elektriksel sinyale çevirir; barometrik, diferansiyel ve endüstriyel türleri vardır.
- BMP280 basınç ve sıcaklık, BME280 ayrıca nem ölçer.
- BME280 I2C ile bağlanır; adres 0x76 ya da 0x77'dir.
- Yükseklik hesabı için yerel deniz seviyesi basıncı gerekir.
- Su ve yağ basıncı vidalı, analog çıkışlı transmitterlerle ölçülür.