SISTEM PENDETEKSI DINI BANJIR MENGGUNAKAN SENSOR KECEPATAN...

36
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

Transcript of SISTEM PENDETEKSI DINI BANJIR MENGGUNAKAN SENSOR KECEPATAN...

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

LATAR BELAKANG (2)

Minim mekanisme pendeteksi

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++.

ARSITEKTUR SISTEM

Terdiri dari 3 proses utama

PROSES PADA MIKROKONTROLER

Pembacaan

Data Sensor

Kalibrasi

Nilai

Hitung

Delay (fuzzy

logic)

Tampilkan

Data

PROSES PADA MIKROKONTROLER

ARDUINO

PROSES PADA APLIKASI JAVA

Pembacaan

Data

Mikrokontroler

Hitung

Delay (fuzzy

logic)

Gabungkan

Data

Kirim ke

Server

PROSES PADA APLIKASI JAVA

PROSES PADA APLIKASI WEB

Terima

Data Pecah Data

Insert ke

Database

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++

TAMPILAN PADA WEB (2)

UJI COBA APLIKASI

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

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

HASIL UJI COBA PENGIRIMAN SMS

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

TERIMA KASIH

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)

FUZZY LOGIC SEDERHANA

(1 INPUT)