Ads 468x60px

This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

Selasa, 31 Mei 2011

Sistem Alarm Kebakaran dengan Sensor Suhu dan Asap Berbasis Mikrokontroler AVR 8535

By: Mr. Widodo Budiharto

                                                                           Image(02)

Sistem Alarm kebakaran  merupakan topik yang selalu menarik untuk dicoba. Hal ini karena melibatkan mikrokontroler, sensor suhu dan Asap  dan program penampil di LCD.  Aplikasi ini ialah demo alarm kebakaran menggunakan Mikrokontroler AVR Atmega 8535, dimana pada chip tersebut sudah tersedia internal ADC 10 bit sebanyak 8 channel.
Perangkat yang dibutuhkan untuk percobaan aplikasi ini:
1.       Smart AVR Atmega 8535  atau sismin AVR lainnya yang sudah mendukung komunikasi serial.
2.       2 buah sensor suhu LM 35
3.       Sensor Asap /Gas AF30
4.       Multimeter digital
5.       Adaptor 12V
6.       Relay Board
7.       Buzzer dan penyemprot

Blok Diagram
Kita membutuhkan sensor LM35 sebagai pengukur suhu yang cukup linear dari rentang 0-100 derajat Celcius.  2 buah sensor dipasang ke PA.0 dan PA.2 sebagai demo pengukuran suhu di ruangan dalam dan luar. Sedangkan sensor kelembaban yang outputnya sudah analog bertipe 808H5V5  dengan rentang 0.8V – 3.9V dihubungkan ke PA.1.. Jika Anda ingin sensor suhu yang memiliki keping pendingin, gunakan tipe  LM35DT.


 




  

                                       Gambar   Blok diagram Digital Thermometer
                                                
                                     Gambar susunan kaki  AVR Atmega 8535/ Atmega16

SENSOR SUHU
LM 35 ialah sensor temperatur paling banyak digunakan untuk praktek, karena selain harganya cukup murah, linearitasnya lumayan bagus.  LM35 tidak membutuhkan kalibrasi eksternal yang menyediakan akurasi  ±¼°C  pada temperatur  ruangan dan ±¾°C pada  kisaran  -55 to +150°C.  LM35  dimaksudkan untuk beroperasi pada -55° hingga +150°C, sedangkan  LM35C pada  -40°C hingga +110°C, dan LM35D pada kisran 0-100°C. LM35D juga tersedia pada paket 8 kaki  dan paket  TO-220. Sensor LM35 umunya akan naik sebesar 10mV setiap kenaikan 1°C (300mV pada 30 °C).
                                             
Sensor Asap AF30
Pada dasarnya prinsip kerja dari sensor tersebut adalah mendeteksi keberadaan gas-gas yang dianggap mewakili asap rokok, yaitu gas Hydrogen dan Ethanol. Sensor AF-30 mempunyai tingkat sensitifitas yang tinggi terhadap dua jenis gas tersebut.  Jika sensor tersebut mendeteksi keberadaan gas-gas tersebut diudara dengan tingkat konsentrasi tertentu, maka sensor akan menganggap terdapat asap rokok di udara. Ketika sensor mendeteksi keberadaan gas-gas tersbut maka resistansi elektrik sensor akan turun seperti yang telah dibahas pada artikel lalu. Dengan memanfaatkan prinsip kerja dari sensor AF-30 ini, kandungan gas-gas tersebut dapat diukur.

                                            


Gambar dibawah ialah  grafik tingkat sensitifitas sensor AF-30 terhadap kedua gas tersebut.

Gambar Prinsip pengukuran gas

Dari grafik pada gambar diatas dapat dilihat bahwa dengan mengukur perbandingan antara resistansi sensor pada saat terdapat gas dan resistansi sensor pada udara bersih atau tidak mengandung gas tersebut (Rgas/Rair), dapat diketahui kadar gas tersebut. Sebagai contoh jika resistansi sensor (RS) pada saat terdapat gas Hydrogen adalah 1KW dan resistansi sensor (RS) pada saat udara bersih adalah 10KW maka:



Dari perhitungan diatas serta menurut grafik pada gambar 1, jika Rgas/Rair=0.1 maka konsentrasi gas Hydrogen pada udara adalah sekitar 100ppm. Untuk mengetahui besarnya resistansi sensor (RS) saat udara bersih dapat dihitung menggunakan rumus:

Sebagai contoh jika Vout pada saat udara bersih adalah 2,8V dan RL yang digunakan adalah 10KW maka dengan rumus diatas diperoleh RS saat udara bersih (Rair) adalah 7857,14W atau 7857W. Dari hasil perhitungan diatas diperoleh  RL=10KW, RS saat udara bersih (Rair)=7857W, dengan Vout  saat udara bersih = 2,8V.
Dengan melihat grafik gambar 1 dan hasil perhitungan diatas, maka nilai Vout untuk tiap-tiap nilai perbandingan Rgas/Rair dapat diketahui sehingga tingkat konsentrasi dari gas tersebut juga diketahui pula. Misalnya untuk gas Hydrogen dengan tingkat konsentrasi 10ppm, dari grafik gambar 1 Rgas/Rair @ 0,29 maka

Rgas/Rair @ 0,29
Rair = 7857W
Rgas  = Rair x (Rgas/Rair)
          = 7857W x 0,29
          = 2279W

Dari hasil perhitungan diatas diperoleh nilai Rgas pada saat konsentrasi gas Hydrogen 10ppm. Karena Rgas adalah sama dengan resistansi sensor (RS), maka berdasarkan nilai Rgas yang diperoleh tersebut, maka dari rumus mencari nilai RS, nilai Vout pada saat konsentrasi Hydrogen 10ppm dapat diperoleh:

