Arduino ile LED Hava Kirliliği Ölçer Devresi Nasıl Yapılır

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





Bu projede MQ-135 sensörü ve arduino kullanarak bir hava kirliliği ölçer inşa edeceğiz. Havadaki kirlilik seviyesi 12 LED serisi ile gösterilir. LED'lerin sayısı ne kadar yüksekse, havadaki kirlilik içeriği o kadar yüksek olur ve bunun tersi de geçerlidir.



Genel Bakış

Bu proje, hastaneler gibi hava kalitesinin önemli bir rol oynadığı yerlerde çok faydalı olabilir. Alternatif olarak, bu aynı zamanda kendi eviniz için başka bir hobi projesi olabilir.

Bu projeden büyük bir doğruluk beklememize rağmen, ortamınızdaki kirlilik seviyesi ile ilgili kesinlikle oldukça iyi bir fikir verebilir.



Havadaki kirlilik karbondioksit, karbon monoksit, bütan, metan ve biraz kokusuz gaz olabilir. Sensör, gazları ayırt edemez, ancak tüm gaz örneklerini bir seferde havadan alır.

Metropol bir şehirde yaşıyorsanız ve daireniz yoğun bir yolun yakınında yer alıyorsa, bu proje hava ambiyansı hakkında kaba bir fikir vermek için kullanışlı olabilir.

Çoğu insan, ikamet ettikleri yerlerdeki hava kalitesi önlemlerini görmezden geliyor, tek başına Hindistan'ın her yıl iç ve dış kirlilik dahil olmak üzere 1.59 milyon ölüme katkıda bulunduğu tahmin ediliyor.

Nüfusun çoğunluğu, pazarlarda ve e-ticaret sitelerinde kolayca bulunabilen ve bir akıllı telefondan daha pahalı olmayan hava temizleyicilerden habersiz.

Tamam, şimdi uyarılar ayrı, devreye girelim.

Dizayn:

LED'ler dikdörtgen şekilli ve üzeri yerleşim tasarımı kullanılırsa hava kirliliği ölçer daha ilginç olacaktır. Ancak bu projeyi sizin için daha ilginç hale getirmek için hayal gücünüzü kullanabilirsiniz.

LED Hava Kirliliği Ölçer Devresi Nasıl Yapılır

Yukarıdaki şema, sensörün arduino'ya nasıl bağlanacağını göstermektedir. Sensörün ısıtıcı bobini için harici bir güç kaynağı uygulanmıştır. Sensörün yanları değiştirilebilir.

Arduino'nun pimi A0, havadaki kirlilik içeriğindeki değişiklikler nedeniyle sensördeki voltaj değişimlerini algılar.

Sensör değişken direnç görevi görür (kirliliğe tepki olarak) ve 10K sabit dirençtir, bu bir voltaj bölücü görevi görür. Arduino, analog bir işlev olan hava kirliliği seviyesine yanıt olarak LED'in ayrı ayrı parlamasına yardımcı olan 10 bitlik ADC'ye sahiptir.

Arduino ile LED Hava Kirliliği Ölçer Devresi

Analog gerilim seviyesi programda önceden belirlenmiş belirli bir eşik seviyesini geçtiğinde ledleri yakacaktır.

Ardışık LED'ler, daha yüksek eşik seviyeleriyle önceden belirlenir.

LED testi ile başlar, her bir LED bir miktar gecikmeyle sırayla yanar ve kullanıcı sırayla dizilemeyen bağlanmamış LED'ler ve LED'ler gibi LED bağlantılarındaki hatayı belirleyebilir. Program 5 dakika durur ve tüm LED'ler aynı anda yanar.

Bu, sensörün ısınması için yeterli zamanı verecektir, arduino'nun gerçekleştirdiği eylemin bir kısmını seri monitörde görebiliriz. Sensör optimum sıcaklığa ulaştığında, arduino bazı okumaları seri monitöre gönderir. Okumalara bağlı olarak LED'ler AÇIK ve KAPALI olacaktır. Seri monitörde yazdırılan değerler ne kadar yüksekse, daha fazla sayıda LED yanar.

Bu projede seri monitör zorunlu değildir, ancak test amaçlı kullanışlı bir araç olabilir.

Prototip Resmi:

