UTS

[menuju akhir]

Alat Pendeteksi Asap dan Api dengan Output Relay sebagai Switch Mesin Air otomatis



[KEMBALI KE MENU SEBELUMNYA]




  • Arduino Uno
  • Sensor Gas MQ-2
  • Sensor Api
  • Relay 1 Channel
  • Dot Matrix 8x8
  • Jumper


            A. Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan pada prkatikum ini adalah arduino mega yang menggunakan chip AVR ATmega 2560 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protocol yang berbeda-beda. Bahasa pemograman yang digunakan adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga lebih mudah dalam memprogramnya. Dalam memprogram arduino, kita bisa menggunakan serial komunikasi agar arduino dapat berhubungan dengan komputer ataupun aplikasi lain.

B. Sensor Gas MQ-2
Sensor MQ-2 adalah sensor yang digunakann untuk mendeteksi konsentrasi gas yang mudah terbakar di udara serta asap dan output membaca sebagai tegangan analog. Sensor gas asap MQ-2 dapat langsung diatur sensitifitasnya dengan memutar trimpotnya. Sensor ini biasa digunakan untuk mendeteksi kebocoran gas baik di rumah maupun di industri. Gas yang dapat dideteksi diantaranya : LPG, i-butane, propane, methane , alcohol, Hydrogen, smoke.

C. Sensor Api
Flame sensor merupakan sensor yang mempunyai fungsi sebagai pendeteksi nyala api yang dimana apitersebut memiliki panjang gelombang antara 760nm – 1100nm. Sensor ini menggunakan infrared sebagai tranduser dalam mensensing kondisi nyala api.

D. Relay 1 Channel
Relay merupakan salah satu komponen terpenting di bidang elektronika. Modul Relay 1-Channel banyak digunakan untuk berbagai aplikasi yang menggunakan mikrokontroler, Raspberry, dan sistem kontrol lainnya yang melibatkan penggunaan arus listrik berkapasitas besar, atau ingin mengontrol tegangan AC dengan menggunakan tegangan DC. 

E. Dot Matrix 8x8
Modul Led Dot Matrix 8×8 adalah modul display yang menggunakan kumpulan – kumpulan LED yang dirangkaikan menjadi satu kesatuan dengan 8 baris dan 8 kolom. 

F. Graik Respon Sensor MQ-2

 
According to the graph, we can see that the minimum concentration we can test is 100ppm and the maximum is 10000ppm, in a other word, we can get a concentration of gas between 0.01% and 1%. However, we can't provide a formula because the relation between ratio and concentration is nonlinear.




3. Simulasi  [kembali]

Sebelum di Running :




Setelah di Running :

Jika sensor asap mendeteksi asap



