Monday, August 01, 2011

Sensor Gas Universal QM-NG1 (MQ1)+ Arduino Severino

QM-NG1 (MQ1) adalah sensor gas Universal, diaplikasikan pada Arduino Severino dan hasilnya dapat mendeteksi chloropane (uap dari lem sintetis), dapat mendeteksi gas lighter, gas LPG dan juga tentu saja gas polutan lainnya seperti asap knalpot. Apabila gas tersebut terdeteksi, arduino akan mengeluarkan bunyi peringatan dan menyalakan LED sebagai tanda.

 Demo Video

Skematik

List Program
/*
 Universal Gas Sensors using QM-NG1
 By   :Aan Darmawan
 date : 31 July 2011
 Blog : http://valfa.blogspot.com/2011/08/sensor-gas-universal.html
 The circuit:
 * LCD RS pin4  to digital pin 12
 * LCD Enable pin6 to digital pin 11
 * LCD D4 pin11 to digital pin 5
 * LCD D5 pin12 to digital pin 4
 * LCD D6 pin13 to digital pin 3
 * LCD D7 pin14 to digital pin 2
 * LCD R/W pin5 to ground
 * LCD Vcc pin2 to +5V 
 * LCD Vss pin1 to ground 
 * LCD Vee pin3 to ground
 * Speaker connected to pin 10
 * Sensor Gas Output connected to Analog 0 
 */

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int inAnalog=A0;
float hasil;

void setup() {
  //  Serial.begin(9600);
  // set up the LCD's number of columns and rows: 
  pinMode(13,OUTPUT);
  digitalWrite(13,LOW);
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("Deteksi Gas....");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  hasil=analogRead(inAnalog);
  //  Serial.println(hasil,BYTE);
  hasil=hasil/1024*100;
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(hasil);
  lcd.print(" %   ");
  if(hasil>=30.00){
    digitalWrite(13,HIGH);
    tone(10,1000); // speaker connect to pin 10 tone 1KHz
    delay(1000);
  }
  else {
    digitalWrite(13,LOW);
    noTone(10); // tone at pin 10 off
  }
  delay(100);
}


17 comments:

Anonymous said...

contoh coding nya gmn mas?

Aan Darmawan H said...

Coming soon :-)

Hendri Tresnahadi said...

mas masih punya persediaan arduino saverino (mau belajar mikrokontroler nih) ? lokasi saya di bandung jg mas...mksh

Anonymous said...

mas kalo hasil 30.00 itu sama dengan berapa persen kandungan gas di udara dalam/luar ruangan?
atau itu hanya kekuatan dari kandungan "bau" gas nya saja?

Terima Kasih

Aan Darmawan H said...

Betul, nilai tersebut adalah nilai yang diperoleh dari sensor belum dikalibrasi, jadi satuannya hanya persentase dari nilai digital (ADC) yang terbaca saja, masih harus dikembangkan Mas.....
Thank's comment nya.....

Unknown said...

bagaimana gas tu display kat lcd?? kne ada coding yg lain ke? mksd sy kalau gas tu display LPG, kne ade coding LPG.. mcmana tu? sy masih tak clear psl ni. mohon pencerahan. terima kasih

Aan Darmawan H said...

untuk khusus menampilkan kadar gas LPG, harus dilakukan kalibrasi thd sensor (silahkan lihat datasheet sensor MQ-1)

Unknown said...

mksd saya, bagaimana caranya mahu display jenis gas yg sensor itu detect??.. saya lihat vdio di ats hnya paparkn percent of gas.. nama gas nya tiada..

Aan Darmawan H said...

@amalia: sensor MQ1 adalah universal gas sensor, sensor ini dapat mendeteksi berbagai macam gas yg mudah terbakar, tidak bisa langsung membedakan mana gas LPG mana yang bukan, untuk dapat tahu itu gas LPG atau bukan (supaya dpt didisplaykan dengan benar) harus dilakukan kalibrasi dahulu khusus dengan Gas LPG.
Saran: Gunakan sensor gas MQ6 untuk lebih spesifik deteksi gas LPG, tetapi inipun tetap harus dikalibrasi dahulu, karena sensor ini masih dipengaruhi oleh gas gas lainnya.

Unknown said...

bagaimana caranya mahu convert voltage into ppm????
i am using tgs 2600.. help me please..

Aan Darmawan H said...

silahkan refer ke datasheet sensor tersebut dan lakukan kalibrasi ...

Unknown said...

Pak darmawan,,, saya mau tanya,, maksud dari ini apa ya?
hasil=hasil/1024*100;
saya sedang tugas akhir tentang monitoring gas H2S menggunakan sensor TGS 2602, saya pakai coding diatas,,, sebelum diuji,, nilai yang tertera di LCD sudah mencapai 30 % (tidak nol) mohon bantuannya pak,, karna saya masih belum mengerti cara kalibrasinya,, terimakasih,,
tolong kirim ke email saya ya pak,, juliosetiawan03@gmail.com supaya saya bisa menghubungi bapak,, terimakasih,,

Aan Darmawan H said...

@julio setiawan: silahkan baca posting comment sebelumnya, intinya: untuk bisa dapat nilai kadar suatu gas harus dikalibrasi dulu, sedangkan perhitungan hasil=hasil/1024*100 itu baru informasi persentase nilai dijital yg dihasilkan sensor, BELUM MENUNJUKAN NILAI KADAR GAS,
sekali lagi: silahkan lihat datasheet sensor tsb untuk kalibrasinya.

Unknown said...

pak saya baru belajar arduino,
mau nanya pak, ketika saya masukin pasword yg benar, kok kluar di lcd "Access Denied ! "). mohon pencerahn nya pak
dan mau nanya, untuk membuat skema wiring nya pake aplikasi apa pak ?
terima kasih

Unknown said...
This comment has been removed by the author.
Aan Darmawan H said...

@Bayu, cek lagi list programnya.
untuk skema wiring, pakai Fritzing

HISOKA'S INTUITION said...

pak, mohon info nya.. kalau saya mau mendeteksi kadar oksigen lebih bagus menggunakan sensor MQ series atau TGS series? rencananya saya mau kalibrasi sensornya dgn oksigen meter agar hasilnya real...