Perangkat XBee,
board
mikrokontroler Arduino Uno, juga perangkat sensor merupakan 3 komponen utama yang membentuk sebuah sistem jaringan yang
disebut
Wireless Sensor Network
WSN. WSN merupakan sistem yang melakukan
sensing,
perhitungan komputasi dan komunikasi yang memberikan kemampuan bagi administrator untuk mengukur, mengobservasi dan memberikan
reaksi terhadap kejadian dan fenomena lingkungan tertentu. Salah satu pembentuk komponen utama pembentuk WSN merupakan
sebuah mikrokontroler.
Board
Mikrokontroler Arduino Uno memiliki 14 pin
digital inputoutput
, 6
input
an analog, sebuah koneksi USB,
power jack,
sebuah tombol
reset
. Memulai penggunaan Arduino hanya dengan mengkoneksikan menggunakan kabel USB pada sebuah komputer atau hidupkan dengan
adapter
AC-DC baterai[6].
Teknologi ZigBee merupakan teknologi dengan
data rate
rendah
Low Data Rate
, biaya murah
Low cost
, protokol jaringan tanpa kabel yang ditujukan untuk otomasi dan aplikasi
remote control
[7]. Perangkat XBee merupakan perangkat
wireless
yang bekerja pada protokol ZigBee yang memungkinkan Arduino untuk berkomunikasi secara
wireless
[10]. Gas karbon monoksida CO merupakan gas yang tidak berbau tidak
mempunyai rasa maupun warna. Gas CO merupakan hasil pembakaran tidak sempurna dari kendaraan bermotor, alat pemanas, asap kereta api, namun yang
paling umum terdapat pada residu pembakaran pada mesin. Kendaraan bermesin seperti mobil, tingkat pembuangan asap mengandung sekitar 9 CO dan akan
meningkat persentasenya apabila terdapat di daerah yang macet sehingga juga akan meningkatkan bahaya keracunan. Gas CO mempunyai julukan sebagai
“silent killer” karena membunuh tanpa mengiritasi dan tanpa dirasakan oleh korbannya [3].
3. Metode Penelitian
Penelitian ini menggunakan metode
waterfall
dan dapat dilihat sebagai berikut
Gambar 1 Tahapan dalam Metode Penelitian
Tahap pertama penelitian akan dilakukan analisa terhadap kebutuhan sistem dengan melakukan studi pustaka yang berfungsi untuk mengembangkan
pemahaman mengenai definisi – definisi ilmiah pada bagian penelitian yang
membutuhkan penalaran yang lebih lanjut, konsep sistem penelitan dan juga
aspek teknis yang meliputi pengumpulan kebutuhan sistem. Analisa terhadap penelitian sebelumnya yang menggunakan sensor gas MQ 7 dan juga studi
pustaka yang menjelaskan perangkat arduino beserta modul
wireless
XBee. Penelitian sebelumnya oleh Irvan Adhi Eko Putro tahun 2012 [11], teknologi alat
ukur emisi gas buang yang dirancang menggunakan sensor MQ 7 dan menggunakan mikrokontroler ATmega8535. Studi pustaka mengenai sensor MQ
7 dan modul XBee dapat dilakukan dengan membaca artikel jurnal pada penelitian sebelumnya yang sudah ada dan juga pada
datasheet
yang tersedia di internet secara gratis.
Datasheet
menyediakan informasi teknis mengenai cara kerja dan penggunaan sensor sehingga pengguna dapat menggunakan sensor
secara baik dan benar. Informasi pembelajaran mikrokontroler arduino dilakukan pada situs resmi arduino dan juga forum - forum mengenai arduino.
Perancangan sistem menggunakan konsep perancangan terstruktur
Data Flow Diagram
sehingga didapatkan hasil akhir yang memiliki sistem struktur yang didefinisikan dengan baik dan jelas. Sistem pada
Data Flow Diagram
dibuat dalam model yang memungkinkan penggambaran sistem sebagai suatu jaringan
proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi.
Terdapat batasan sistem yang berfungsi pada satu ruangan tertutup saja. Terminator pada sistem yaitu, Ruangan dan Pemilik Ruangan. Tugas dari setiap
Terminator seperti Ruangan adalah sebagai sumber nilai Gas CO pada sedangkan Pemilik Ruangan menerima data hasil deteksi ke LCD. Gambar 2 merupakan
ilustrasi DFD dari Diagram Konteks.
Gambar 2 Diagram Konteks
Pada Diagram Level Zero memiliki proses utama melakukan deteksi dan pengolahan hasil deteksi ke dalam Alat Detektor. Diagram level Zero merupakan
dekomposisi dari SISTEM pada Diagram Konteks.
Gambar 3 Diagram Level Zero
Diagram Level Satu merupakan dekomposisi dari Diagram Level Zero terutama pada sistem nomor 2. Penguraian meliputi rangkaian pengolahan, olah
data, penampilan dan pengiriman.
Gambar 4 Diagram Level Satu
Aplikasi yang dipakai menggunakan C yang nantinya akan membaca nilai kiriman dari
field controller
. Aplikasi dibuat sederhana dengan menampilkan satu jendela program yang terdiri dari tabel nilai konsentrasi gas, tombol
“Sambungkan” dan “Putuskan”.
Gambar 5 Interface Aplikasi Monitoring Gas CO
Tahap selanjutnya, pemodelan terhadap rancangan alat dari detektor gas dirancang dan disusun yang mencakup komponen di dalam sistem detektor gas
CO dan juga kondisi penempatan blok kontroler. Berikut ilustrasi dari rancangan bangun detektor gas CO :
Gambar 6 Rancang Bangun Model
Dua blok kontroler yang terdapat pada Gambar 6 masing – masing memiliki
kebutuhan perlengkapan tersendiri.
Field controller
Keduanya hanya memiliki satu kesamaan yaitu pada perangkat
wireless
XBee yang memang dibutuhkan untuk komunikasi data antara kedua blok.
Tahap implementasi, rancangan arsitektur akan diterapkan pada perancangan model. Tahap awal akan dilakukan pemasangan XBee dengan XBee
adapter
untuk dipasangkan komputer pada blok
monitoring device.
XBee yang terpasang pada XBee
shield
akan terpasang pada mikrokontroler Arduino Uno di blok
field controller.
Blok arsitektur
monitoring device
menggunakan aplikasi X- CTU sebagai pengatur alamat dan PAN ID. Pemrograman mikrokontroler
Arduino Uno dilakukan dengan menggunakan Arduino 1.0.3 yang berbahasa CC++. LCD Monitor 16x2 dan juga sensor MQ 7 akan dipasang pada blok
field controller.
Uji perangkat dilakukan dengan melakukan pengujian
packet loss
hilang data, uji beda nilai antar alat, faktor
boundary
dan juga jarak. 4.
Hasil dan Pembahasan
Perangkat utama di dalam perangkat detektor gas CO adalah perangkat
Field Controller
FC yang bertugas untuk membaca kadar gas CO dalam sebuah
ruangan. FC terdiri dari perangkat sensor yaitu sensor MQ 7, LCD 16x2, perangkat pengontrol Arduino Uno, sebuah perangkat wireless XBee PRO dan
XBee
shield
, buzzer yang berfungsi sebagai nada peringatan bahaya gas secara audio. Sistem kontrol yang terdapat pada FC berfungsi untuk kontrol sensor
hingga kontrol data. Kontrol yang dimaksud merupakan kontrol terhadap semua perangkat yang terdapat pada FC dan semuanya dituliskan ke dalam sebuah IDE
Arduino.
Tombol saklar di samping
Field Controller
akan mengawali proses panjang pendeteksian kadar gas CO dan sangat cepat dilakukan dengan hanya hitungan
detik pembacaan. Konsentrasi gas yang tertangkap oleh sensor MQ 7 akan terlebih dahulu diproses di dalam rangkaian blok sensor MQ 7 untuk
mendapatkan nilai keluaran data analog yang hasilnya akan dibaca oleh mikrokontroler pada pin analog A0.
Gambar 7 Blok Rangkaian MQ 7
Nilai analog yang didapatkan harus dikonversikan ke dalam nilai ADC dan sebelum memasuki tahap itu terlebih dahulu sensor MQ7 membutuhkan sebuah
kalibrasi tertentu yang harus dilakukan agar pemakaian sensor tersebut dapat bekerja maksimal. Memanasi
preheat
selama kurang lebih 2 hari dengan tegangan 5 volt adalah salah satunya untuk mempersiapkan sensor sebelum benar
– benar bisa dipakai. Sensor yang sudah dilakukan
preheat
kemudian harus dirangkaikan pada sebuah rangkaian sederhana bertegangan 5 volt dan sebuah
output
. Rangkaian sederhana tadi digunakan untuk mencari nilai tegangan dari sebuah ruangan yang memiliki nilai konsentrasi gas CO sebesar 100 ppm.
Secara sederhana konsentrasi gas CO dapat dicari dengan melakukan sebuah pembagian
RsRo, hanya saja Ro resistansi sensor pada 100ppm CO harus dicari terlebih dahulu dengan mencari nilai Rs menggunakan persamaan Rs\RL = Vc-VRL
VRL. Nilai tegangan yang didapatkan dari sebuah ruangan berkonsentrasi 100 ppm adalah 485. Nilai tersebut harus di konversikan kedalam sebuah nilai ADC
dengan dibagi dengan nilai resolusi 10bit yaitu 1024 dan kemudian dikali dengan nilai tegangan mikrokontroler sebesar 5 volt. Nilai ADC tersebut menjadi nilai
VRL pada persamaan untuk mencari Rs dan didapatkan nilai 11113,40306. Rs Ro pada konsentrasi gas 100 ppm akan menghasilkan nilai 1 ppm sehingga dapat
ditentukan bahwa nilai Ro = Rs 1 sehingga Ro = Rs. Nilai Ro yang telah didapat menjadi sebuah nilai tetapan konstanta dalam persamaan selanjutnya untuk
mencari nilai konsentrasi gas CO. Proses yang selanjutnya dilakukan oleh mikrokontroler Arduino dengan penulisan program untuk kalibrasi sensor seperti
pada Kode Program 1.
Kode Program 1 Kalibrasi Nilai PPM CO
Float get_COfloat ratio
merupakan fungsi untuk mencari nilai ppm yang sebenarnya menggunakan patokan nilai ppm yang terdapat pada kurva
karakteristik sensitifitas dengan terlebih dahulu mengubah nilai data
ratio
dengan perhitungan log yang kemudian dimasukkan ke dalam persamaan
= −
1.37 −0.67 dan pangkat 10 untuk mengembalikan nilai. Kurva karakteristik
sensitifitas dapat dilihat pada Gambar 8.
Gambar 8 Kurva Karakteristik Sensitifitas
Nilai ppm sensor yang telah didapatkan akan ditampilkan ke LCD dengan beberapa kondisi penampilan. Kondisi penamilan dilakukan untuk proteksi
pembacaan sensor yang hanya mempunyai range pembacaan 20 – 2000 ppm saja.
1 void setup {
2 . . .
3 float get_CO float ratio{
4 float ppm = 0.0;
5 float hasil_sementara;
6 float y = log10ratio;
7 hasil_sementara = y-1.37-0.67;
8 ppm = pow10,hasil_sementara;
9 return ppm;
10
} 11
. . . 12
void loop { 13
. . . 14
Vrl = val 5.00 1024.0 ; 15
Rs = 10000 5.00 - Vrl Vrl ; 16
ratio = RsRo;
17
. . .
18
}
Kode Program 2. LCD
Proteksi kadar gas mengacu pada
Final Report
yang dilakukan oleh Nima Nikzad dan Gautham Reddy [8] dengan menggunakan batas kadar dan waktu
pemaparan, apabila konsentrasi gas berada pada 100 – 200 ppm dan konstan
selama 2 jam maka
buzzer
akan berbunyi dan memunculkan tulisan “AWAS, KONDISI BAHAYA GAS”. Proteksi kondisi yang serupa juga diterapkan pada
aplikasi
Monitoring Device
pada C hanya saja tidak memuncukan sebuah keluaran
audio buzzer
namun hanya tulisan “GAS MELEBIHI BATAS AMAN”. Pertukaran data yang dilakukan antara FC dan
Monitoring Device
MD yang didasari perangkat
wireless
XBee dapat dilakukan dengan konfigurasi perangkat pada X-CTU. Penampang utama X-CTU dapat dilihat pada Gambar 9.
Gambar 9 Penampang Utama X-CTU
1 include LiquidCrystal.h
2 . . .
3 LiquidCrystal lcd8,9,4,5,6,7;
4 void setup{
5 lcd.begin16,2;
6
. . .} 7
. . . 8
void loop { 9
. . . 10
if 20 = get_COratio 11
{ float below = 20.0; 12
lcd.setCursor0,0; 13
lcd.printnilai CO setara; 14
Serial.printlnbelow; 15
lcd.setCursor0,1; 16
lcd.print20; 17
lcd.print ppm kurang; }
18
else . . .}
Konfigurasi awal hanya dilakukan untuk melakukan tes komunikasi dengan modem, yaitu dilakukan dengan menekan tombol
test query
dan akan muncul
popup message
“communication with modem.OK” dan beberapa keterangan modem dibawahnya. Masuk ke tab
Terminal
untuk mengatur beberapa parameter seperti nama ID, DL
Destination Address Low
dan MY 16-bit
Source Address
dengan menggunakan AT
Command
. Mengawali konfigurasi pada
terminal
harus terlebih dahulu menuliskan kode “+++” dan akan direspon dengan “OK”. Nama
ID dengan kode “ATID” akan menset secara default dengan nama 3332 dan akan direspon dengan “3332 CR”, “ATDL 1” untuk konfigurasi pengalamatan pada
modul XBee yang terhubung dengan MD dan “ATDL 2” untuk yang terhubung dengan FC. Konfigurasi MY pada modul yang terhubung pada MD diset dengan
command
“ATMY 2” dan “ATMY 1” pada FC. Komunikasi antara kedua perangkat akan terjadi apabila semuanya sudah dikonfigurasikan dengan benar
dan berada pada jarak pembacaan yang sesuai.
Monitoring Device
menerima data melalui XBee yang terpasang XBee
Adapter
kemudian akan ditampilkan ke dalam sebuah antarmuka aplikasi C. Hanya terdapat satu paket bagian dalam antarmuka MD dan memiliki beberapa
komponen penyusun.
TextBox
yang terdapat pada bagian atas program merupakan penampil
output data
yang diterima dari XBee
adapter,
yang berfungsi untuk menampilkan data keluaran dan berisi data ppm dan juga konsentrasi dalam
persen.
Combo box
yang terdapat tepat pada bagian bawah
text box
berfungsi untuk menampilkan port perangkat dalam hal ini port XBee yang terbuka dan
siap untuk dikoneksikan. Turun kebawah dan terdapat dua buah tombol “Sambungkan” dan “Putuskan” yang berfungsi untuk menyambung atau
memutuskan koneksi pada port yang akan dikoneksi atau diputuskan. Kotak label yang terdapat pada bagian bawah antarmuka menampilkan kondisi koneksi port.
Gambar 10 Antarmuka Monitoring Device
Penggunaan antarmuka MD diawali dengan membuka port pada
combo box
sebelah kanan “Port yang tersedia” pada port perangkat XBee PRO yang sesuai dengan angka port pada
device manager
yang muncul, ketika tombol “Sambungkan” ditekan, maka akan memunculkan data kadar gas CO, tanggal,
waktu dan kondisi ruangan yang bergerak ke bawah pada TextBox di bagian atas
combo box
port dan memunculkan tulisan “COM__ Tersambung.”
underline
merupakan angka port yang kali ini memakai COM12. Port yang dibuka akan
memicu data yang masuk melalui koneksi
wireless
dan memunculkan status “COM12 Tersambung” sesuai dengan nomor port COM. Data yang masuk akan
langsung mengalir secara
streaming
terus menerus hingga koneksi ditutup dengan menekan tombol “Putuskan”
.
Kode Program 3 Koneksi Port
1 private void Form1_Loadobject sender, EventArgs e
2 {portSerial.DataReceived += new
3 System.IO.Ports.
4 SerialDataReceivedEventHandlerDataReceived;
5 string[] namaPort =
6 System.IO.Ports.SerialPort.GetPortNames;
7 for int i = 0; i = namaPort.Length - 1; i++
8 { PortscmbBox.Items.AddnamaPort[i];
9 }
10 PortscmbBox.SelectedIndex = 0;
11 btnDisconnect.Enabled = false;
12 }private void btnConnect_Clickobject sender, EventArgs e
13 {
14 if portSerial.IsOpen{
15 portSerial.Close;
16 }try
17 {portSerial.PortName = PortscmbBox.Text;
18 portSerial.BaudRate = 9600;
19 portSerial.Parity = System.IO.Ports.Parity.None;
20 portSerial.DataBits = 8;
21 portSerial.StopBits = System.IO.Ports.StopBits.One;
22 portSerial.Open;
23 label.Text = PortscmbBox.Text + tersambung.;
24 btnConnect.Enabled = false;
25 btnDisconnect.Enabled = true;
26 }catch Exception ex{
27 MessageBox.Showex.ToString;
28 }}
29 private void btnDisconnect_Clickobject sender, EventArgs e
30 {try{
31 portSerial.Close;
32 label.Text = portSerial.PortName + terputus.;
33 btnConnect.Enabled = true;
34 btnDisconnect.Enabled = false;
35 }
36 catch Exception ex{
37 MessageBox.Showex.ToString;
38 }}
39
Mengakhiri koneksi port pada port dapat dilakukan dengan menutup proses koneksi yang dilakukan dengan menekan tombol “Putuskan”. Port yang tertutup
akan memicu status koneksi yang berubah menjadi “COM12 Terputus” dan
menghentikan laju
streaming data.
Penyimpanan data pada
data streaming
dilakukan secara langsung ketika data yang diterima pada
textbox,
sehingga penyimpanan data bersifat
realtime
dan langsung disimpan pada drive kali ini menggunakan drive D: pada komputer dan berupa data txt.
Kode Program 4 Logfile
Data didapatkan di MD tidak selalu berupa data yang utuh seperti 20.0 ppm atau bahkan ada yang 0 ppm. Karena kemampuan untuk menanggapi respon
streaming dari field controller yang tidak sama sehingga terjadi kurangnya data yang dapat diterima oleh monitoring device. Untuk itu dilakukan proteksi pada
aplikasi antarmuka dengan menambahkan kondisi apabila data kurang.
Kode Program 5 Proteksi Data
Proteksi yang dilakukan apabila kondisi udara tercemar kadar CO dalam kadar tertentu menggunakan kondisi
if
dengan proteksi batas kadar gas. Proteksi yang dilakukan akan memunculkan keterangan “GAS MELEBIHI BATAS
AMAN” pada kolom
textbox
dan akan terus muncul hingga kadar ppm gas CO berada di bawah 100 ppm.
1 if port.StartsWith. || port.EndsWith. ||
2 port.Length = 4
3 {
4 kondisi = not available + \n\n;
5 }
1 using StreamWriter tulis = new
StreamWriterD:\logfile.txt, true{ 2
tulis.WriteLineDateTime.Now + \t + kadar gas CO + \t + porrt + + ppm;
3 }}
4 if File.ExistsD:\logfile.txt
5 {log = new StreamWriterD:\logfile.txt, true;
6 }else{
7 log = File.AppendTextD:\logfile.txt;}
8 log.WriteLine;
9 log.Close;
10 }
Kode Program 7 Proteksi Kadar Gas
Pengujian alat dilakukan pada ruangan berlorong dan juga antar ruangan kamar yang bersekat dan mempunyai pintu penghubung antar keduanya.
Pengujian pertama dilakukan di ruangan berlorong untuk melihat seberapa kuat modul XBee PRO dapat menjangkau perangkat lainnya dalam jarak 1 hingga 10
meter dengan kondisi ruangan dan perangkat FC yang tertutup
casing.
Table 1 Pengujian Jarak
Jarak Field Controller
Kuantitas Data Monitoring Device
Kuantitas Data Packet Loss
1 meter 15 data
15 data 2 meter
15 data 15 data
3 meter 15 data
15 data 4 meter
15 data 15 data
5 meter 15 data
15 data 6 meter
15 data 15 data
7 meter 15 data
13 data 13,33
8 meter 15 data
11 data 26,67
9 meter 15 data
8 data 46,67
10 meter 15 data
0 data 100
Tabel 1 menunjukkan bahwa hingga meter ke enam modul XBee masih dapat bekerja dengan baik namun berangsur
– angsur turun hingga
packet loss
pada meter ke 10. Pada meter ke tujuh, dari 15 paket data yang dikirim hanya 13 yang dapat diterima sehingga
packet loss
-nya 13,33. Pada meter ke delapan terdapat
packet loss
sebesar 26,67, 46,67 pada meter ke sembilan dan hilang total pada meter ke sepuluh karena tidak dapat membentuk komunikasi antar
XBee. Pengujian kedua adalah dengan menguji beda nilai pada FC dengan detektor
Gas GD 110. GD 110 merupakan alat detektor gas Oksigen, H2S, CO, dan CH4 dengan fokus pada detektor gas CO yang mempunyai
range
pembacaan gas 0 –
1000 ppm dan akurasi pembacaan kurang dari 5 F.S.[12]. Hasil pengujian antar alat bisa dilihat pada Gambar 9.
1 if float.Parseport = 10000f 10.00f = 0.10 ppm
2 {
3 if float.Parseport 20000f{
4 sec++;
5 if counter1 = sec{
6 kondisi = GAS MELEBIHI BATAS AMAN + \n\n;
7 }}}
Gambar 9 Grafik Pengujian Nilai Deteksi
Hasil pengujian kedua dengan mengukur nilai deviasi antara GD 110 dengan FC mempunyai perbedaan yang sedikit signifikan pada beberapa titik akan
tetapi ada juga perbedaan yang hanya berbeda 1 nilai. Perbedaan yang signifikan pada beberapa titik diduga terjadi karena beberapa hal berikut :
1. Jenis sensor antara kedua alat berbeda sehingga karakteristik pembacaan
juga bisa dikatakan tidak sama. 2.
Karakteristik persebaran gas yang tidak terduga sehingga mempengaruhi hasil pembacaan antara kedua alat.
3. Pembacaan gas CO yang secara tidak langsung menggunakan knalpot
motor tidak bisa disebarkan ke dua alat dengan merata. Pada pengujian batas, antar XBee diletakkan pada dua ruangan yang
berbeda tetapi terdapat sebuah “celah” kecil antar dua ruangan seperti pintu. Pengujian ini berhasil dilakukan dengan membuka sedikit “celah” seperti pintu
untuk media komunikasi antar modul XBee karena modul XBee tidak bisa menembus objek tebal secara langsung.
5. Simpulan