Web siteme hoşgeldiniz, 16 Ocak 2026
muratdonmez.com.tr
Anasayfa » IOT » BME680: Evinizdeki Havayı Kapsamlı Analiz Edin

BME680: Evinizdeki Havayı Kapsamlı Analiz Edin

BME680: Evinizdeki Havayı Kapsamlı Analiz Edin

Ortam Algılamada Son Nokta

Daha önce DHT serisi ile sıcaklık ve nemi, BME280 ile bunlara ek olarak basıncı ölçmeyi öğrendik. Peki, ya bulunduğunuz ortamın “kalitesini” ölçmek isteseydiniz? Boya kokuları, yemek buharı, nefesimizle yaydığımız bileşenler… İşte bu noktada, Bosch’un en gelişmiş sensörlerinden biri olan BME680 devreye giriyor.

BME680, tek bir kompakt pakette sıcaklık, nem, barometrik basınç ve en önemlisi Uçucu Organik Bileşikleri (VOC) algılayabilen bir gaz sensörünü birleştiren 4’ü 1 arada sensördür.

BME680’in En Önemli Özelliği: VOC ve Hava Kalitesi (IAQ)

BME680’i BME280’den ayıran temel fark “G” harfidir (Gas).

  • Ne Ölçer? BME680, spesifik bir gazı (örneğin sadece Karbondioksit’i) ölçmez. Bunun yerine, VOC (Volatile Organic Compounds) olarak bilinen geniş bir Uçucu Organik Bileşik yelpazesini algılar.
  • VOC Nedir? Bunlar; alkol, çözücüler (tiner, boya), yapıştırıcı kokuları, yemek pişirme buharları, mobilyalardan salınan kimyasallar ve hatta insan nefesi gibi kaynaklardan gelen gaz halindeki kirleticilerdir.
  • Nasıl Çalışır? Sensörün içinde, belirli bir sıcaklığa (yaklaşık 320°C’ye) kadar ısıtılan minyatür bir “sıcak plaka” (hot plate) bulunur. Bu plakanın üzerindeki kimyasal katman, havadaki VOC’lerle reaksiyona girer ve sensörün elektriksel direncini değiştirir.
  • Çıktı Nedir? BME680 size “gaz direnci” (Gas Resistance) olarak bir değer verir. Bu direnç ne kadar düşerse, ortamdaki VOC miktarı o kadar yoğundur, yani hava kalitesi o kadar düşüktür.

Bu gaz direnci, sıcaklık ve nem verileriyle birlikte kullanılarak IAQ (Indoor Air Quality – İç Mekan Hava Kalitesi) endeksi adı verilen bir skor hesaplanabilir.

BME680 Çevresel Sensör (Gaz, Basınç, Nem, Sıcaklık)

Karşılaştırma: BME680 vs. BME280

ÖzellikBME280BME680
SıcaklıkEvetEvet
NemEvetEvet
BasınçEvetEvet
Gaz (VOC)HayırEvet (VOC / IAQ)
ArayüzI2C / SPII2C / SPI
Voltaj3.3V3.3V
Kullanım YeriHava durumu, irtifaAkıllı ev, hava kalitesi takibi

Arduino ve Raspberry Pi ile Kullanımı

BME680’i kullanmak, bir BME280’den biraz daha karmaşıktır, ancak sonuçları buna değer.

  1. Bağlantı (I2C):
    Sensör PiniESP32 PiniAçıklama
    VCC3.3VGüç girişi
    GNDGNDTopraklama
    SDAGPIO 21I2C Veri Pini (Varsayılan)
    SCLGPIO 22I2C Saat Pini (Varsayılan)
  2. Önemli Kütüphane: Bosch BSEC Gaz direncinden anlamlı bir “Hava Kalitesi Endeksi (IAQ)” skoru (örn: 0-500 arası bir değer) elde etmek oldukça karmaşık bir algoritma gerektirir. Neyse ki Bosch, bu işi yapan BSEC (Bosch Sensortec Environmental Cluster) adında kapalı kaynak kodlu (ancak kullanımı ücretsiz) bir kütüphane sunmaktadır.Arduino IDE’si için, Adafruit’in BME680 kütüphanesini ve Bosch’un BSEC kütüphanesini birlikte kurmanız önerilir. BSEC kütüphanesi, sıcaklık ve nem verilerini de kullanarak gaz direncini kalibre eder ve size güvenilir bir IAQ puanı verir.

BME680 Kimler Kullanmalı?

BME680, basit bir sıcaklık ölçümünden fazlasını isteyenler içindir. Eğer;

  • Akıllı bir ev sistemi kuruyorsanız,
  • Odanızdaki havayı ne zaman havalandırmanız gerektiğini bilmek istiyorsanız,
  • Bulunduğunuz ortamın genel “sağlığını” takip etmek istiyorsanız,

BME680, piyasadaki en kapsamlı ve kompakt çevresel sensörlerden biridir.

ESP32 BME680 Bağlantı Şeması

