Arduino

Arduino ve Gaz Sensörü (MQ-2) ile Gaz Algılama Projesi

Aykut AKMAN 1 yıl önce Yorumlar (0) 4 Dakika Okuma
Arduino ve Gaz Sensörü (MQ-2) ile Gaz Algılama Projesi
E-Posta : 1.5k 0

Gaz sensörleri, ortamda bulunan gazların varlığını algılayarak güvenlik ve otomasyon sistemlerinde önemli bir rol oynar. MQ-2 gaz sensörü, LPG, duman, alkol, propan ve diğer yanıcı gazları algılayabilir. Bu yazıda, gaz sensörü ile gaz algılama projesini inceleyeceğiz.

Gerekli Malzemeler

  • 1 x Arduino Uno (veya uyumlu bir model)
  • 1 x MQ-2 Gaz Sensörü
  • 1 x LED (uyarı göstergesi için)
  • 1 x 220Ω direnç (LED için)
  • 1 x Buzzer (isteğe bağlı, sesli uyarı için)
  • Breadboard
  • Bağlantı Kabloları

Devre Bağlantıları

MQ-2 Gaz Sensörü Pinleri

  • VCC: Arduino'nun 5V pinine bağlanır.
  • GND: Arduino'nun GND pinine bağlanır.
  • AO: Analog veri çıkışı, Arduino'nun A0 pinine bağlanır.
  • DO: Dijital veri çıkışı, Arduino'nun dijital bir pinine bağlanabilir (isteğe bağlı).

LED ve Buzzer Bağlantıları

  • LED: Uzun bacağını (anot) Arduino'nun dijital bir çıkış pinine (ör. D9) bağlayın, kısa bacağı GND'ye bağlanır. 220Ω direnç LED'e seri olarak bağlanmalıdır.
  • Buzzer: Pozitif bacağı Arduino'nun bir çıkış pinine (ör. D8), negatif bacağı GND'ye bağlanır.

Arduino Kodu

Aşağıdaki kod, gaz sensöründen veri okuyarak gaz seviyesine göre LED ve buzzer kontrolü yapar:

Kod Açıklamaları

const int mq2Pin = A0;  // MQ-2'nin analog çıkışı
const int ledPin = 9;   // LED pini
const int buzzerPin = 8; // Buzzer pini

void setup() {
  pinMode(ledPin, OUTPUT);   // LED pini çıkış olarak ayarlandı
  pinMode(buzzerPin, OUTPUT); // Buzzer pini çıkış olarak ayarlandı
  Serial.begin(9600);        // Seri iletişim başlatıldı
}

void loop() {
  int gasLevel = analogRead(mq2Pin);  // Gaz seviyesini oku
  Serial.print("Gaz Seviyesi: ");
  Serial.println(gasLevel);          // Gaz seviyesini seri monitörde göster
  
  // Gaz seviyesi eşik değerine göre kontrol
  if (gasLevel > 400) {              // Eşik değeri (örneğin, 400)
    digitalWrite(ledPin, HIGH);      // LED yanar
    digitalWrite(buzzerPin, HIGH);   // Buzzer çalar
  } else {
    digitalWrite(ledPin, LOW);       // LED söner
    digitalWrite(buzzerPin, LOW);    // Buzzer kapanır
  }
  
  delay(500); // Veri okuma ve yazma arasında gecikme
}

Gaz Seviyesi Okuma

analogRead(mq2Pin) fonksiyonu ile MQ-2 sensöründen gelen analog veriyi okur. Bu veri, ortamda algılanan gazın yoğunluğunu temsil eder.

Eşik Kontrolü

Gaz seviyesi belirli bir eşik değeri (ör. 400) üzerinde olduğunda LED ve buzzer çalışır. Bu eşik değeri, sensörün ortamda algıladığı gaz yoğunluğuna göre ayarlanabilir.

LED ve Buzzer Kontrolü

Gaz seviyesi yüksek olduğunda LED yanar ve buzzer uyarı verir.

Proje Prensibi

  • MQ-2 sensörü, ortamda bulunan gazları algılar ve buna göre bir analog sinyal üretir.
  • Arduino, bu sinyali okuyarak gaz yoğunluğunu belirler.
  • Gaz yoğunluğu eşik değeri üzerinde olduğunda, görsel ve/veya sesli bir uyarı verilir.

Kullanım Alanları

  • Ev Güvenliği: Gaz kaçaklarını algılamak için.
  • Endüstriyel Kontrol: Çalışma alanlarında gaz seviyelerini izlemek için.
  • Hava Kalitesi İzleme: Ortamın hava kalitesini ölçmek için.

Bu proje, hem güvenlik uygulamaları için faydalı bir başlangıç projesi hem de Arduino ile sensör kullanımını öğrenmek için mükemmel bir örnek olacaktır. Tinkercad üzerinde MQ-135 sensör ile simülasyonu yapılmış olup, gerçek donanım ile MQ-2 sensörle bu proje kolayca test edilebilir.

Sıkça Sorulan Sorular

MQ-2, LPG, duman, alkol, propan ve yanıcı gazları algılayabilen bir sensördür. Genellikle güvenlik sistemlerinde gaz kaçaklarını algılamak için kullanılır.

VCC pinini Arduino'nun 5V pinine, GND pinini GND'ye ve AO pinini analog giriş pinlerinden birine (ör. A0) bağlayabilirsiniz.

LPG, metan, alkol, propan, duman ve diğer yanıcı gazları algılar.

Sensörden gelen analog sinyal analogRead() fonksiyonu ile okunarak gaz seviyesi belirlenir. Bu değer, gaz yoğunluğunu temsil eder.

Analog çıkış gazın yoğunluğunu sürekli bir değer olarak verirken, dijital çıkış önceden belirlenmiş bir eşik değere göre yüksek (1) veya düşük (0) sinyal verir.

Gaz kaçak algılama, hava kalitesi izleme, duman algılama ve otomatik havalandırma sistemleri gibi projelerde kullanılabilir.

Ortama bağlı olarak değişiklik gösterir. Test sonuçlarına göre genellikle 300-500 arasında bir değer seçilir.

Kalibrasyon için sensörü bilinen bir gaz yoğunluğuna maruz bırakabilir ve okunan analog değeri eşik değeri olarak ayarlayabilirsiniz.

Sensörden gelen analog veriyi analogRead() ile okuyarak bir eşik değeri kontrol edilir ve LED veya buzzer gibi uyarı sistemleri çalıştırılır.

Gaz yoğunluğu belirli bir eşik değeri aştığında LED yakmak veya buzzer çalmak için bir alarm sistemi oluşturabilirsiniz.

Aykut AKMAN

Aykut AKMAN

Bilgisayar ve Öğretim Teknolojileri Öğretmeni

Bu Gönderiye Yorum Yapılmamış

Yorum Yap

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlendi.

Diğer Yazılar