SISTEM PENDETEKSI DINI BANJIR
MENGGUNAKAN SENSOR KECEPATAN AIR
DAN SENSOR KETINGGIAN AIR PADA
MIKROKONTROLER ARDUINO
GIGIH PRIO NUGROHO
NRP 5109 100 002
Dosen Pembimbing
Ary Mazharuddin S, S.Kom., M.Comp.Sc.
Hudan Studiawan, S.Kom., M.Kom.
JURUSAN TEKNIK INFORMATIKA
Fakultas Teknologi Informasi
Institut Teknologi Sepuluh Nopember
Surabaya 2013
LATAR BELAKANG
Curah hujan tinggi.
Data BMKG 50 mm per
hari .
Volume air melebihi kapasitas saluran
air
Rumah terendam
SOLUSI
SISTEM PENDETEKSI DINI BANJIR MENGGUNAKAN SENSOR KECEPATAN AIR
DAN SENSOR KETINGGIAN AIR PADA MIKROKONTROLER ARDUINO
TUJUAN
Memantau ketinggian dan kecepatan air pada
tempat tertentu
Memberi peringatan apabila ketinggian air dan
kecepatan air melebihi batas yang ditentukan
Memberikan solusi suatu sistem pendeteksi dini
banjir
RUMUSAN MASALAH
Bagaimana cara mengukur kecepatan air dan
ketinggian air?
Bagaimana cara mengolah dan mengirim data ke
server?
Bagaimana cara mengolah dan menyajikan
informasi?
Bagaimana cara menampilkan pesan
peringatan?
BATASAN MASALAH
Aplikasi hanya untuk menginfokan kondisi
kecepatan dan ketinggian air,
Perangkat sensor menggunakan mikrokontroler
Arduino,
Aplikasi hanya melakukan transfer data dari
perangkat sensor ke aplikasi menggunakan USB,
Aplikasi untuk end user adalah aplikasi web
Aplikasi menggunakan bahasa PHP, Java dan
C/C++.
PROSES PADA MIKROKONTROLER
Pembacaan
Data Sensor
Kalibrasi
Nilai
Hitung
Delay (fuzzy
logic)
Tampilkan
Data
PROSES PADA APLIKASI JAVA
Pembacaan
Data
Mikrokontroler
Hitung
Delay (fuzzy
logic)
Gabungkan
Data
Kirim ke
Server
TAMPILAN PADA WEB
Tampilan kondisi kecepatan dan ketinggian air berdasar lokasi Kondisi tanda bahaya
Pesan peringatan
MARKER LOKASI
Kecepatan =
0 - 1500
Kecepatan =
1500 - 2000
Kecepatan =
2000 ++
Ketinggian =
0 – 20
Ketinggian =
21 – 25
Ketinggian =
25++
LINGKUNGAN UJI COBA
1. Bak air dengan ukuran 44 x 29 x 25 cm,
2. Perangkat sensor (mikrokontroler Arduino,
sensor ultrasonik, sensor kecepatan air,
breadboard, satu set kabel jumper, kabel USB),
3. Pipa air,
4. Selang air,
5. Modem GSM Prolink PHS100,
6. Alat ukur penggaris,
7. Notebook Sony VAIO VGN-CS36GJ Intel Core 2
Duo P8700 2.53 GHZ dengan RAM 4.00 GB
DDR3.
UJI COBA PERFORMA AKURASI
Uji coba dilakukan dengan membandingkan
hasil pembacaan sensor dengan hasil pembacaan
secara manual
Dibagi menjadi 3 kategori
Nilai akurasinya dihitung dengan cara
Keakuratan=(ketinggian air terdeteksi / ketinggian air
sebenarnya)∗100
HASIL UJI COBA PERFORMA AKURASI
Kategori
Percobaan
Rata-rata
Keakuratan
Rata-rata
Error Rate
Rendah 91,1% 8,9%
Sedang 94,2% 5,8%
Tinggi 93,9% 6,1%
Rata-rata 93% 7%
0
20
40
60
80
100
120
Rendah
Sedang
Tinggi
Rendah
Sedang
Tinggi
91.1%
94.2% 93.9%
UJI COBA PERFORMA PENGIRIMAN
DATA
Uji coba dilakukan dengan mengirimkan data ke
server
Lama pengiriman dihitung dengan mengambil
selisih waktu pengiriman dan waktu diterima
oleh server
HASIL UJI COBA PERFORMA
PENGIRIMAN DATA
9,4
9,6
9,8
10
10,2
10,4
10,6
10,8
11
11,2
1 2 3 4 5 6 7 8 9 10111213141516171819202122232425
Pengiriman Data
detik
UJI COBA PERFORMA PENGIRIMAN
SMS
Uji coba dilakukan dengan mengirimkan data ke
server
Lama pengiriman dihitung dengan mengambil
selisih waktu pengiriman dan waktu diterima
sms oleh user
KESIMPULAN
Sistem mengukur kecepatan dan ketinggian air menggunakan sensor dengan rata-rata akurasi 93%.
Delay pengiriman data didapat dari hasil penghitungan dengan fuzzy logic dengan input ketinggian air dan kecepatan air.
Pengiriman data ke server menggunakan protokol HTTP fungsi POST.
Server menyimpan data yang diterima ke dalam sebuah database.
Aplikasi web client menampilkan peta yang didalamnya terdapat marker dan menampilkan grafik perubahan data.
Sistem dapat mengirimkan pesan tanda bahaya berupa SMS.
SARAN
Menggunakan GSM shield sebagai pengganti
aplikasi Java untuk melakukan pengiriman
data.
Mengganti masukan power mikrokontroler
baterai laptop dengan power adapter atau
battery.
Mengganti sensor yang performanya lebih baik
dan lebih akurat.
Untuk pengembangan selanjutnya aplikasi dapat
berjalan pada smartphone
Ditambahkan modul GPS
FUZZY LOGIC
logika untuk menjelaskan “fuzziness”.
Misal: jarak, ketinggian, kecepatan pada skala
antara 0 dan 1
Membership Function: Fungsi keanggotaan
untuk menyatakan derajat kebenaran
(a) Boolean Logic. (b) Fuzzy Logic.
0 1 1 0 0.2 0.4 0.6 0.8 1 0 0 1 1 0
Fuzzification Rules Defuzzification
FUZZY LOGIC SEDERHANA
(2 INPUT)
25 3050Jarak (cm)
Jauhdekat
0
1
2000 300010000Debit Air (L/jam)
Lambat Cepat
0
1
720Delay (detik)
0
1
RULES
Jika ketinggian airnya rendah dan arusnya
lambat maka delay lambat (Slow)
Jika ketinggian airnya tinggi atau arusnya cepat
maka delay cepat (Fast)
Ketinggian air = posisi sensor – jarak(yang terbaca sensor)
25 3050Jarak (cm)
Jauhdekat
0
1
2000 300010000Debit Air (L/jam)
Lambat Cepat
0
1
Jauh(jarak) Lambat(arus) Lambat(delay)
Dekat(jarak) Cepat(arus) Cepat(delay)
17 cm Dekat = 0.4, Jauh = 0.6
296 L/jamLambat = 1, Cepat = 0
Fuzzification: Berapa delay bila
jarak sensor 17 cm dan arus air 296 L/jam?
Jika jaraknya jauh dan arusnya lambat, delay
pengiriman lambat (Slow)
Jauh(jarak) Lambat(arus) Lambat(delay)
0.6 1 = 0.6
Slow = 0.6
Jika jaraknya dekat atau arusnya cepat, delay
pengiriman cepat (Fast)
Dekat(jarak) Cepat(arus) Cepat(delay)
0.4 0 = 0.4
Fast = 0.4
720Delay (detik)
0
1
Delay = weighted mean
= (0.6*7 + 0.4*2)/ (0.6+0.4)
= 5 detik
RULES
Jauh(jarak) Lambat(arus) Lambat(delay)
Dekat(jarak) Cepat(arus) Cepat(delay)
25 3050Jarak (cm)
Jauhdekat
0
1
2000 300010000Debit Air (L/jam)
Lambat Cepat
0
1
720Delay (detik)
0
1cepat lambat
• Jauh(jarak) Lambat(arus) Lambat(delay)
• Jauh(jarak) Cepat(arus) Cepat(delay)
• Dekat(jarak) Lambat(arus) Cepat(delay)
• Dekat(jarak) Cepat(arus) Cepat(delay)
Top Related