BME680’dan veri okuma ile ilgili örnek kodu aşağıya ekledim, kopyala yapıştır yaparak kodu ESP32’ye yükleyebilir ve sonuçları görebilirsiniz.

ESP32 (Arduino IDE) Örnek Kodu

Gerekli Kütüphaneler: “Adafruit BME680 Library” ve “Adafruit Unified Sensor”

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include "Adafruit_BME680.h"

#define SEALEVELPRESSURE_HPA (1013.25)
Adafruit_BME680 bme; // I2C

void setup() {
  Serial.begin(115200);
  Serial.println("BME680 Sensör Testi");

  if (!bme.begin(0x76)) { // Adres 0x76 veya 0x77 olabilir
    Serial.println("BME680 sensörü bulunamadı!");
    while (1);
  }

  // Sensör ayarları
  bme.setTemperatureOversampling(BME680_OS_8X);
  bme.setHumidityOversampling(BME680_OS_2X);
  bme.setPressureOversampling(BME680_OS_4X);
  bme.setIIRFilterSize(BME680_FILTER_SIZE_3);
  bme.setGasHeater(320, 150); // Gaz ısıtıcısını ayarla
}

void loop() {
  if (!bme.performReading()) {
    Serial.println("Okuma hatası!");
    return;
  }

  Serial.print("Sıcaklık: "); Serial.print(bme.temperature); Serial.println(" *C");
  Serial.print("Nem: "); Serial.print(bme.humidity); Serial.println(" %");
  Serial.print("Basınç: "); Serial.print(bme.pressure / 100.0); Serial.println(" hPa");
  Serial.print("Yaklaşık İrtifa: "); Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA)); Serial.println(" m");
  Serial.print("Gaz Direnci: "); Serial.print(bme.gas_resistance / 1000.0); Serial.println(" KOhms");
  Serial.println("---------------------------------");

  delay(2000);
}

Eğer akıllı ev, IOT projeleri ile ilgili sorularınız veya yapmak istediğiniz bir projeniz varsa, yedek alma ve yedekten dönme planınız veya felaket kurtarma planınız yoksa, işletmeniz için nasıl bir Sunucu, Bilgisayar veya Kesintisiz Güç Kaynağı seçmeniz gerektiğini bilmiyorsanız danışmanlık hizmetlerimden faydalanmak isterseniz bana WhatsApp üzerinden ulaşabilirsiniz.

İlgili Yazılar:

Sık Sorulan Sorular

  • BME680, BME280’den daha mı iyidir?
    “Daha iyi” olması ihtiyacınıza bağlıdır. Eğer sadece sıcaklık, nem ve basınç (irtifa/hava durumu) ile ilgileniyorsanız BME280 yeterlidir. Ancak bunlara ek olarak iç mekan hava kalitesini (VOC gazları) de ölçmek istiyorsanız, BME680 daha üstün bir seçenektir.
  • BME680 Karbondioksit (CO2) ölçer mi?
    Hayır. Bu çok yaygın bir yanılgıdır. BME680, Uçucu Organik Bileşikleri (VOC) ölçer (boya, solvent, alkol, yemek kokuları vb.). Gerçek Karbondioksit (CO2) seviyelerini (nefesle verdiğimiz) ölçmek için MH-Z19 veya SCD30 gibi farklı teknoloji (genellikle NDIR) kullanan sensörlere ihtiyacınız vardır.
  • BME680 sensörü neden ısınıyor?
    Bu normaldir. Gaz sensörünün çalışabilmesi için içindeki küçük metal plakanın yaklaşık 320°C’ye kadar ısınması gerekir. Bu ısı, çevredeki VOC gazlarıyla kimyasal reaksiyonun gerçekleşmesi için gereklidir. Bu nedenle sensör çalışırken dokunulduğunda ılık hissedilebilir.
  • BSEC Kütüphanesi nedir ve kullanmak zorunda mıyım?
    BSEC, Bosch’un tescilli bir yazılım algoritmasıdır. Ham gaz direnci verisini alır; sıcaklık ve nem ile kalibre ederek size 0-500 arasında basit bir “IAQ (İç Mekan Hava Kalitesi) Endeksi” puanı verir. Kullanmak zorunda değilsiniz, ham gaz direncini okuyabilirsiniz, ancak anlamlı ve stabil bir hava kalitesi skoru için BSEC kütüphanesinin kullanılması şiddetle tavsiye edilir.
  • BME680’i 5V Arduino UNO ile doğrudan kullanabilir miyim?
    Hayır, kullanamazsınız! BME680, 3.3V ile çalışan bir sensördür. 5V’luk bir Arduino’nun I2C pinlerine (SDA/SCL) doğrudan bağlarsanız sensöre kalıcı olarak hasar verirsiniz. Mutlaka 3.3V-5V arası çalışan bir lojik seviye dönüştürücü (logic level shifter) kullanmanız gerekir.

Etiketler:

BU KONUYU SOSYAL MEDYA HESAPLARINDA PAYLAŞ
Yorumlar

Henüz yorum yapılmamış.

Yorum Yaz