By: Mr.
Widodo Budiharto
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
2279
W =

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 :
- Konfigurasikan jenis
programmernya yaitu STK200/300 Programmer, atau yang lebih dikenal sebagai
ATMEL AVR ISP Programmer.
- Konfigurasikan
library chip yang digunakan yaitu
menggunakan m8535def.dat atau kalau
pakai mikro ATmega16 maka m16def.dat.
- 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:
untuk gambar kok lama munculnya ya min
Tolong di respons
terima kasih
Respon
Posting Komentar