Hvordan lage LED-forurensningsmålerkrets med Arduino

Prøv Instrumentet Vårt For Å Eliminere Problemer





I dette prosjektet skal vi konstruere en luftforurensningsmåler ved hjelp av MQ-135 sensor og arduino. Forurensningsnivået i luften er indikert med en serie på 12 LED. Hvis høyere lysdioder lyser, desto høyere er forurensningsinnholdet i luften og omvendt.



Oversikt

Dette prosjektet kan vise seg å være veldig nyttig på steder der luftkvaliteten spiller en viktig rolle som på sykehus. Alternativt kan dette også være et annet hobbyprosjekt for ditt eget hjem.

Selv om dette ikke kan forventes stor grad av nøyaktighet med dette prosjektet, kan det definitivt gi en rimelig god ide om forurensningsnivået i din atmosfære.



Forurensningen i luften kan være karbondioksid, karbonmonoksid, butan, metan og noe luktfri gass. Sensoren kan ikke skille mellom gasser, men den tar alle gassprøvene fra luften på en gang.

Hvis du bor i storbyen og leiligheten din ligger i nærheten av en trafikkert vei, kan dette prosjektet være nyttig for å gi et grovt innblikk i luftstemningen.

De fleste ignorerer luftkvalitetsmålene i deres bolig, det anslås at India alene bidrar til 1,59 millioner dødsfall hvert år, som inkluderer forurensning innendørs og utendørs.

Flertallet av befolkningen er uvitende om luftrensere som er lett tilgjengelige på markeder og e-handelsnettsteder, som ikke koster mer enn en smarttelefon.

Ok, nå advarsler fra hverandre, la oss dykke ned i kretsløp.

Designet:

Luftforurensningsmåleren vil være mer interessant hvis lysdiodene er rektangulære og over layoutdesign brukes. Du kan imidlertid bruke fantasien din til å gjøre dette prosjektet mer interessant for deg.

Hvordan lage LED-forurensningsmålerkrets

Ovennevnte skjematisk illustrerer hvordan du kobler sensor til arduino. En ekstern strømforsyning er implementert for varmeapparatet til sensoren. Sidene på sensoren kan byttes ut.

Pinnen A0 til arduino registrerer spenningsvariasjonene i sensoren på grunn av endringer i forurensningsinnhold i luft.

Sensoren fungerer som variabel motstand (som svar på forurensning) og 10K er fast motstand, denne fungerer som en spenningsdeler. Arduino har 10-biters ADC, som hjelper LED-lampen til å lyse diskret som svar på luftforurensningsnivå, som er en analog funksjon.

LED-luftforurensningsmålerkrets med Arduino

Når det analoge spenningsnivået krysser et bestemt terskelnivå som er forhåndsbestemt i programmet, vil det slå på lysdioder.

De påfølgende LED-lampene er forhåndsbestemt med høyere terskelnivåer.

Det starter med LED-test, hver LED slås på sekvensielt med en viss forsinkelse, og brukeren kan bestemme feilen i LED-tilkoblingene, for eksempel ikke-tilkoblede lysdioder og lysdioder som ikke sorteres sekvensielt. Programmet stopper i 5 minutter, og alle lysdiodene lyser samtidig.

Dette vil gi nok tid til sensoren å varme opp, og vi kan se noe av handlingen utført av arduino i seriell skjerm. Når sensoren når optimal temperatur, sender arduino noen målinger til seriell skjerm. Basert på målingene vil lysdiodene slås PÅ og AV. Høyere verdier som skrives ut på seriell skjerm, flere antall lysdioder tennes.

Seriell skjerm er ikke obligatorisk i dette prosjektet, men kan være et nyttig verktøy for testformål.

Prototype bilde:

Testet prototype LED-luftforurensningsmålerkrets med Arduino

Hvordan teste:

• Slå på arduino og ekstern strømforsyning. LED-test vil begynne, og den kjører bare en gang.
• Programmet venter i 5 minutter på at sensoren blir oppvarmet.
• Når målingene vises på seriell skjerm, ta med en sigarettenner og lek gassen uten å flamme den.
• Snart begynner målingene å toppe seg og flere lysdioder begynner å lyse.
• Når du stopper strømningsgassen på sensoren, slås lysdiodene gradvis av. Nå er LED-luftforurensningsmåleren klar til å betjene deg rommet.

Programkode:

//--------------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---------------//




Forrige: LPG Lekkasje SMS-varsel ved hjelp av MQ-135 - Få advarsel i mobiltelefonen Neste: LM317 strømforsyning med variabel brytermodus (SMPS)