Senin, 14 Agustus 2017

GAS SENSOR

Gas sensor MQ series adalah sensor pencium aroma dari gas tertentu. lain seri lain fungsi. 


Kita mulai aja melihat daftar berikut

MQ-2   untuk mendeteksi asap
MQ-3   untuk mendeteksi alkohol
MQ-4   untuk mendeteksi methan dan CNG gas
MQ-5   untuk mendeteksi LPG gas
MQ-6   untuk mendeteksi LPG dan butane gas
MQ-7   untuk mendeteksi karbon monoksida
MQ-9   untuk mendeteksi karbon monoxida dan gas mudah terbakar 
MQ-131 untuk mendereksi kualitas ozon
MQ-135 untuk mendeteksi kualitas udara
MQ-136 untuk mendeteksi hidrogen
mq-137 untuk mendeteksi asam amoniak
MQ-138 untuk mendeteksi bensin, toluena, alkohol, aseton, propana,          hydrogen, formalin.
MQ-214 untuk mendeteksi gas alam dan gas metana
MQ-216 untuk mendeteksi gas dari batubara dan gas alam
MQ306A untuk mendeteksi LPG dan gas butana
MQ307A untuk mendeteksi karbon monoksida
MQ309A untuk mendeteksi karbon dioksida dan gas mudah terbakar 
MG811 untuk mendeteksi karbon dioksida
AQ-104 untuk mendeteksi kualitas udara
AQ-2   untuk mendeteksi asap dan gas mudah terbakar
AQ-3   untuk mendeteksi alkohol dan bensin
AQ-7   untuk mendeteksi karbon monoksida

Kenapa ada yang sama ya???
Uda ga tau pasti juga alasannya. Akhirnya kembali ke kitanya, butuh yang mana 

cara pasangnya sama saja. Gas sensor biasanya mempunyai pin 

    VCC  ke 5V
    GND ke 0 atau ground
    AO   Analog Out
    DO   Digital Out

Pin analog out (AO) masuk ke input analog arduino. Nilainya berupa tegangan dari 0 sampai 5V tergantung tingkat konsentrasi gas yang kita deteksi


Sketch program untuk Gas sensor seperti dibawah.
const int gasSensor = A0;
int nilaiGasSensor     = 0;
void setup()
{
    Serial.begin(9600);
}
void loop()
{
    nilaiGasSensor = analogRead(gasSensor);
    Serial.print(“nilai gas sensor:”);
    Serial.println(nilaiGasSensor);
}


Atau seperti gambar d bawah.

Nah begitu tuh standartnya. Kita bisa cek di serial monitor.
Menekan: Tools àSerial Monitor, atau dengan menekan tombol
Ctrl + Shift + M

Lha kita kan maunya membaca di LCD untuk  Tugas Akhirnya...
Gampang bos..., begini nih sketch nya.

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int gasSensor  = A0;
int nilaiGasSensor     = 0;

void setup()
{
  lcd.begin(16, 2);
  lcd.print("nilai gas sensor");
}

void loop()
{
  nilaiGasSensor = analogRead(gasSensor)
  lcd.setCursor(0, 1);
  lcd.println(nilaiGasSensor);
}

Nah sketch di atas berlaku untuk semua gas sensor modul.
Sayangnya dibeberapa proyek kita harus mengkalibrasi gas sensor ini untuk memperoleh nilai pengukuran yang presisi.
Naaahhh bagaimana lagi tuh bray...
Jadi begini bro. Misalnya kita membuat alat pendeteksi Alkohol. Tapi setelah di test malah hasilnya jauh lebih dari nilai aslinya atau malah kurang dari nilai aslinya. Lihat sketch di bawah ini...
Pada tutorial sebelum ini kita pernah bahas tentang cara kalibrasi nilai analog, kita tinggal masukin aja tuh sketchnya

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int gasSensor     = A0;
int nilaiGasSensor        = 0;
int kalibrasiGasSensor = 0;
void setup()
{
  lcd.begin(16, 2);
  lcd.print("nilai gas sensor");
}

void loop()
{
    nilaiGasSensor = analogRead(gasSensor);
    //kalibrasi dengan mengganti nilai 0 dan 1023 misalnya 100 dan 500
    kalibrasiGasSensor = map(nilaiGasSensor, 0, 1023,  0, 255);
    kalibrasiGasSensor = constrain (kalibrasiGasSensor, 0, 100);   
    lcd.setCursor(0, 1);
    lcd.print(kalibrasiGasSensor);
    lcd.setCursor(5, 1);
    lcd.print(“%”);
}

 Nah sketch di atas merupakan sketch untuk pembacaan nilai alkohol dalam satuan persen. 

upload dulu deh yang ini. Lain kali kita sambung lagi ya... Mau buru-buru nih...

kalau ada pertanyaan tentang gas sensor silahkan isi kolom komentar di bawah ya