HOW TO: Arduino senzor plinova

HOW TO: Arduino senzor plinova

Razne vrste senzora plinova uparenih s Arduinom tvore vrlo korisne uređaje za detekciju opasnih ili zapaljivih plinova.

Senzori plinova često su korišteni u raznim uređajima, od kućnih alarma do alarma u industrijskim postrojenjima. Važno je razlikovati vrstu senzora i njegovu preciznost te je logično zaključiti da senzori unutar kućnog alarma i industrijskog postrojenja neće biti iste točnosti. Za osobnu upotrebu poslužit će MQ senzori, koji odlično rade s Arduinom. Cilj nam je spojiti senzor s Arduinom, ispitati njegovu preciznost te testirati pouzdanost. Korišteni senzor MQ135 je senzor općenite kvalitete zraka, koja se izražava u ppm, to jest „parts per millon“. Senzor mjeri plinove poput amonijaka, sulfida, benzena, dima, itd. U našem slučaju mjerit ćemo kvalitetu zraka. Sam senzor se napaja 5V naponom koji nam može isporučiti Arduino, pa nećemo morati imati dodatno napajanje. Senzor sadrži analogni pin, ali ima i LM393 komparator napona, tako da sadrži i digitalni pin. Senzoru je potrebno vrijeme zagrijavanja kako bi ispravno radio.

HOWTO Senzor Plinova 2

Senzori plinova su vrlo korisni i danas su gotovo neizbježni u svim modernijim objektima. Njihove cijene su pristupačne te se kreću od 120 do 500 kn za kućne varijante. Većinu plinova ne možemo osjetiti našim njuhom, pa zato postoji opasnost od trovanja ako su koncentracije izvan granica normale. MQ serija senzora obuhvaća detekcije otrovnih, bezopasnih i zapaljivih plinova. Iako nisu profesionalni, za kućnu upotrebu će biti dovoljni. Curenje metana, propana i butana događa se vrlo često, a njihova detekcija bez senzora plina i smrdljivih aroma unutar njih ne bi bila moguća. Metan je lakši od zraka i senzori za njegovu detekciju trebaju se nalaziti na vrhu prostorije, dok su propan i butan teži od zraka, pa se njihovi senzori nalaze na dnu prostorije radi lakše detekcije. Pozicije postavljanja za različite plinove je važno naglasiti jer krivim postavljanjem senzori neće moći detektirati prisutnost plina, što može rezultirati katastrofom.

Spajanje dijelova uređaja za mjerenje kvalitete zraka i prenošenje koda.

HOWTO Senzor Plinova 1

Za naš uređaj odabrali smo mjerenje opće kvalitete zraka, a senzor mjeri NH3, NOx, alkohol, benzene, dim, CO2. CO2 je plin koji na sobnoj temperaturi nema ni okusa ni boje ni mirisa kod manjih koncentracija. U većim koncentracijama ima kiselkast miris. Nastaje brojnim načinima, uključujući izgaranje fosilnih goriva i izdisanjem. Koncentracija od 1% u zraku može izazvati pospanost, a koncentracija od 10% glavobolju i nesvjesticu. NH3, to jest amonijak, bezbojan je plin na sobnoj temperaturi oštrog mirisa te je lakši od zraka, a u većim količinama je smrtonosan. NOx, to jest dušični oksidi, vrlo su otrovni i glavni su za zagađivanje atmosfere te stvaraju kisele kiše.

Izmjerene vrijednosti ispisali smo na serial monitoru, a kod za OLED i LCD display možete pronaći na Github stranici. Varijanta sa zaslonom je dodana kako bi uređaj bio prenosiv uz baterijsko napajanje. OLED zaslon je vrlo malih dimenzija i troši vrlo malo energije te je odličan izbor za zaslon prenosivog uređaja. Alternativa OLED zaslona je LCD.

OLED zaslon je spojen uz pomoć I2C komunikacije, SDA na A4, a SCL na A5. MQ135 je spojen na D2 i A0. LED-ica spojena na D5 služi kao signalizacija za uključenje alarma.
Umjesto LED-ice može se nalaziti relej koji bi uključivao trošilo neke veće snage poput bljeskalice ili sirene.