Jika sensor api mendeteksi api






  1. //inialisasi pin sesnor
  2. const int asap = A0;
  3. const int api = A1;
  4. //inilasisasi pin alarm
  5. const int relay = 13;
  6. //inialisasi variabel data
  7. int dataAsap, dataApi;


  8. const int row[8] = {8, 16, 7, 11, 0, 6, 1, 4};
  9. const int col[8] = {12, 2, 3, 9, 5, 10, 17, 18};



  10.  int speed;

  11.  
  12. // ------------- program stting/default awal -------------- //
  13. void setup()
  14. {

  15. speed = 300;
  16.  pinMode(row[0], OUTPUT);
  17.     pinMode(row[1], OUTPUT);
  18.     pinMode(row[2], OUTPUT);
  19.     pinMode(row[3], OUTPUT);
  20.     pinMode(row[4], OUTPUT);
  21.     pinMode(row[5], OUTPUT);
  22.     pinMode(row[6], OUTPUT);
  23.     pinMode(row[7], OUTPUT);
  24.   
  25.   
  26.    pinMode(col[0], OUTPUT);
  27.     pinMode(col[1], OUTPUT);
  28.     pinMode(col[2], OUTPUT);
  29.     pinMode(col[3], OUTPUT);
  30.     pinMode(col[4], OUTPUT);
  31.     pinMode(col[5], OUTPUT);
  32.     pinMode(col[6], OUTPUT);
  33.     pinMode(col[7], OUTPUT);
  34.   speed = 300;
  35.   
  36.  //inialisasi baud rate serial monitor
  37.  Serial.begin(9600);
  38.  //inialisasi status I/O pin
  39.  pinMode(asap, INPUT);
  40.  pinMode(api, INPUT);
  41.  pinMode(relay, OUTPUT);
  42. }

  43. // ------- Program Looping/Berulang Terus-Menerus ------ //
  44. void loop()
  45. {


  46.   delay(100);
  47.  //data adalah hasil dari pembacaan sensor
  48.  dataAsap = analogRead(asap);
  49.  dataApi = analogRead(api);
  50.  //menulis pada serial monitor nilai dari data
  51.  Serial.print("Asap : ");
  52.  Serial.println(dataAsap);

  53.  Serial.print("Api : ");
  54.  Serial.println(dataApi);
  55.  //delay pembacaan dalam satuan milidetik
  56.  delay(300);

  57. //ubah nilai data ini sesuai dengan nilai yang keluar
  58.  //pada serial monitor saat sensor berada dekat asap
  59.  // ----------------------------------------------- //
  60.  //jika nilai data lebih besar atau sama dengan 410
  61.  if (dataAsap >= 60)
  62.  {
  63.  //alarm dibunyikan
  64.  digitalWrite(relay, LOW);


  65.   digitalWrite(row[0], LOW);
  66.     digitalWrite(row[1], LOW);
  67.     digitalWrite(row[2], LOW);
  68.     digitalWrite(row[3], LOW);
  69.     digitalWrite(row[4], LOW);
  70.     digitalWrite(row[5], LOW);
  71.     digitalWrite(row[6], LOW);
  72.     digitalWrite(row[7], LOW);
  73.   
  74.   
  75.    digitalWrite(col[0], LOW);
  76.     digitalWrite(col[1], LOW);
  77.     digitalWrite(col[2], LOW);
  78.     digitalWrite(col[3], LOW);
  79.     digitalWrite(col[4], LOW);
  80.     digitalWrite(col[5], LOW);
  81.     digitalWrite(col[6], LOW);
  82.     digitalWrite(col[7], LOW);
  83.  delay(2000);
  84.   }

  85. //ubah nilai data ini sesuai dengan nilai yang keluar
  86.  //pada serial monitor saat sensor tidak mendeteksi asap
  87.  // ----------------------------------------------- //
  88.  //jika tidak sesuai dengan ketentuan di atas
  89.  else if (dataApi <= 995)
  90.  {
  91.  //alarm dibunyikan
  92.  digitalWrite(relay, LOW);


  93.  
  94.   digitalWrite(row[0], LOW);
  95.     digitalWrite(row[1], LOW);
  96.     digitalWrite(row[2], LOW);
  97.     digitalWrite(row[3], LOW);
  98.     digitalWrite(row[4], LOW);
  99.     digitalWrite(row[5], LOW);
  100.     digitalWrite(row[6], LOW);
  101.     digitalWrite(row[7], LOW);
  102.   
  103.   
  104.    digitalWrite(col[0], LOW);
  105.     digitalWrite(col[1], LOW);
  106.     digitalWrite(col[2], LOW);
  107.     digitalWrite(col[3], LOW);
  108.     digitalWrite(col[4], LOW);
  109.     digitalWrite(col[5], LOW);
  110.     digitalWrite(col[6], LOW);
  111.     digitalWrite(col[7], LOW);
  112.  
  113.  delay(2000);
  114.   }
  115.  
  116.  else
  117.  {
  118.  //alarm dimatikan
  119.  digitalWrite(relay, HIGH);
  120.  
  121.  

  122.       digitalWrite(row[0], HIGH);
  123.     digitalWrite(row[1], HIGH);
  124.     digitalWrite(row[2], HIGH);
  125.     digitalWrite(row[3], HIGH);
  126.     digitalWrite(row[4], HIGH);
  127.     digitalWrite(row[5], HIGH);
  128.     digitalWrite(row[6], HIGH);
  129.     digitalWrite(row[7], HIGH);
  130.  
  131.   
  132.    digitalWrite(col[0], HIGH);
  133.     digitalWrite(col[1], HIGH);
  134.     digitalWrite(col[2], HIGH);
  135.     digitalWrite(col[3], HIGH);
  136.     digitalWrite(col[4], HIGH);
  137.     digitalWrite(col[5], HIGH);
  138.     digitalWrite(col[6], HIGH);
  139.     digitalWrite(col[7], HIGH);

  140.  }
  141. }
  142.    



5. Prinsip Kerja [kembali]


Saat sensor api menangkap keberadaan api, maupun ketika sensor asap mendeteksi adanya asap, alat akan memberi tanda berupa Dot Matrix yang menyala, dan mengaktifkan relay yang terhubung ke mesin air, sehingga mesin air menyala. 









  1. File Simulasi [DOWNLOAD]
  2. Video Simulasi [DOWNLOAD]
  3. File HTML [DOWNLOAD]
[menuju awal]