ROBOTKODLA
ROBOTKODLA Genç Mucit

Eğlen, Kodla, Geleceği Tasarla

Model: BME680 Sensör Modülü (Breakout) Orta Seviye Üretici: Bosch Sensortec

BME680 4'ü 1 Arada Çevresel Sensör (Gaz, Hava Basıncı, Nem ve Sıcaklık)

Tek bir minyatür çipte ortam sıcaklığı, bağıl nem, barometrik hava basıncı ve uçucu organik bileşik (VOC / IAQ) gaz direncini birleştiren komple çevre istasyonudur.

Önemli Güvenlik ve Teknik Sınırlama Bilgisi

Gaz sensörü içindeki minyatür metal oksit ısıtıcı 320°C'ye kadar ısıtılır; ölçüm anında çekilen pik akım nedeniyle zayıf USB beslemelerinde çökmeler yaşanabilir.

Teknik Özellikler ve Elektriksel Parametreler

Çalışma Voltajı 1.71V - 3.60V Lojik Seviye Giriş/Çıkış
Akım Tüketimi 3.7 µA (nem/sıcaklık), 12 mA (gaz ısıtıcı darbesi) Tipik çalışma modu
Haberleşme Arayüzü I2C (0x77 veya 0x76) ve SPI Protokol türü
Ölçüm Aralığı Basınç: 300-1100 hPa, Nem: %0-100, Sıcaklık: -40-+85°C, VOC Gaz Direnci Etkili çalışma sınırı
Hassasiyet / DoğrulukHava Kalitesi İndeksi (IAQ)Ölçüm sapma payı
Tepki SüresiDahili MOX ısıtıcı döngüsü (100-300 ms)Örnekleme hızı
Ölçüm TürüGaz (VOC / Hava Kalitesi), Basınç, Nem ve SıcaklıkFiziksel büyüklük
Pin Sayısı6 PinModül header pinleri

Pin Bağlantıları ve Görevleri (Pinout)

Pin #Pin AdıSinyal TürüGörev & Açıklama
1 VIN Güç 3.3V / 5V DC besleme
2 GND Toprak Toprak 0V
3 SCK Saat I2C SCL / SPI SCK
4 SDO MISO / Adres I2C Adres seçimi (GND=0x76, VDD=0x77)
5 SDI Veri Giriş I2C SDA / SPI MOSI
6 CS Çip Seçim I2C modu için VDD'ye bağlanır

Geliştirme Kartı Uyumluluk Durumu

Arduino Uno / Nano ✓ Uyumlu
5V Lojik

Doğrudan bağlantı ve yerleşik 5V desteği.

ESP32 (NodeMCU) ✓ Uyumlu
3.3V Lojik

3.3V ile tam uyumlu çalışır.

Raspberry Pi Pico ✓ Uyumlu
3.3V Lojik

MicroPython veya C/C++ SDK ile desteklenir.

BBC Micro:bit ✓ Uyumlu
3.3V Lojik

MakeCode blokları veya MicroPython ile uyumlu.

STM32 (BluePill) ✓ Uyumlu
3.3V (5V Tolerant)

5V tolerant GPIO pinleri doğrudan bağlanabilir.

Örnek Kaynak Kod Kütüphanesi

Arduino Uno Arduino C++ ✓ Test Edildi

Adafruit BME680 ile 4 Parametre Çevresel Ölçüm

Gerekli Kütüphaneler: Adafruit BME680 Library
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include "Adafruit_BME680.h"

Adafruit_BME680 bme;

void setup() {
  Serial.begin(115200);
  if (!bme.begin(0x77)) {
    Serial.println("BME680 bulunamadı!");
    while (1);
  }

  // Aşırı örnekleme ve filtre ayarları
  bme.setTemperatureOversampling(BME680_OS_8X);
  bme.setHumidityOversampling(BME680_OS_2X);
  bme.setPressureOversampling(BME680_OS_4X);
  bme.setIIRFilter(BME680_FILTER_SIZE_3);
  bme.setGasHeater(320, 150); // 320°C ısıtıcı, 150 ms süre
}

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

  Serial.print("Sıcaklık: "); Serial.print(bme.temperature); Serial.print(" °C | ");
  Serial.print("Nem: %"); Serial.print(bme.humidity); Serial.print(" | ");
  Serial.print("Basınç: "); Serial.print(bme.pressure / 100.0); Serial.print(" hPa | ");
  Serial.print("Gaz Direnci: "); Serial.print(bme.gas_resistance / 1000.0); Serial.println(" KOhms");

  delay(2000);
}
Seri Monitör Çıktısı (Simülasyon):
Sıcaklık: 24.8 *C | Nem: %45.2 | Basınç: 1012.3 hPa | Gaz: 142.5 KOhms

Çalışma Mantığı ve Fiziksel İlkeler

BME680 Neden Çığır Açıcıdır?

Normalde bir hava kalitesi istasyonu kurmak için ayrı sıcaklık sensörü, ayrı nem sensörü, ayrı barometre ve ayrı bir MQ gaz sensörü gerekirdi.

Bosch BME680, 3x3 mm'lik tek bir kılıfta bu dört sensörü entegre eder:

  • Sıcaklık: ±0.5°C doğruluk
  • Bağıl Nem: ±3% RH doğruluk
  • Barometrik Basınç: ±0.12 hPa (yükseklik ve hava durumu)
  • MOX Gaz Sensörü: Alkol, boya buharları, tiner, karbonmonoksit ve sigara dumanı gibi Uçucu Organik Bileşikleri (VOC) algılar ve Bosch BSEC algoritmasıyla IAQ (İç Ortam Hava Kalitesi İndeksi - 0 ile 500) puanı üretir.
  • Artıları ve Sınırlamaları

    Güçlü Yönleri (Avantajlar)
  • 4 sensör tek pakette (yer ve kablo tasarrufu)
  • Gerçek zamanlı İç Ortam Hava Kalitesi (IAQ) hesaplama
  • Bosch Sensortec BSEC kütüphane desteği
  • Sınırlamaları (Dezavantajlar)
  • Gaz ısıtıcısı nedeniyle ortalama güç tüketimi diğer barometrelerden biraz daha yüksektir
  • Sık Karşılaşılan Sorunlar ve Çözümleri

  • Gaz sensörünün stabil değer vermesi için ilk açılışta 20-30 dakika ön ısıtma (burn-in) gereklidir.