Rgas  = 2279W
Vc     = 5V
RL     = 10KW

    2279W =

    Vout = 4,072V


Jadi nilai Vout pada saat sensor mendeteksi nilai konsentrasi Hydrogen 10ppm adalah sebesar 4,072V. Dengan cara yang sama dapat diperoleh nilai-nilai Vout untuk tiap-tiap tingkat konsentrasi gas Hydrogen dan Ethanol sesuai dengan grafik gambar 1. Dari nilai-nilai Vout tersebut didapatkan tabel perubahan nilai Vout.

LCD 20x4
Tabel Susunan LCD 20x4
No
Nama Pin
Deskripsi
Hubungan ke Port Mikrokontroler
1
GND
0V
PD0
2
VCC
+5V
PD1
3
VEE
Tegangan kontras LCD
Keluaran Trimpot
4
RS
Register seelct,0=register perintah, 1=register data
PD6
5
R/W
1=read,0=write
Dihubungkan ke ground
6
E
Enable Clock LCD, logika 1 setiap kali pengiriman atau pembacaan data
PD7
7
D0
Data Bus 0

8
D1
Data Bus 1

9
D2
Data Bus 2

10
D3
Data Bus 3

11
D4
Data Bus 4
PC4
12
D5
Data Bus 5
PC5
13
D6
Data Bus 6
PC6
14
D7
Data Bus 7
PC7
15
Anoda (kabel coklat untuk lcd Hitachi)
Tegangan negative backlight
PC0
16
Katoda (kabel merah untuk LCD Hitachi)
Tegangan positif backlight
PC1

MENGGUNAKAN BASCOM AVR
Hal pertama yang harus Anda konfigurasikan pada software Anda setelah menginstal ialah :
  1. Konfigurasikan jenis programmernya yaitu STK200/300 Programmer, atau yang lebih dikenal sebagai ATMEL AVR ISP Programmer.

           
  1. Konfigurasikan library  chip yang digunakan yaitu menggunakan  m8535def.dat atau kalau pakai mikro ATmega16 maka m16def.dat.

             

  1. Setelah mengkompilasi program dengan sukses, klik button programmer, lalu klik button identify chip, baru kemudian mengklik tombol Auto Program chip.

             

Algoritma program :
Mulai
Deklarasi variabel
Konfigurasi ADC dan channel
DO
Baca data tiap channel
IF suhu rendah dan tidak ada asap
Matikan buzzer dan penyemprot
Tampilkan ke display LCD pesan Ruangan Aman
END IF
IF Suhu tinggi dan tidak ada asap
Matikan buzzer dan penyemprot
Tampilkan ke display LCD pesan Ruangan Panas
END IF
Jika Suhu tinggi dan ada asap
Hidupkan Buzzer dan Penyemprot
Tampilkan ke Display LCD Terjadi Kebakaran
END IF
LOOP
Selesai

Berikut cuplikan penerapannya menggunakan Bascom AVR
AlarmKebakaran.bas
' PROGRAM ALARM KEBAKARAN
Declare Sub Display()                                       'deklarasi fungsi display
Config Portb = Output                                       'konfigurasi port b sebagai output
'konfigurasi LCD 20x4
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portd.6 , Rs = Portd.7
Config Lcd = 20 * 4
'konfigurasi ADC
Config Adc = Single , Prescaler = Auto , Reference = Avcc   'configurasi ADC
Start Adc
Dim W As Word
Dim X As Word
Dim Perc As Word
Dim Volt As Word , Volt_d As Byte
Dim Channel As Byte , I As Byte , Cols As Byte , Cols_d As Byte
Cls                                                         'bersihkan layar lcd
Cursor Off                                                  'cursor mati
Locate 1 , 4                                                'display welcome message
Lcd "ALARM KEBAKARAN"
Locate 3 , 1
Lcd " Suhu & Sensor Asap"
Locate 4 , 1
Lcd " AVR ATmega8535"
Wait 1
Do
W = Getadc(0)                                            'baca Sensor suhu
   Print W
   X = Getadc(1)                                            'baca Sensor asap
   Print X                                                  ' Jika suhu rendah dan asap tidak ada
 If W <= 78 And X <= 300 Then
 Call Display()
   Locate 4 , 4
   Lcd "Ruangan Aman"                                       ' Display ruangan aman
     Portb = 0                                              'mati semua
   Waitms 600
   End If
  If W > 78 And X <= 300 Then                               'jika suhu ruangan panas
  Call Display()
  Portb = 0
  Locate 4 , 4
  Lcd "Ruangan Panas"
  Waitms 600                                                ' LM 35 di channel 1
End If
   If W > 78 And X > 300 Then                               'jika suhu panas dan banyak asap
  Call Display()
   Portb = 255
   Locate 4 , 2
   Lcd "Terjadi Kebakaran !"
   Wait 2                                                   ' LM 35 di channel
   End If
Loop
End
Sub Display                                                 'definisi fungsi display
Cls
Locate 3 , 1
….
Locate 3 , 19
Lcd Chr(223) ; "C"
 Volt = W * 5
  Volt_d = Volt Mod 10                                      'mencari pecahan
  Volt = Volt / 10
  Locate 1 , 1
  Lcd Volt ; "," ; Volt_d

  Cols = Volt / 2
  Locate 2 , 1
  For I = 1 To Cols
   Select Case I
….
  End Select
  Next I
 Cols_d = Cols Mod 2
  If Cols_d > 0 Then
  Lcd Chr(5)
  Cols = Cols + 2
  Else
  Cols = Cols + 1
 End If
 For I = Cols To 20
  Select Case I
   End Select
   Next I
End Sub

2 komentar:

Unknown mengatakan...

untuk gambar kok lama munculnya ya min

Tolong di respons

terima kasih

Dani Safda mengatakan...

Respon

Posting Komentar