Shema:

shema

Zbog svojih dimenzija i praktičnosti korišten je Arduino Nano, a isto se tako može zamijeniti i nekom drugom izvedbom Arduino pločice. Nano je naš favorit pri izgradnji prijenosnih uređaja jer sadrži svepotrebne funkcije, a prostorno je nekoliko puta manji od UNO verzije. Također ima zalemljene pinove, pa se može ekspresno montirati na eksperimentalnu pločicu za lakše korištenje ili se mogu spojiti ženski-ženski kablovi koji idu izravno do senzora. Za UNO slučaj koriste se muško-ženski kablovi. Arduino mini pro nije najbolje rješenje jer nema USB to serial konverter, pa je za svako prenošenje programa na pločicu potrebno spajati konverter, ali je dobar za ugrađivanje u neki uređaj ako više nema potrebe za prepravkama koda. Na Arduinu je također moguće smanjiti frekvenciju Atmelovog mikrokontrolera radi uštede energije.

Očitavanje analognih vrijednosti sa senzora je moguće vršiti i izravno, ali ipak smo odabrali precizniju varijantu pri kojoj mjerenje vršimo 10 puta te računamo srednju vrijednost svih mjerenja. Na taj način ćemo dobiti nešto preciznije očitanje. Faktor kalibracije je dodan radi korigiranja izmjerene vrijednosti.

Serial monitor: Ispisivanje vrijednosti kvalitete zraka na računalu bez LCD-a

Ispisivanje u serial monitoru

Digitalnom i analognom pinu senzora te LED-ici dodijelili smo imena kako bismo se poslije lakše snalazili.

Pomoću for petlje vršimo mjerenja svakih 500 ms, 10 puta. Svaku izmjerenu vrijednost od tih deset dodajemo varijabli „suma“ te nakon 10 mjerenja tu sumu dijelimo s 10 i dobivamo srednju vrijednost mjerenja. U razlikama od nekoliko sekundi mjerenje se može razlikovati i za 50 ppm, stoga je pametno izračunati srednju vrijednost. Program vrši mjerenja 5 sekundi. Srednju vrijednost je potrebno korigirati, to jest oduzeti od nje faktor kalibracije. Uređenu vrijednost je potrebno ispisati na serial monitoru ili LCD-u. Kod za LCD se nalazi na Github stranici VidiLaba. Ako vrijednost kvalitete zraka izražena u ppm pređe vrijednost od 750, upalit će se LED-ica koja treba imaginarno predstavljati alarm, a ako vrijednost padne ispod 750 ppm, LED-ica će se ugasiti.

Programski kod:

Iako senzor plinova sadrži digitalni pin s komparatorom napona, mi ga nismo koristili jer smo očitavanja vršili uz pomoć analognog pina i vrijednosti su sadržane u rasponu 0-1023. Pomoću komparatora napona i potenciometra senzor možemo koristiti i bez Arduina. Vrijednost pri kojoj želimo da se aktivira namještamo uz pomoć finog potenciometra. Digitalni impuls koji odašilje digitalni pin je napona 5V i dovoljno je snažan da aktivira tranzistorsku sklopku, a ako je uparimo s relejem, možemo uključivati trošila veće snage. Kod potražite na poveznici.

Ispitivanje: Senzori plinova su korisni za mjerenje kvalitete zraka u pojedinim područjima koja su rizična

HOWTO Senzor Plinova 4

Napomena: Uređaj je napravljen za demonstraciju, nije 100% pouzdan i ne preporučuje se njegova primjena kao zamjena za prave alarme!

Ocijeni sadržaj
(0 glasova)

Newsletter prijava


Kako izgleda naš posljednji newsletter pogledajte na ovom linku.

Skeniraj QR Code mobitelom i ponesi ovu stranicu sa sobom

HOW TO: Arduino senzor plinova - VidiLAB - QR Code Friendly

Copyright © by: VIDI-TO d.o.o. Sva prava pridržana.