Arduino ile Test Edilmiş Prototip LED Hava Kirliliği Ölçer Devresi

Nasıl test edilir:

• Arduino ve harici güç kaynağını açın. LED testi başlayacak ve yalnızca bir kez çalışacaktır.
• Program sensörün ısınması için 5 dakika bekler.
• Ölçümler seri monitörde göründüğünde, bir çakmak getirin ve gazı alevlendirmeden sızın.
• Yakında, okumalar zirveye çıkar ve daha fazla sayıda LED yanmaya başlar.
• Sensör üzerindeki gaz akışını durdurduğunuzda, LED'ler kademeli olarak kapanır. Artık LED hava kirliliği ölçüm cihazınız odanıza hizmet etmeye hazır.

Program kodu:

//--------------Program developed by R.Girish---------------//
int input=A0
int a=2
int b=3
int c=4
int d=5
int e=6
int f=7
int g=8
int h=9
int i=10
int j=11
int k=12
int l=13
int T=750
unsigned long X = 1000L
unsigned long Y = X * 60
unsigned long Z = Y * 5
void setup()
{
Serial.begin(9600)
Serial.println('Sensor is getting ready, please wait for 5 min.')
pinMode(a,OUTPUT)
pinMode(b,OUTPUT)
pinMode(c,OUTPUT)
pinMode(d,OUTPUT)
pinMode(e,OUTPUT)
pinMode(f,OUTPUT)
pinMode(g,OUTPUT)
pinMode(h,OUTPUT)
pinMode(i,OUTPUT)
pinMode(j,OUTPUT)
pinMode(k,OUTPUT)
pinMode(l,OUTPUT)
pinMode(a,HIGH)
delay(T)
digitalWrite(a,HIGH)
delay(T)
digitalWrite(b,HIGH)
delay(T)
digitalWrite(c,HIGH)
delay(T)
digitalWrite(d,HIGH)
delay(T)
digitalWrite(e,HIGH)
delay(T)
digitalWrite(f,HIGH)
delay(T)
digitalWrite(g,HIGH)
delay(T)
digitalWrite(h,HIGH)
delay(T)
digitalWrite(i,HIGH)
delay(T)
digitalWrite(j,HIGH)
delay(T)
digitalWrite(k,HIGH)
delay(T)
digitalWrite(l,HIGH)
delay(T)
delay(Z)
}
void loop()
{
Serial.println(analogRead(input))
if(analogRead(input)>=85) digitalWrite(a,1)
if(analogRead(input)>=170) digitalWrite(b,1)
if(analogRead(input)>=255) digitalWrite(c,1)
if(analogRead(input)>=340) digitalWrite(d,1)
if(analogRead(input)>=425) digitalWrite(e,1)
if(analogRead(input)>=510) digitalWrite(f,1)
if(analogRead(input)>=595) digitalWrite(g,1)
if(analogRead(input)>=680) digitalWrite(h,1)
if(analogRead(input)>=765) digitalWrite(i,1)
if(analogRead(input)>=850) digitalWrite(j,1)
if(analogRead(input)>=935) digitalWrite(k,1)
if(analogRead(input)>=1000) digitalWrite(l,1)
delay(1000)
if(analogRead(input)<=85) digitalWrite(a,0)
if(analogRead(input)<=170) digitalWrite(b,0)
if(analogRead(input)<=255) digitalWrite(c,0)
if(analogRead(input)<=340) digitalWrite(d,0)
if(analogRead(input)<=425) digitalWrite(e,0)
if(analogRead(input)<=510) digitalWrite(f,0)
if(analogRead(input)<=595) digitalWrite(g,0)
if(analogRead(input)<=680) digitalWrite(h,0)
if(analogRead(input)<=765) digitalWrite(i,0)
if(analogRead(input)<=850) digitalWrite(j,0)
if(analogRead(input)<=935) digitalWrite(k,0)
if(analogRead(input)<=1000) digitalWrite(l,0)
}
//--------------Program developed by R.Girish---------------//




Önceki: MQ-135 kullanarak LPG Kaçağı SMS Uyarısı - Cep Telefonunuzda Uyarı Mesajı Alın Sonraki: LM317 Değişken Anahtarlamalı Güç Kaynağı (SMPS)