mq-gas-sensor

Odanın Hava Kalitesini Ayarlama

Bir adet hava kalite sensoru ( MQ-135) ve bir adet nem+ ısı sensoru ile yapılabilecek güzel bir projedir. MQ-135 havanın kalitesinin bozulması ile değişik değerler verir mesela CO2 yada O2 veya daha farklı gazlardan dolayı değeri değişir bunu atmega çipi ile kontrolü sağlanır ve çıkan değere göre havalandırma çalıştırılabilir, DHT11 yada DHT22 ile ise nem ve ısı ölçülür odanın sıcaklığını nemini ve hava değerlerine göre havalandırma ,ısıtıcı, hava nemlendirici ve en sonunda oda parfümü sıkma gibi işler yaptırılabilir .

Batarya 12 Voltluk projemizi uzun süre çalıştırması için MQ-135 Hava kalite sensörünün bağlantı şeması şekildeki gibidir.

 

 

MQ135

 Once Breadboardda çalışıp çalışmadığını kontrol ettim daha sonra MQ-135 Hava sensörünü denedim, bir sıkıntı ile karşılaştım  hava sensörünün içerisinde bulunan ısıtıcı yüksek akım çektiğinden dolayı arduino ile güç verilmesi sakıncalı, 150mA akım çekiyor .Dışardan bir güç kaynağı ile çalıştırılması gerekiyor. Kesinlikle arduinoya direk bağlantı yapmayın.
Projemizde 20×4 LCD kullandım

IMG_20130114_194516

DSC_0091

                        DSC_0095

Programı şuanda  geliştirilme aşamasında

DSC_0096

DSC_0097

DSC_0086

int lastReadTime;
int airQuality;
long int interval = 10*100;
#include "DHT.h"
#define DHTPIN 2 // what pin we're connected to
#define DHTTYPE DHT11 // DHT 11
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
//declare variables
DHT dht(DHTPIN, DHTTYPE);

void setup() {
Serial.begin(9600);
dht.begin();
lcd.init();
// Print a message to the LCD.
lcd.backlight();
}

void loop() {
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
float t = dht.readTemperature();
airQuality = analogRead(5); // read analog input pin 5

// check if returns are valid, if they are NaN (not a number) then something went wrong!
long currentTime=millis();
if (currentTime>lastReadTime+interval){
if (isnan(t) || isnan(h)) {
Serial.println("Failed to read from DHT");
} else {
lcd.clear();
lcd.setCursor(3,0);
lcd.print("Humidity: ");
lcd.print(h);
lcd.print(" %\t");
lcd.setCursor(2,1);
lcd.print("Temperature: ");
lcd.print(t);
lcd.print(" *C");
lcd.setCursor(0,2);
lcd.print(airQuality, DEC); // prints the value read
lcd.setCursor(0,3);
lcd.print(" www.arduinom.org")
lastReadTime=millis();
}

}
//////////////////////////humidity////////////////////////////////////////////////
if (h<40){
digitalWrite(2,HIGH); // humidifier device
digitalWrite(5,HIGH);// red Color of light according to humidity which color should we select ? ()
digitalWrite(6,HIGH); // green color TOTAL RED+GREEN = YELLOW
} else {
digitalWrite (2,LOW); // humidifier device
digitalWrite(7,HIGH); // Blue COLOR
digitalWrite(6,HIGH); // green color TOTAL blue+GREEN = Cyan
digitalWrite(5,LOW);// red Color of light according to humidity which color should we select ? ()
}

if (h>50){
digitalWrite(3, HIGH);// air Conditioner
digitalWrite(5,HIGH);// red Color of light according to humidity which color should we select ? ()
digitalWrite(7,HIGH); // Blue COLOR RED+BLUE= MAGENTA
} else {
digitalWrite(3, LOW);// air Conditioner
digitalWrite(7,HIGH); // Blue COLOR
digitalWrite(6,HIGH); // green color TOTAL blue+GREEN = Cyan
digitalWrite(5,LOW);// red Color of light according to humidity which color should we select ? ()
}
////////////////////////////////////temprature////////////////////////////////
if (t > 28){
digitalWrite(3, HIGH);// air Conditioner
digitalWrite(9,HIGH);// red Color of light according to humidity which color should we select // RED COLOR FOR HOT WEATHER
} else {
digitalWrite(3, LOW);// air Conditioner
digitalWrite(10, HIGH);// GREEN COLOR
digitalWrite(9, LOW);
}
if (t<25){
digitalWrite(4, HIGH);// heater
digitalWrite(9,HIGH);// red Color of light according to temp. which color should we select ? ()
digitalWrite(11,HIGH); // Blue COLOR RED+BLUE= MAGENTA

} else {
digitalWrite(4, LOW);// heater
digitalWrite(9,LOW);// red Color
digitalWrite(11,LOW); // Blue COLOR
digitalWrite(10, HIGH);// GREEN COLOR
}
}
/// pin 2- humiidifier 3-A/C 4- HEATER
// pin 5- red 6- green 7- Blue
// pin 9- red 10- green 11 blue

// etmega chip pins 2-3-4 = 4.-5.-6th pins 5-6-7 = 11-12-13 9-10-11= 15-16-17

Bir Cevap Yazın

Time limit is exhausted. Please reload CAPTCHA.