Anda di halaman 1dari 87

SISTEM DETEKSI BANJIR DAN PINTU AIR

OTOMATIS MENGGUNAKAN RASPBERRY PI 3 MODEL B


BERBASIS WEBSITE

Skripsi
Diajukan Untuk Memenuhi Persyaratan Memperoleh Gelar Sarjana Sains (S.Si)

Oleh :

ANA HASANAH

NIM: 11150970000058

PROGRAM STUDI FISIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLA JAKARTA

2020 M / 1441 H
ii
iii
iv
ABSTRAK

Bendungan merupakan pusat pantauan utama bagi warga Jakarta mengenai air banjir yang
akan dikirimkan dari bendungan tersebut. Informasi yang lambat mengenai kiriman air
tersebut menyebabkan Jakarta sering mengalami banjir secara tiba-tiba hingga
menimbulkan kerugian karena masyarakatnya tidak sempat untuk mengevakuasi barang-
barang berharga mereka. Salah satu cara yang dapat dilakukan untuk meminimalisir
kerugian dari banjir kiriman adalah dengan memberikan informasi dini sebelum terjadinya
banjir. Penelitian yang dibuat kali ini bertujuan untuk memberikan informasi dini mengenai
banjir kiriman yang dapat diakses melalui website dengan cara membangun alat pendeteksi
yang dirancang pada Raspberry Pi 3 dengan menggunakan dua buah sensor yaitu sensor
HCSR-04 sebagai pengukur ketinggian air dan Motor Servo sebagai pengatur pintu air
otomatis. Penelitian menghasilkan karakteristik sensor HCSR-04 dengan ketelitian 99.4%
dan motor servo 00. Sistem ini memiliki kecepatan respon rata-rata 2 detik dari Raspberry
Pi hingga ke website. Dengan adanya website ini masyarakat dapat mengetahui status
ketinggian air dan waktu pembukaan pintu air secara realtime sebelum banjir memasuki
wilayah mereka.

Kata Kunci: Buzzer, HCSR-04, Motor Servo, MySQL, Raspberry Pi 3, Website

v
ABSTRACT

The dam is the main monitoring center for Jakarta residents about the flood water that will
be sent from the dam. Information relating about the flood water that cause Jakarta to often
flood suddenly causes losses because the people do not have much time to evacuate their
valuables. One way that can be done to minimize losses from shipment floods is to provide
information in advance before flooding. This research aims to provide advance information
about flood submissions that can be accessed through the website by building a detector
designed on the Raspberry Pi 3 by using two sensors, the HCSR-04 sensor as an air gauge
and the Servo Motor as an automatic sluice. The research produced the characteristics of
the HCSR-04 sensor with 99.4% accuracy and 00 for servo motor. This system has an
average response speed of 2 seconds from the Raspberry Pi to website. With this website,
the public can find out the status of the water level and the time of the sluice opening before
the flood entered their region.

Keyword: Buzzer, HCSR-04, Motor Servo, MySQL, Raspberry Pi 3, Website

vi
KATA PENGANTAR
‫الرحِ ي ِْم‬ َّ ِ‫بِس ِْم هللا‬
َّ ‫الر ْح َم ِن‬

Assalamu’alaikum wr.wb.

Alhamdulillahi Rabbil Alamin. Segala puji bagi Allah, Tuhan semesta alam,

karena atas rahmat dan karunia-Nya penulis dapat menyelesaikan laporan tugas

akhir ini yang berjudul “Sistem Deteksi Banjir Dan Pintu Air Otomatis

Menggunakan Raspberry Pi 3 Model B Berbasis Website” dengan baik, benar dan

tepat waktu. Shalawat sertasalam semoga tetap dilimpahkan kepada baginda

Rasulullah Muhammad SAW beserta sahabatnya, tabi’in, dan seluruh umatNya.

Aamiin YaaRabbal’alaamiin.

Terselesaikannya laporan tugas akhir ini tak lepas dari bantuan dalam

bentuk moril, materi, dorongan, serta bimbingan dari berbagai pihak. Oleh karena

itu dengan sepenuh hati, penulis mengucapkan terimakasih kepada:

1. Keluarga yang saya sayangi, orang tua saya Supriyadi dan Tuti beserta

saudara-saudari saya atas do’a dan dukungannya kepada penulis.

2. Ibu Sitti Ahmiartri Saptari, M.Si, selaku pembimbing pertama yang selalu
memberikan saran dan bimbingannya dalam penulisan laporan tugas akhir
ini.
3. Ibu Dewi Lestari, M.Si, sebagai pembimbing kedua yang selalu
memberikan pengetahuan dan arahannya dalam penelitian ini.
4. Ibu Prof Dr.Lily Surraya Eka Putri, M. Env.Stud selaku Dekan Fakultas
Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta.
5. Bapak Ambran Hartono, M. Si dan Bapak Anugrah Azhar, M.Si, selaku
dosen penguji dalam sidang Munaqasyah.

vii
6. Seluruh Dosen Prodi Fisika, yang telah membimbing penulis selama
menempuh kuliah di Universitas Islam Negeri Syarif Hidayatullah Jakarta.
7. Teman-teman kelas fisika 2015 yang saling menyemangati dan membantu

pengerjaan penulisan tugas akhir.

8. Ka agung yang selalu menyemangati dan memberikan saran selama

penulisan dan pengerjaan projek ini.

9. Semua pihak yang telah membantu penulis dalam penyusunan laporan ini

baik secara langsung maupun tidak langsung yang tidak dapat dituliskan

disini.

Penulis menyadari terdapat kekurangan pada tugas akhir ini dan jauh dari kata

sempurna. Oleh karena itu, penulis dengan senang hati menerima kritik dan saran

dari para pembaca sebagai pelajaran untuk ke depannya agar lebih baik lagi dalam

menyusun sebuah laporan. Semoga laporan tugas akhir ini dapat bermanfat dan

dapat menginspirasi untuk para pembaca maupun untuk penulis sendiri.

Wassalamu’alaikum wr.wb

Jakarta, 27 Januari 2020

Penulis

viii
DAFTAR ISI

LEMBAR PERSETUJUAN .................................. Error! Bookmark not defined.

LEMBAR PENGESAHAN UJIAN ....................... Error! Bookmark not defined.

LEMBAR PERNYATAAN ................................... Error! Bookmark not defined.

ABSTRAK.......................................................................................................... v

ABSTRACT ...................................................................................................... vi

KATA PENGANTAR ...................................................................................... vii

DAFTAR ISI ..................................................................................................... ix

DAFTAR GAMBAR ....................................................................................... xiii

DAFTAR TABEL ............................................................................................ xv

BAB I PENDAHULUAN ................................................................................... 1

1.1 Latar Belakang....................................................................................... 1

1.2 Perumusan Masalah ............................................................................... 4

1.3 Batasan Masalah .................................................................................... 4

1.4 Tujuan Penelitian ................................................................................... 5

1.5 Manfaat Penelitian ................................................................................. 5

ix
1.6 Sistematika Penulisan ............................................................................ 5

BAB II TINJAUAN PUSTAKA ........................................................................ 7

2.1 Gelombang Bunyi .................................................................................. 7

2.1.1 Perambatan Gelombang Bunyi Berdasarkan Mediumnya ................ 8

2.1.2 Refleksi (Pemantulan Gelombang) .................................................. 9

2.1.3 Klasifikasi gelombang bunyi ......................................................... 10

2.2 Sensor HCSR-04.................................................................................. 11

2.2.1 Spesifikasi Sensor Ultrasonik HCSR-O4....................................... 13

2.2.2 Cara Kerja Sensor Ultrasonik HCSR-O4 ....................................... 14

2.3 Motor Servo SG90 ............................................................................... 15

2.3.1 Cara Kerja Motor Servo SG90 ...................................................... 16

2.4 Buzzer .................................................................................................. 17

2.5 Raspberry Pi 3 Model B ...................................................................... 18

2.6 Bahasa Pemrograman Scripting ........................................................... 20

2.6.1 Bahasa Pemrograman Python 3 ..................................................... 21

2.6.2 PHP.............................................................................................. 22

2.6.3 HTML ........................................................................................... 22

2.7 PhpMyAdmin- Database MySQL ......................................................... 23

2.8 XAMPP................................................................................................ 24

x
BAB III METODE PENELITIAN .................................................................. 26

3.1 Waktu dan Tempat Penelitian .............................................................. 26

3.2 Alat dan Bahan .................................................................................... 26

3.3 Perancangan Alat ................................................................................. 27

3.4 Diagram Alir Penelitian ....................................................................... 30

3.4.1 Diagram Alir Sistem Ketinggian Air ............................................. 31

3.4.2 Diagram Alir Sistem Pintu Air ...................................................... 32

3.5 Perancangan Perangkat Lunak ............................................................. 33

3.5.1 Setting Pada Raspberry Pi 3 Model B ........................................... 33

3.5.2 Setting Pada Komputer ................................................................. 35

3.6 Metode Karakteristik Data Sensor HCSR-04........................................ 40

3.7 Metode Karakteristik Motor Servo SG90 ............................................. 41

3.8 Metode Mengkoneksikan Database Ke Website ................................... 41

3.9 Metode Pengiriman Data ..................................................................... 41

3.10 Metode Buka Tutup Pintu Air Otomatis ............................................... 43

BAB IV HASIL DAN PEMBAHASAN........................................................... 44

4.1 Hasil Perancangan Perangkat Keras ..................................................... 44

4.1.1 Hasil Perancangan Sistem Secara Keseluruhan ............................. 44

4.1.2 Hasil Rancangan Pintu Air Otomatis Dan Buzzer .......................... 47

xi
4.2 Hasil Perancangan Perangkat Lunak .................................................... 49

4.2.1 Hasil Pengiriman Data dari Raspberry Pi ke Komputer................. 49

4.2.2 Hasil Penerimaan Data dari Raspberry Pi ke Komputer ................ 50

4.3 Hasil Karakteristik Sensor HCSR-04 ................................................... 53

4.3.1 Perbandingan Nilai Ketinggian Air HCSR-04 dan Penggaris ........ 53

4.3.2 Karakteristik HCSR-04 dalam Pembacaan Ketinggian Air Jika

Diarahkan Pada Gelombang ........................................................................ 55

4.4 Hasil Karakteristik Motor Servo SG90 ................................................. 57

4.5 Hasil Pengujian Kesesuaian Waktu Antara Data Yang Dikirim Dan

Diterima ......................................................................................................... 59

4.6 Hasil Tampilan Website ....................................................................... 60

BAB V KESIMPULAN DAN SARAN ............................................................ 62

DAFTAR REFERENSI ................................................................................... 63

LAMPIRAN ..................................................................................................... 67

xii
DAFTAR GAMBAR

Gambar 2.1 Pemantulan gelombang ................................................................. 10

Gambar 2.2 Sensor HCSR-04 ........................................................................... 12

Gambar 2.3 Cara Kerja Sensor HCSR-04 ......................................................... 12

Gambar 2.4 Motor Servo SG90 ........................................................................ 15

Gambar 2.5 Mesin Kerja Motor Servo .............................................................. 16

Gambar 2.6 Lebar Pulsa Motor Servo ............................................................... 17

Gambar 2.7 Buzzer ........................................................................................... 18

Gambar 2.8 Board Raspberry Pi 3 Model B ..................................................... 19

Gambar 2.9 GPIO Raspberry Pi Model B ......................................................... 19

Gambar 2.10 Logo Python ............................................................................... 21

Gambar 2.11 Logo PhpMyAdmin ..................................................................... 23

Gambar 2.12 Logo XAMPP .............................................................................. 25

Gambar 3.1 Perancangan Alat Deteksi Banjir dan Pintu Air Otomatis .............. 27

Gambar 3.2 Diagram Alir Penelitian ................................................................. 30

Gambar 3.3 Diagram Alir Sistem Ketinggian Air ............................................. 31

Gambar 3.4 Diagram Alir Sistem Pintu Air Otomatis ....................................... 32

Gambar 3.5 OS Raspbian (NOOBS) ................................................................. 33

xiii
Gambar 3.6 Tampilan Xampp ........................................................................... 37

Gambar 3.7 Aktifasi server dan Mysql pada XAMPP ........................................ 37

Gambar 3.8 Tampilan Database PhpMyAdmin ................................................. 38

Gambar 3.9 Membuat Database Baru ............................................................... 39

Gambar 3.10 Membuat Tabel di dalam database ............................................... 39

Gambar 3.11 Membuat Format Tabel ............................................................... 40

Gambar 4.1 Perancangan Alat .......................................................................... 45

Gambar 4.2 Simulasi Pembacaan Ketinggian Air.............................................. 46

Gambar 4.3 Simulasi Pintu Air ......................................................................... 47

Gambar 4.4 Pintu Air Saat tertutup dan Terbuka............................................... 48

Gambar 4.5 Proses Komputer Terkoneksi Dengan Wifi Yang Sesuai ................ 49

Gambar 4.6 Pengiriman Data Dari Raspberry Pi............................................... 50

Gambar 4.7 Penerimaan Data Di Komputer ...................................................... 51

Gambar 4.8 Data yang masuk kedalam database ............................................... 52

Gambar 4.9 Grafik Perbandingan Antara Penggaris Dengan HCSR-04 ............. 54

Gambar 4.10 Grafik Hasil Pengujian Karakteristik HCSR-04 pada Gelombang 56

Gambar 4.11 Grafik Perbandingan Antara Busur dengan Motor Servo SG90 .... 58

Gambar 4.12 Tampilan Website ........................................................................ 60

xiv
DAFTAR TABEL

Tabel 2.2 Konfigurasi Pin HCSR-04.................................................................. 13

Tabel 2.3 Spesifikasi Sensor Ultrasonik HCSR-04 ............................................ 14

Tabel 2.4 Spesifikasi Motor Servo SG90 ........................................................... 16

Tabel 4.1 Perbandingan Nilai Ketinggian Air Antara HCSR-04 dan Penggaris .. 53

Tabel 4.2 Karakteristik HCSR-04 dalam Pembacaan Ketinggian Air Jika

Diarahkan pada Gelombang ............................................................................... 55

Tabel 4.3 Perbandingan Antara Busur dengan Sudut Motor Servo ..................... 57

Tabel 4.4 Perbandingan Waktu Pengiriman dan Penerimaan Data ..................... 59

xv
BAB I
PENDAHULUAN

1.1 Latar Belakang

Bendungan merupakan sebuah konstruksi yang dibangun untuk

menampung sumber air dan menahan laju air. Dengan adanya bendungan, sistem

pengendalian banjir dapat dilakukan secara berkala dengan mengurangi limpahan

air kiriman dari hulu dan membuang kelebihannya ke sungai-sungai kecil. Salah

satu bendungan yang menjadi pantauan utama bagi warga Jakarta yaitu bendungan

katulampa, bendungan tersebut digunakan sebagai pusat pemantau ketinggian air

terhadap bahaya banjir yang akan memasuki wilayah Jakarta.

Pada saat musim hujan, ketinggian air pada bendungan akan terus

meningkat dan jika sudah mencapai batas tertentu maka pintu air akan dibuka untuk

mengirim limpahan airnya ke sungai-singai kecil. Air dari bendungan yang

dikirimkan ke sungai-sungai kecil dapat menyebabkan banjir pada daerah sekitar

sungai yang dilewatinya. Seperti yang disampaikan oleh (Anies Baswedan, 2019:

26/04) “Air dan sampah kiriman menjadi penyebab utama banjir yang merendam

sebagian wilayah ibu kota Jakarta. Sebetulnya di titik banjir itu tidak ada hujan

deras, hujan deras hanya terjadi di daerah hulu yang mengalir hingga ke Jakarta”

[1].

Lambatnya informasi yang didapat oleh warga mengenai air kiriman banjir

menyebabkan terjadinya banjir yang datang secara tiba-tiba sehingga masyarakat

tidak sempat untuk mengevakuasi barang-barang mereka. Sebelumnya, informasi

1
mengenai banjir kiriman hanya datang dari mulut ke mulut dan terkadang bukan

berita yang baru terjadi. Ketidakpastian atas berita tersebut hanya akan menambah

kekeliruan dan membuat warga ragu untuk mengevakuasi barang-barang berharga

mereka. Berdasarkan penjelasan dari ayat Al-Qur’an dibawah ini:

‫علَ ٰى‬ ِ ُ ‫يَا أَيُّ َها الَّذِينَ آ َمنُوا إِ ْن َجا َءكُ ْم فَا ِس ٌق بِنَبَإ ٍ فَت َبَيَّنُوا أ َ ْن ت‬
ْ ُ ‫صيبُوا قَ ْو ًما بِ َج َهالَ ٍة فَت‬
َ ‫صبِ ُحوا‬

(٦ ‫ اآلية‬/‫َما فَعَ ْلت ُ ْم نَاد ِِمينَ ) سورة الحجورات‬

Wahai orang-orang yang beriman, jika datang kepadamu orang fasik

membawa berita, maka periksalah dengan teliti agar kamu tidak menimpa

musibah kepada suatu kaum karena kecerobohanmu, yang menyebabkan kamu

menyesal atas perbuatan itu (Al-Hujurat/49:6)

Kekeliruan yang ditimbulkan dari berita tersebut tersebut tentu saja dapat

dihindari jika masyarakat mendapatkan informasi yang pasti dan realtime mengenai

datangnya bencana banjir. Dengan melihat permasalahan tersebut, dirasakan

masyarakat membutuhkan wadah yang mampu memberikan informasi yang benar

dan realtime mengenai bencana banjir yang akan memasuki wilayah mereka.

Sebelumnya rancang bangun mengenai sistem informasi banjir pernah dibuat pada

penelitian dengan judul “Rancang bangun alat pendeteksi ketinggian air sungai

sebagai peringatan dini banjir berbasis Arduino nano [2]” yang membutuhkan

modul wifi tambahan sebagai pengirim data dan thingspeak sebagai sistem

monitoringnya. Adapun penelitian lainnya yang berjudul “Sistem Peringatan Dini

Banjir Menggunakan Mikrokontroller Raspberry Pi 3 [3]” yang hanya dapat

menampilkan data melalui LCD dan tidak adanya sistem penyimpanan data seperti

database.

2
Berdasarkan hasil referensi dari alat yang telah dibuat pada penelitian-

penelitian sebelumnya, penulis telah membuat sebuah inovasi baru yaitu dengan

menggunakan database sebagai wadah penyimpanan data, penambahan informasi

mengenai pembukaan pintu air, membangun website sebagai sistem monitoringnya

agar mudah diakses oleh masyarakat luas.

Dengan memanfaatkan informasi teknologi saat ini, peneliti akan membuat

prototype yang dapat memberikan informasi seputar banjir melalui website.

Penggunaan website ini akan sangat membantu dan bermanfaat bagi lembaga-

lembaga untuk menyampaikan informasi bahaya banjir kepada masyarakat. Proses

mendapatkan informasi dari website juga lebih up to date dan informasi yang

diberikan dapat berubah seiring berjalannya waktu sehingga informasi yang

ditampilkan kedalam website merupakan data-data yang realtime [4].

Prototype ini menggunakan 3 komponen, yaitu sensor HCSR-04 sebagai

pendeteksi ketinggian air, Motor Servo sebagai pengatur pintu air otomatis dan

Buzzer sebagai komponen tambahan untuk memberikan pertanda kepada petugas

atau warga disekitar ketika pintu air akan dibuka. Ketiga komponen tersebut akan

dirancang pada microprocessor Raspberry Pi 3. Komponen Motor Servo dan

Buzzer akan bekerja ketika sensor HCSR-04 mendeteksi ketinggian air pada titik

tertentu, sedangkan data dari HCSR-04 akan dikirimkan ke komputer (penerima)

melalui jaringan TCP/IP (Transmission Control Protocol/ Internet Protocol). Data

yang telah diterima oleh komputer (penerima) akan otomatis tersimpan ke dalam

database. Selanjutnya, database akan menampilkan data-data tersebut kedalam

website.

3
Website yang telah dibuat akan menyediakan informasi mengenai waktu,

tanggal, ketinggian air, status siaga dan informasi mengenai buka tutup pintu air.

Sehingga, dengan adanya prototype tersebut, diharapkan warga dapat mengetahui

informasi mengenai kondisi pada bendungan secara benar dan realtime.

1.2 Perumusan Masalah

1. Bagaimana Sensor HC-SR04 dapat membaca ketinggian air pada

bendungan?

2. Bagaimana Servo dan Buzzer dapat mengatur sistem buka tutup pintu air

secara otomatis?

3. Bagaimana system kerja perangkat lunak database MySQL mulai dari

menerima data, pengolahan data sampai dengan menampilkan data ke

Website?

1.3 Batasan Masalah

1. Microprocessor yang digunakan adalah Raspberry Pi 3 model B

2. Sensor yang digunakan untuk mendeteksi ketinggian air adalah sensor

Ultrasonik HC-SR04

3. Pintu air dibuka secara otomatis menggunakan motor servo SG90

4. Data yang diperoleh adalah waktu dan ketinggian air

5. Hasil pengolahan data ditampilkan kedalam website

4
1.4 Tujuan Penelitian

1. Merancang dan membangun prototype sistem deteksi banjir dan pintu air

otomatis

2. Menenetukan hasil pembacaan sensor HCSR-04 dan Motor Servo SG90

3. Menentukan kecepatan respon dari alat ke database hingga ke website

1.5 Manfaat Penelitian

Hasil penilitian ini diharapkan dapat membantu masyarakat dalam

mendapatkan informasi mengenai banjir secara realtime melalui website.

1.6 Sistematika Penulisan

Penulisan penelitian Tugas Akhir ini dibagi menjadi lima bab, yang

secara umum diuraikan sebagai berikut:

BAB I PENDAHULUAN

Bab Pendahuluan berisikan penjelasan mengenai Latar Belakang,

Perumusan Masalah, Batasan Masalah, Tujuan Penelitian, Manfaat Penelitian dan

Sistematika Penulisan.

BAB II LANDASAN TEORI

Bab landasan teori menjelaskan tentang perangkat lunak dan perangkat

keras yang menunjang penelitian ini.

BAB III METODE PENELITIAN

Pada bab ini menjelaskan mengenai tempat dan waktu pelaksanaan

penelitian, perancangan perangkat keras, pengolahan perangkat lunak, serta metode

menganalisis data dari pengiriman sampai penampilan data

5
BAB IV HASIL DAN PEMBAHASAN

Pada bab ini berisikan penjelasan mengenai hasil berupa data yang

ditampilkan pada website dan juga dijelaskan tentang pembahasan berdasarkan data

yang telah diperoleh.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dari semua hasil penelitian yang menjawab

tujuan penelitian. Dan juga berisi saran untuk penelitian dan pengembangan

selanjutnya berdasarkan pada hasil dan kesimpulan yang diperoleh pada penelitian

ini.

6
BAB II

TINJAUAN PUSTAKA

2.1 Gelombang Bunyi

Gelombang bunyi adalah gelombang mekanis longitudinal yang dapat

merambat melalui medium berupa benda zat cair, padat maupun gas. Terdapat tiga

aspek utama pada bunyi yaitu sumber bunyi, medium agar gelombang dapat

merambat dan penerima.

Kecepatan rambat gelombang bunyi salah satunya dipengaruhi oleh jarak

antar molekul pada zat yang dilalui oleh suatu gelombang bunyi, semakin rapat atau

semakin pendek jarak antar molekul pada suatu zat maka semakin cepat gelombang

bunyi merambat melalui mediumnya dan semakin jauh jarak antar molekul pada zat

yang dilalui oleh suatu medium maka semakin lambat gelombang bunyi dapat

merambat pada mediumnya [5]. Dengan begitu, dapat disimpulkan bahwa

kecapatan rambat bunyi akan berbeda pada setiap medium yang dilaluinya. Secara

umum kecepatan gelombang bunyi dapat dirumuskan sebagai berikut:


𝑥
𝑣= (2.1)
𝑡

Dimana:
𝑣 = kecepatan rambat bunyi (meter/sekon)

𝑥 = panjang medium perambatan (meter)

𝑡 = lama waktu perambatan (sekon)

7
Adapun panjangnya gelombang yang dihasilkan oleh suatu bunyi dapat

dirumuskan dengan persamaan berikut ini:

λ
𝑣= (2.2)
𝑇

Dimana:

𝑣 = kecepatan rambat gelombang (𝑚⁄𝑠 2 )

λ = Panjang gelombang (Å)

𝑇 = Periode gelombang (s)

2.1.1 Perambatan Gelombang Bunyi Berdasarkan Mediumnya

Cepat rambat gelombang bunyi pada suatu medium memiliki kecepatan

yang berbeda-beda tergantung dari medium yang dialuinya seperti massa jenis

medium yang dilalui, suhu, dan lain-lain. Berikut ini persamaan untuk mengetahui

kecepatan rambat bunyi berdasarkan mediumnya [6].

i. Perambatan bunyi pada zat padat

Gelombang bunyi dapat merambat melalui zat padat contohnya adalah baja,

alumunium, kaca dan lain-lain. Adapun persamaanya adalah:

𝐸
𝑣=√ (2.3)
𝜌

Dimana:

𝑣 = kecepatan rambat bunyi (m/s)

𝐸 = modulus young (N/m2)

𝜌 = massa jenis zat padat (Kg/m3)

8
ii. Perambatan bunyi pada zat cair

Gelombang bunyi dapat merambat melalui zat cair contohnya adalah air, air

laut, raksa, helium cair, dan lain-lain. Adapun persamaanya adalah:

𝛽
𝑣=√ (2.4)
𝜌

𝑣 = kecepatan rambat bunyi (m/s)

𝛽 = modulus bulk (N/m2)

𝜌 = massa jenis zat padat (Kg/m3)

iii. Perambatan bunyi pada zat gas

Gelombang bunyi juga dapat merambat melalui zat gas, namun dipengaruhi

oleh tekanan gas, nisbah kapasitas terminal molar, massa jenis dan temperature

gas. Adapun persamaanya adalah:

𝛾𝑃
𝑣=√ (2.5)
𝜌

𝑣 = kecepatan rambat bunyi (m/s)

𝛾 = nisbah kapasitas terminal molar

𝑃 = tekanan gas

𝜌 = massa jenis zat gas (Kg/m3)

2.1.2 Refleksi (Pemantulan Gelombang)

Gelombang bunyi memeliki ciri khas yaitu refleksi (pemantulan), refraksi

(pembiasan), interferensi (perpaduan), efek Doppler. Pada pemantulan gelombang

bunyi berlaku hukum pemantulan gelombang yaitu [7]:

9
 Sudut datang gelombang sama dengan sudut pantul gelombang

 Gelombang datang, gelombag pantul dan garis normal terletak pada satu

bidang

Maka pemantulan gelombang dapat dirumuskan sebagai berikut:

𝜃𝑖 = 𝜃𝑟 (2.6)

Dimana:

𝜗𝑖 = sudut datang

𝜗𝑟 = sudut pantul

Gambar 2.1 Pemantulan gelombang


2.1.3 Klasifikasi gelombang bunyi

Berdasarkan jangkauan frekuensinya, maka gelombang bunyi dapat

diklasifikasikan menjadi tiga bagian, yaitu:

a. Gelombang infrasonik (infrasonic waves) yaitu gelombang yang

berfrekuensi yang sangat rendah sehingga tidak dapat terdengar oleh

manusia. Batas maksimum frekuensi gelombang infrasonik sekitar 20 Hz.

10
b. Gelombang sonik (sonic waves) yaitu gelombang mekanik yang mempunyai

jangkauan frekuensi yang dapat terdengar oleh manusia antara 20 Hz sampai

20 kHz. Jangkauan frekuensi ini dinamakan audio range.

c. Gelombang ultrasonik (ultrasonic waves) yaitu gelombang mekanik yang

berfrekuensi sangat tinggi sehingga tidak dapat terdengar oleh manusia.

Batas frekuensinya diatas 20 kHz [8]. Gelombang ultrasonik tidak dapat

merambat melalui ruang hampa atau tanpa medium. Jika gelombang

ultrasonik mengenai benda padat maka gelombang tersebut akan

dipantulkan. Pemantulan ini yang dimanfaatkan oleh kelelawar yang dapat

mendengar frekuensi dari gelombang ultrasonik. Salah satu pemanfaatan

gelombang ultrasonik ini di terapkan pada suatu sensor yaitu sensor HCSR-

04.

2.2 Sensor HCSR-04

Sensor HCSR-04 adalah sensor ultrasonik yang digunakan untuk mengukur

jarak antara penghalang dengan sensor. Sensor tersebut bekerja dengan mengubah

besaran fisis (bunyi) menjadi besaran listrik atau sebaliknya. Sensor ultrasonik

dapat digunakan di lingkungan yang gelap dan tidak akan terpengaruh oleh warna

atau transparansi objek. Namun, sensor ultrasonik dapat diserap oleh busa dan

tekstil [9].

11
Gambar 2.2 Sensor HCSR-04

Keunggulan sensor HCSR-04 adalah jangkauan deteksi sekitar 2 cm sampai

kisaran 400 cm dengan resolusi 1 cm. Sensor HCSR-04 terdiri dari 4 pin yaitu:

trigger, echo, power supplay dan ground, dua pin diantaranya sebagai pemancar

(transmitter) dan penerima (receiver) [10].

Gambar 2.3 Cara Kerja Sensor HCSR-04

Transmitter pada sensor HCSR-04 berfungsi sebagai pemancar gelombang

ultrasonik, sedangkan Receiver berfungsi sebagai penangkap gelombang

ultrasonik. Transmitter akan menembakkan gelombang ultrasonik menuju suatu

penghalang contoh penghalang yang digunakan adalah air, ketika gelombang

menyentuh permukaan air, maka gelombang tersebut akan dipantulkan dan diterima

kembali oleh sensor pada bagian receiver dengan frekuensi berkisar 40 kHz hingga

12
400 kHz [11]. Dengan mengukur selang waktu antara gelombang dikirim dan

gelombang pantul diterima, maka sinyal tersebut akan diproses untuk menghitung

jarak sensor ke penghalang tersebut.

Jarak benda dihitung berdasarkan rumus:

𝒗 ×𝒕
𝒔= (2.7)
𝟐

Dimana,

𝑠 = Jarak tempuh ntara sensor ultrasonik dengan objek (m)

𝑣 = Kecepatan suara (340 m/s)

𝑡 = Selisih antara waktu pemancaran gelombang oleh transmitter dan waktu ketika

gelombang pantul diterima receiver (s)

2.2.1 Spesifikasi Sensor Ultrasonik HCSR-O4

Sensor ultrasonik HCSR-04 memiliki konfigurasi pin dan spesifikasi yang

diperlihatkan pada tabel 2.2 dan tabel 2.3 dibawah ini

1. Konfigurasi Pin dari sensor HCSR-04


Tabel 2.1 Konfigurasi Pin HCSR-04
Nama Pin Keterangan
VCC Sumber Tegangan 5V
Echo Pemancar Sinyal Sonar Dari Sensor
Trigger Penangkap Sinyal Sonar Dari Sensor
GND Ground

13
2. Spesifikasi Sensor Ultrasonik HCSR-04:
Tabel 2.2 Spesifikasi Sensor Ultrasonik HCSR-04
Parameter Nilai
Tegangan Kerja 5 V (DC)
Arus Kerja 15 Ma
Frekuensi Kerja 40 kHz
Jarak Maksimum 400 cm
Jarak Minimum 2 cm
Sudut Pengukuran 15 derajat
Dimensi 1-13/16” 𝑥 13/16” 𝑥 5/8”
Koneksi 4 pin (Vcc, Gnd, Echo, Trigger)

2.2.2 Cara Kerja Sensor Ultrasonik HCSR-O4

Cara kerja Sensor Ultrasonik HCSR-04 yaitu ketika sensor tersebut

diberikan tegangan input sebesar 5 volt selama 10 𝜇𝑠, maka Pin Echo (Transmitter)

akan mengirimkan 8 bit sinyal dengan frekuensi 40 KHz dan gelombang bunyi

kecepatan 340 𝑚/𝑠, kemudian jika pancaran gelombang tersebut mengenai suatu

objek / benda padat (tegak lurus dihadapannya) maka gelombang tersebut akan

dipantulkan. Pantulan dari gelombang tersebut akan diterima oleh receiver. Lalu

receiver akan membaca lebar pulsa (dalam bentuk PWM) dan selisih waktu

pemancarannya. Dengan pengukuran tersebut, maka jarak dari sensor ke

penghalang dapat diperoleh dengan menghitung jeda waktu antara sinyal dikirim

dan sinyal diterima oleh sensor [12].

14
2.3 Motor Servo SG90

Motor servo adalah sebuah motor dengan sistem feedback, dimana formasi

dari motor akan diinformasukan kembali ke rangkaian control yang ada didalam

motor servo. Servo terdiri dari sebuah motor, serangkaian gear, potensiometer dan

rangkaian control. Servo dikendalikan melalui kabel kontrol dengan mengirimkan

lebar pulsa (PWM). Kabel control digunakan untuk menentukan arah putar rotor

kearah posisi tertentu [13].

Gambar 2.4 Motor Servo SG90


Terdapat dua jenis motor servo, yaitu motor servo standar 1800 dan motor

servo continuous 3600. Motor servo jenis standar hanya mampu bergerak 1800.

Motor ini dapat berputar searah atau berlawan dengan jarum jam dengan defleksi

masing-masing sudut mencapai 900 sehingga total defleksi dari kanan – tengah –

kiri adalah 1800. Sedangkan motor servo jenis continuous mampu bergerak 3600.

Motor ini dapat berputar searah atau berlawan dengan jarum jam tanpa batasan

defleksi sudut putar [14].

15
Spesifikasi Motor Servo SG90:
Tabel 2.3 Spesifikasi Motor Servo SG90
Parameter Keterangan
Dimensi 23 𝑥 29 𝑥 12,2 mm
Stall torque (4,8 V ) 1,6 kg/cm
Dead band width 10 mikro detik
kecepatan operasi 0.1 detik/600
Tegangan kerja 4,8 V dan bekerja pada suhu 00 - 550
Material gear Nilon
Mode Analog
Panjang kabel 150 mm

2.3.1 Cara Kerja Motor Servo SG90

Motor servo bekerja dengan sistem umpan balik tertutup dimana posisi dari

motor akan diinformasikan kembali ke rangkaian control yang ada di dalam motor

servo. Pada bagian dalamnya, motor servo terhubung dengan gearbox yang

membuat motor servo memiliki torsi yang lebih kuat. Salah satu gear yang

terhubung ke sebuah potensiometer yang akan membaca arah dan besarnya derajat

posisi dari ujung gearbox. Potensiometer terhubung ke sebuah rangkaian yang akan

mengendalikan arah putaran motor DC [15].

Gambar 2.5 Mesin Kerja Motor Servo

16
Cara pengendalian motor servo adalah dengan memberikan sinyal modulasi

lebar pulsa (Pulse Wide Modulation / PWM) melalui kabel kontrol. Lebar pulsa

sinyal kontrol yang diberikan akan menentukan posisi sudut putaran dari poros

motor servo. Semakin lebar pulsa OFF maka akan memutar poros motor servo

searah jarum jam dan semakin kecil pulsa OFF maka akan memutar poros motor

servo kearah yang berlawanan dengan jarum jam. Sinyal (PWM) terdiri dari tiga

lebar pulsa yaitu 1 ms, 1.5 ms dan 2 ms [16] seperti gambar dibawah ini

Gambar 2.6 Lebar Pulsa Motor Servo

2.4 Buzzer

Buzzer listrik adalah sebuah komponen elektronika yang dapat mengubah

sinyal listrik menjadi getaran suara [17]. Buzzer dapat bekerja dengan baik dalam

menghasilkan frekuensi di kisaran 1-5 KHz hingga 100 KHz untuk aplikasi

ultrasound. Tegangan operasional Piezzo Buzzer yang umum biasanya berkisar

diantara 3 Volt hingga 12 Volt dan biasa digunakan sebagai alarm, bel rumah, dan

lain-lain [18].

17
Gambar 2.7 Buzzer
Pada dasarnya prinsip kerja buzzer hampir sama dengan load speaker, jadi

buzzer terdiri dari kumparan yang terpasang pada diafragma dan kemudian

kumparan tersebut dialiri arus sehingga menjadi energi magnet, kumparan tadi akan

ditarik kedalam atau keluar, tergantung dari arah arus dan polaritas magnetnya,

karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan

menggerakkan diafragma secara bolak balik sehingga membuat udara bergetar yang

akan menghasilkan suara [19].

2.5 Raspberry Pi 3 Model B

Raspberry Pi merupakan sebuah komputer papan tunggal (single-board

circuit; SBC) yang dikembangkan di inggris oleh Raspberry Pi Foundation dan

dapat digunakan untuk menjalankan berbagai program aplikasi. Terdapat banyak

tipe Raspberry Pi, Namun penelitian kali ini menggunakan Raspberry Pi 3 Model

B. Raspberry Pi 3 menempatkan Pi 3 kira-kira 50% lebih cepat daripada Pi 2 [20].

Raspberry Pi memiliki 2 model, yakni model A dan model B. Model A

menggunakan memori 256 MB dan model B menggunakan memori 512 MB. Selain

itu, model B sudah dilengkapi dengan port Ethernet (untuk LAN) yang tidak

18
terdapat pada model A. Raspberry Pi dapat berjalan pada Debian berbasis

GNU/Linux dan sistem operasi Raspbian [21].

Gambar 2.8 Board Raspberry Pi 3 Model B


Raspberry Pi memerlukan kartu SD sebagai tempat penyimpanan karena

microprocessor tersebut tidak memiliki hard disk bawaan. Untuk menjalankannya,

Raspberry pi memerlukan daya sebesar 5 Volt dengan arus minimum 700-1000 Ma

dan didukung melalui kabel micro USB [22]. GPIO dari Raspberry Pi 3 Model B

disajikan pada gambar dibawah ini

Gambar 2.9 GPIO Raspberry Pi Model B

Pada Raspberry Pi 3 model B terdapat 40 pin yang disebut sebagai pin GPIO

(pin-pin general purpose input output). Pin-pin tersebut dapat dibaca dengan 2

metode yaitu dibaca sesuai nomor GPIO atau dibaca berurutan sesuai nomor. GPIO

19
tersebut berguna sebagai penghubung antara Raspberry Pi dengan piranti eksternal

[23].

Spesifikasi Raspberry Pi 3 model B yaitu:

1. Broadcom BCM2837 64bit ARMv7 Quad Core Processor yang

didukung Single Board Computer berjalan pada 1.2GHz

2. GPIO 40 pin

3. 4 𝑥 port USB 2

4. BCM43143 WiFi pada board

5. Bluetooth Low Energy (BLE) pada board

6. Output 4 tiang Stereo dan port video komposit

7. HDMI ukuran penuh

8. Port kamera CSI untuk menghubungkan kamera Raspberry Pi

9. Port tampilan DSI untuk menghubungkan tampilan layar sentuh

Raspberry Pi

10. Port Micro SD untuk memuat sistem operasi dan menyimpan data

11. Daya sebesar 5V dengan arus minimal 700 Ma (3.5 watt)

2.6 Bahasa Pemrograman Scripting

Pemrograman adalah proses menulis kode untuk membangun suatu program

komputer. Tujuan dari pemrograman adalah untuk membuat suatu program yang

dapat melakukan pekerjaan sesuai yang kita inginkan.

20
2.6.1 Bahasa Pemrograman Python 3

Python secara umum adalah bahasa pemrograman tingkat tinggi yang saat

ini banyak digunakan oleh para programmer. Lengkap dengan source code,

debugger dan profiler, fungsi sistem, GUI dan basis datanya. Python merupakan

bahasa resmi dalam Raspberry Pi. Kata “Pi” dalam Raspberry Pi merujuk pada

“Python” [24]. Struktur bahasa pada python memungkinkan pengguna untuk dapat

menulis program secara mudah baik dalam skala kecil maupun skala besar. Fitur

yang paling penting dalam python adalah dapat mensupport berbagai macam

program paradigma termasuk object-oriented, fungsi pemrograman maupun

prosedur pemrograman. Python juga memiliki sistem yang dinamis dan menejemen

memori yang baik serta memiliki standar komprehensif library yang luas [25].

Gambar 2.10 Logo Python


Sebagian besar bahasa pemrograman membutuhkan banyak metode khusus,

fungsi, deklarasi kelas atau program dll. Tapi python memberi kemampuan untuk

memulai program tanpa persyaratan tersebut karena python dapat meminimalkan

kata tambahan yang diperlukan untuk menulis program yang benar secara sintaksis.

Keuntungan dari python adalah signifikan, jadi penggunaannya sebagai bahasa

utama untuk mempelajari pemrograman dapat sangat mempengaruhi kecepatan

belajar ilmu komputer secara umum [26]. Python dapat digunakan untuk berbagai

21
keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai sistem

operasi seperti Linux, Windows, Unix, Symbian dan masih banyak lagi.

2.6.2 PHP

PHP (Hypertext Processor) adalah bahasa skrip yang digunakan untuk

penanganan pembuatan dan pengembangan situs website dinamis. PHP merupakan

bahasa yang disertakan dalam dokumen HTML, sekaligus bekerja disisi server

(Server-Side HTML-embedded scripting) artinya, sintaks dan perintah yang

diberikan akan sepenuhnya dijalankan di server tetapi disertakan pada halaman

HTML biasa [27].

Banyak dijumpai kode PHP menyatu dengan kode HTML. Kode PHP

diawali dengan tag <?php dan diakhiri dengan tag ?>. Ketika dipanggil dari web

browser, program yang ditulis dengan PHP akan di-parsing di dalam web server

oleh interpreter PHP dan diterjemahkan kedalam dokumen HTML, yang

selanjutnya akan ditampilkan kembali ke web browser. Umumnya, bahasa PHP

dirancang untuk mengolah data dan mempercantik tampilan website [28].

2.6.3 HTML

HTML (Hyper text markup language) adalah sebuah bahasa markup yang

menggunakan perintah tertentu untuk membuat tampilan website. HTML memiliki

instruksi berupa tag yang mendefinisikan dengan tepat bagaimana teks dan grafik

dapat muncul pada halaman web internet. Dengan kata lain, HTML dapat

menampilkan informasi berdasarkan halaman yang kita buat menggunakan tag atau

instruksinya [29].

22
Kode HTML diawali dengan tag <html> dan diakhiri dengan tag </html>

untuk menyusun code menjadi paragraf, daftar dan teks. Perlu diingat bahwa HTML

bukan bahasa deskripsi halaman atau bahasa performatan halaman. HTML hanya

dirancang untuk menampilkan informasi dan berinteraksi dengan pengguna [30].

Bahasa scripting HTML dan PHP ini dapat dijalankan di Notepad++ dengan

ketentuan bahwa nama file harus berakhir dengan ekstensi (.html) atau (.php).

Notepad++ merupakan code editor (software penyunting code) yang dapat

digunakan oleh seorang pengembang aplikasi (programmer) untuk menuliskan

kode-kode program. Notepad++ didistribusikan sebagai perangkat lunak bebas dan

mendukung banyak bahasa seperti PHP, HTML, Python, Java, CSS dan lain-lain.

2.7 PhpMyAdmin- Database MySQL

PhpMyAdmin adalah perangkat lunak bebas yang ditulis dalah bahasa

pemrograman PHP yang digunakan untuk menangani dan mendukung berbagai

operasi pada database MySQL seperti mengelola basis data, membuat tabel,

mengisi data dan lain-lain dengan mudah tanpa harus menghafal baris perintahnya.

Gambar 2.11 Logo PhpMyAdmin


MySQL adalah sebuah database management sistem (DBMS) yang

digunakan secara open source. Database tersebut biasa digunakan untuk mengelola

23
dan menyimpan data dalam skala besar [31]. MySQL mendukung program-program

umum seperti C, C++, Java, PHP, Python, dan lain-lain. Pengaksesan data dalam

database dapat dilakukan dengan mudah melalui bahasa SQL. SQL (Structure

Query Langueage) adalah bahasa standar yang banyak digunakan untuk mengakses

server database. Dengan menggunakan SQL, proses akses database menjadi lebih

mudah dibandingkan dengan dBase ataupun Clipper yang masih menggunakan

perintah-perintah pemrograman murni [32].

MySQL mampu menangani basis data dalam skala besar, dengan jumlah

rekaman lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu, batas

indeks mencapai 32 indeks pada tiap tabelnya. MySQL dilengkapi dengan berbagai

tool yang dapat digunakan untuk administrasi basis data, agar mempermudah admin

dalam mengelola basis data tersebut dengan tampilan antarmuka web base dengan

cara-cara pengelolaannya, hal ini menjadi alasan yang sangat penting untuk

menjadikan MySQL sebagai sistem database. MySQL dapat melakukan koneksi

dengan protokol TCP/IP, Unix Soket (UNIX), atau Named Pipes (NT) [33].

2.8 XAMPP

XAMPP adalah perangkat lunak open source yang didalamnya sudah

tersedia database MySQL yang dapat mendukung pemrograman PHP. Nama

XAMPP merupakan singkatan dari singkatan dari Ross-Platfrom (X), Apache (A),

MySQL (M), PHP (P) dan Perl (P). XAMPP menyediakan Apache, database

(MySQL) dan bahasa scripting (PHP). Selain mudah digunakan, software tersebut

gratis dan mendukung instalasi di linux, mac dan windows [34].

24
Gambar 2.12 Logo XAMPP

Pada dasarnya, XAMPP adalah host local atau server local. Server local

tersebut bekerja untuk menjalankan atau mengaktifkan sistem operasi yang dia

miliki. Program ini tersedia dalam GNU (General Public License), merupakan

sebuah web server yang mudah digunakan dan dapat melayani tampilan halaman

web yang dinamis [35].

25
BAB III
METODE PENELITIAN

3.1 Waktu dan Tempat Penelitian

Penelitian ini dilaksanakan dari bulan juli 2019 hingga oktober 2019. Lokasi

penelitian bertempat di pusat laboratorium terpadu Universitas Islam Negeri Syarif

Hidayatullah Jakarta yang berlokasi di Jl. Ir H. Juanda No.95, Cempaka Putih,

Kecamatan Ciputat, Kota Tangerang Selatan, Banten.

3.2 Alat dan Bahan

Perancangan alat pendeteksi banjir dan pintu air otomatis membutuhkan

beberapa alat perangkat keras dan perangkat lunak sebagai berikut:

1. Sensor Ultrasonik (HC-SR04)

2. Buzzer

3. Motor Servo SG90

4. Resistor (1K, 2K)

5. Jumper (kabel Penghubung)

6. Raspberry Pi 3 model B

7. Monitor

8. Keyboard

9. Mouse

10. Wifi

11. Kabel Daya

12. Konverter HDMI

26
13. Python IDLE

14. Komputer (Laptop)

15. Database MySQL - PHPmyAdmin

16. XAMPP

17. NOTEPAD++

3.3 Perancangan Alat

Perancangan Alat menjelaskan bagaimana semua komponen dapat

dihubungakan dan dijalankan oleh satu sistem kendali. Pada penelitian ini, penulis

Raspberry Pi sebagai otak utama pengolahan data sensor. Raspberry bekerja untuk

menjalankan semua komponen yang terhubung dengannya serta mengirimkan data

komponen tersebut ke komputer untuk disimpan kedalam database. Pada

perancangan alat, Raspberry Pi dihubungan dengan tiga sensor menggunakan kabel

jumper dan dihubungkan pula ke project board atau penghubung arus.

Gambar 3.1 Perancangan Alat Deteksi Banjir dan Pintu Air Otomatis

27
Pada gambar diatas dapat dijelaskan perancangan alat deteksi banjir dan

pintu air otomatis sebagai berikut:

1. Motor Servo SG90 (Berfungsi sebagai pengatur pintu air otomatis)

VCC : Dihubungkan ke 5V

DATA : Dihubungkan ke GPIO 27

GND : Dihubungkan ke Ground

2. Sensor HCSR-04 (Berfungsi sebagai Pendeteksi ketinggian air)

VCC : Dihubungkan ke 5V

TRIGGER : Dihubungkan ke GPIO 18

ECHO : Dihubungkan ke Resistor 1 kꭥ, 2 kꭥ dan GPIO 24

GND : Dihubungkan ke Ground

3. Buzzer (Berfungsi sebagai pemberi pertanda)

DATA : Dihubungkan ke Resistor GPIO 23

GND : Dihubungkan ke Ground

4. Project Board

Berfungsi sebagai sirkuit elektronik yang memiliki lubang-lubang untuk

menghubungkan arus.

5. Resistor (1K, 2K)

Berfungsi sebagai pengatur dalam membatasi jumlah arus yang mengalir

pada rangkaian

6. Jumper

Berfungsi sebagai penghubung arus

28
7. Raspberry Pi 3 model B

Berfungsi sebagai otak yang mengatur jalannya program

8. Power

Berfungsi sebagai pengisi daya untuk Raspberry

9. Port HDMI

Port yang digunakan sebagai penghubung Raspberry ke layar monitor

10. Port USB

Port yang digunakan untuk menghubungkan mouse dan keyboard ke

Raspberry Pi

29
3.4 Diagram Alir Penelitian
Penelitian “Sistem Deteksi Banjir dan Pintu Air Otomatis menggunakan
Raspberry Pi 3 Model B Berbasis Website” ini meliputi beberapa tahap seperti
dibawah ini:

Gambar 3.2 Diagram Alir Penelitian


Sensor HCSR-04, Motor servo dan buzzer terhubung dengan Raspberry Pi

3 Model B. Ketika program Raspbery dijalankan, maka Raspberry akan membaca

dan mengirim data dari sensor HCSR-04 ke komputer. Selain untuk dikirim ke

komputer, data sensor HCSR-04 juga digunakan sebagai acuan untuk

menggurakkan motor servo dan membunyikan buzzer. Jika data HCSR-04 tidak

berhasil dikirim maka Raspberry akan membaca dan mengirim ulang kembali data

tersebut. Namun, Jika data berhasil dikirim maka data tersebut akan diterima oleh

30
komputer. Data yang telah diterima oleh komputer akan otomatis tersimpan

kedalam database serta ditampilkan kedalam website.

3.4.1 Diagram Alir Sistem Ketinggian Air

Data ketinggian air yang ada pada database akan ditampilkan kedalam

website dan dipilah menjadi 4 kategori, yaitu SIAGA 3 jika ketinggian air kurang

dari 7 cm, SIAGA 2 jika ketinggian air kurang dari 14 cm, SIAGA 1 jika ketinggian

air kurang dari 21 cm dan “Pintu Air Dibuka” jika ketinggian air melebihi dari 22

cm. Pembagian kategori ini diolah menggunakan bahasa pemrograman PHP dan

HTML yang dibuat sedemikian rupa pada Notepad++.

Gambar 3.3 Diagram Alir Sistem Ketinggian Air

31
3.4.2 Diagram Alir Sistem Pintu Air

Data ketinggian air yang diperoleh dari sensor HCSR-04 akan dijadikan

sebagai nilai acuan untuk membunyikan buzzer dan menggerakkan servo. Ketika

ketinggian air berada di titik 18 cm -19 cm maka buzzer akan berbunyi, bunyi

tersebut memberikan pertanda kepada warga sekitar atau petugas bahwa status

ketinggian air berada dititik SIAGA 1. Kemudian, ketika ketinggian air mencapai

lebih dari 22 cm maka Buzzer akan berbunyi lebih lama dan Motor servo akan

berputar ke (1800) untuk menarik pintu air keatas sehingga air dapat keluar dari

pintu tersebut.

Gambar 3.4 Diagram Alir Sistem Pintu Air Otomatis

32
3.5 Perancangan Perangkat Lunak

Untuk membangun alat pendeteksi banjir ini diperlukan beberapa perangkat

lunak sebagai sistem operasinya. Berikut beberapa perangkat lunak yang akan

digunakan pada Raspberry Pi 3 dan komputer:

3.5.1 Setting Pada Raspberry Pi 3 Model B

Raspberry merupakan mini komputer yang memerlukan sistem operasi

untuk bekerja. Penulis menggunakan raspbian sebagai salah satu sistem operasi

untuk Raspberry Pi 3. Raspbian adalah sistem operasi gratis berbasis Debian yang

telah dioptimalkan untuk Raspberry Pi dan direkomendasikan oleh website resmi

Raspberry Pi [36].

Berikut langkah-langkah instalasi depedensi yang digunakan:

a. Instalasi OS Untuk Raspberry Pi 3 Model B

1. Siapkan SD Card 16 GB sebagai memori Raspberry Pi

2. Unduh OS raspbian melalui komputer atau laptop pada web resminya

https://www.raspberrypi.org/downloads/

Gambar 3.5 OS Raspbian (NOOBS)

33
3. Unduh bagian “Download ZIP”

4. Setelah file Noobs berhasil diunduh, Pindahkan file tersebut ke SD card

yang akan digunakan pada Raspberry

5. Kemudian, masukkan SD card ke Raspberry Pi

6. Pada layar Raspberry Pi akan ditampilkan pilihan untuk mengunduh,

Lalu ikuti sesuai perintah.

b. Mengaktifkan One-Wire Interface

Komunikasi 1-wire merupakan perangkat yang hanya membutuhkan

sebuah kabel untuk melakukan komunikasi dengan sebuah perangkat.

Komunikasi yang dilakukan merupakan komunikasi asynchronous, dimana satu

buah master (server) dapat digunakan untuk terhubung dengan beberapa slave

(client). Berikut ini cara untuk mengaktifkan One-Wire Interface:

1. Menu  Preference  Raspberry Pi Configuration  Interfances  1-

wire  (Enable)  Klik Ok

2. Jika tampil perintah untuk Reboot  Klik “Yes”

c. Instalasi Bahasa Pemrograman Python 3

1. Buka “LxTerminal”

2. Ketik “sudo su”  Klik enter

3. Ketik “Sudo apt-get update”  Klik enter

4. Ketik “Sudo apt-get install python-virtualenv”  Klik enter

5. Ketik “Apt-get install python-pip3”  Klik enter.

34
d. Instalasi Library Untuk Sensor HC-SR04

1. Buka “LxTerminal”

2. Ketik “sudo nano ultrasonic_distance.py”  Klik enter.

e. Instalasi Library Untuk Motor Servo SG90 dan Buzzer

Motor servo dan Buzzer dapat langsung digunakan hanya dengan

mengimport RPi.GPIO pada program python.

3.5.2 Setting Pada Komputer

a. Instalasi Python 3

1. Download Python versi 3.5 pada link berikut:

https://www.python.org/downloads/windows/

2. Setelah selesai, jalankan file hasil unduhan python-3.5.0-amd64.exe

3. Klik “Install Now” tunggu sampai selesai, lalu klik “close”.

b. Instalasi Notepad++

1. Unduh file notepad++ installer pada link berikut ini: https://notepad-

plus-plus.org/

2. Setelah terunduh, buka file installer tersebut

3. Pilih bahasa yang akan digunakan  Klik Ok

4. Pada tampilan panduan instalasi  Klik Next

5. Pada tampilan license agreement  Klik I Agree

6. Pada tampilan lokasi penyimpanan  Pilih tempat untuk penyimpanan

Notepadd++  Klik Next

35
7. Terakhir, pilih komponen atau fitur yang akan digunakan dengan cara

memberi tanda atau checklist  Klik install, Lalu  Klik Finish

c. Instalasi XAMPP di Windows 10

1. Klik link berikut: https://www.apachefriends.org/

2. Pilih ikon “XAMPP For Windows”

3. Unduh PHP versi terbaru

4. Buka file Xampp yang telah terunduh

5. Pilih bahasa yang akan digunakan untuk menjalankan Xampp  Klik Ok

6. Pada tampilan Setup Wizard  Klik Next

7. Pilih komponen yang akan digunakan dengan cara memberi tanda atau

checklist (pilih semua)  Klik Next

8. Pada tampilan lokasi penyimpanan  Pilih tempat penyimpanan untuk

Xampp  Klik Next

9. Terakhir, tunggu proses instalasi selesai  Finish

d. Mengaktifkan Server Dan Database Melalui Xampp

1. Buka file unduhan Xampp

2. Klik ikon “Xampp-Control” dan akan tampil seperti gambar dibawah ini

36
Gambar 3.6 Tampilan Xampp

3. Klik “Start” pada Apache (untuk mengaktifkan server)

4. Klik “Start” pada Mysql (untuk mengaktifkan database)

5. Klik “Admin” pada Apache (untuk membuka tampilan PHPMyAdmin).

Gambar 3.7 Aktifasi server dan Mysql pada XAMPP

37
6. PhpMyAdmin akan otomatis terbuka pada peramban web seperti “Chrome

/ Microdoft Edge / Firefox”

Gambar 3.8 Tampilan Database PhpMyAdmin

e. Mengolah Database Phpmyadmin

 Membuat Database Baru Di Phpmyadmin

Klik “New”  “Create database” isi kolom “name”  “create”

38
Gambar 3.9 Membuat Database Baru
 Membuat Tabel Baru Pada Database

1. Klik nama database yang telah dibuat  Klik “New” isi nama tabel

pada kolom “Table Name” “Go”

2. Isi kolom tabel dengan format seperti gambar dibawah ini  Save

Gambar 3.10 Membuat Tabel di dalam database

 Membuat Format Tabel Pada Database

Buat ketentuan format seperti gambar dibawah, lalu klik save

39
Gambar 3.11 Membuat Format Tabel

3.6 Metode Karakteristik Data Sensor HCSR-04

Karakteristik data dari sensor HCSR-04 dapat diketahui dengan cara

memberikan nilai pada program sebesar error yang didapatkan. Untuk mengetahui

besar kesalahan literaturnya, maka pengukuran data ketinggian air dilakukan

dengan dua pengukuran, yaitu data yang didapat dari alat ukur berupa penggaris

sebagai acuan dan data yang didapat dari sensor HCSR-04. Perbandingan data ini

dilakukan untuk mengetahui tingkat kepresisian dari sensor HCSR-04 dalam

pembacaan ketinggian air. Dari perbandingan data tersebut dapat ditentukan nilai

error dengan persamaan dibawah ini [37]:

𝑋𝐿𝑖𝑡 − 𝑋𝑑𝑎𝑡𝑎
%𝐾𝐿 = × 100% (3.1)
𝑋𝐿𝑖𝑡

40
3.7 Metode Karakteristik Motor Servo SG90

Karakteristik dari motor servo dapat diketahui dengan cara melakukan

perbandingan antara busur dengan ketepatan titik derajat yang diarahkan oleh servo.

Perbandingan data ini dilakukan untuk mengetahui tingkat ketepatan dari motor

servo dalam berputar ke titik derajat yang telah ditentukan.

3.8 Metode Mengkoneksikan Database Ke Website


Buat program untuk mengkoneksikan database dengan website

menggunakan menggunakan bahasa PHP dan HTML pada Notepad++.

Langkah-langkah menampilkan database ke website:

1. Buat program untuk membangun website didalam Notepad++

menggunakan bahasa PHP dan HTML

2. Simpan program dalam format (.php)  contoh: (tinggiair.php)

3. Simpan kedalam folder (Xampp/htdocs/database)

4. Setelah tersimpan, buka peramban web seperti “Chrome / Microdoft Edge /

Firefox”

5. Lihat database yang terkoneksi dengan website dengan cara memasukkan

situs (http://localhost/namadatabase/namafile.php) kedalam pramban

website, contoh http://localhost/banjir/tinggiair.php

3.9 Metode Pengiriman Data

Koneksi antar jaringan (internet) terbentuk dari jaringan yang berbeda-

beda. Supaya antar jaringan tersebut dapat saling berkomunikasi maka

diperlukan teknik tertentu, yaitu dengan melakukan pengiriman data melalui

jaringan TCP/IP (Transmission Control Protocol/ Internet Protocol) [38].

41
Pengiriman data melalui TCP/IP ini dilakukan dengan dua cara yaitu pertama,

program pengirim dan penerima harus menggunakan wifi yang sama, hal ini

dilakukan agar pengirim mengetahui komputer mana saja yang memungkinkan

terhubung dengannya. Kedua, pada program pengirim dan penerima harus

diberikan kode IP dan Port yang sama dengan komputer (penerima), hal ini

dilakukan agar Raspberry (pengirim) dapat mengirimkan data ke alamat yang

dituju.

Langkah-langkah pengiriman data:

1. Pastikan Raspberry dan komputer sudah terhubung dengan Wifi yang sama

2. Pastikan program python di Raspberry dan program python komputer telah

dideklarasikan dengan IP dan Port yang sama dengan komputer

3. Buka database sebelum menjalankan program untuk mengaktifkan server

database. Hal ini dilakukan agar data yang telah diterima bisa otomatis

masuk kedalam database

4. Buka program python di Raspberry Pi

5. Buka program python di komputer

6. Jalankan program python di komputer terlebih dahulu

7. Lalu, Jalankan program python di Raspberry sampai pengiriman data

berjalan

8. Refresh Database untuk melihat data yang telah masuk (Database tidak

perlu selalu di refresh walaupun data belum tampil di dalam tabel database)

42
9. Buka website untuk melihat data yang masuk secara otomatis (Website akan

otomatis menampilkan data walaupun database belum merefresh data yang

diterima).

3.10 Metode Buka Tutup Pintu Air Otomatis


Pada penelitian ini, buka tutup pintu air otomatis diatur dengan

menggunakan motor servo SG90. Pada penelitian ini, waktu kerja sevo begantung

pada data yang didapat oleh HCSR-04. Jika sensor HCSR-04 membaca ketinggian

air lebih dari 22 cm maka pintu air akan terbuka dan motor servo akan berputar ke

(1800) untuk menarik pintu keatas sehingga air dapat keluar dari pintu tersebut.

Kemudian, jika ketinggian air kurang dari 22cm maka pintu air akan tertutup dan

motor servo dan motor servo akan berputar ke 00 untuk menurunkan pintu air ke

bawah sehingga air tidak dapat keluar lagi.

43
BAB IV
HASIL DAN PEMBAHASAN

Berdasarkan percobaan yang telah dilakukan oleh peneliti mengenai

pembuatan prototype sistem deteksi banjir dan pintu air otomatis menggunakan

Raspberry Pi 3 Model B berbasis website, selanjutnya penulis akan menjelaskan

analisis dari data yang telah diperoleh setelah melakukan pengujian perangkat keras

dan perangkat lunak yang digunakan.

4.1 Hasil Perancangan Perangkat Keras

Sistem perancangan perangkat keras menjelaskan bagaimana semua

komponen dapat dijalankan dalam satu sistem. Pada penelitian ini, penulis

menggunakan Raspberry Pi sebagai otak utama untuk menjalankan semua

komponen yang terhubung dengannya. Jika komponen dapat dijalankan, maka data

pada setiap komponen tersebut dapat terbaca oleh Raspberry Pi. Data yang telah

terbaca akan dikirim ke komputer secara otomatis untuk disimpan kedalam

database.

4.1.1 Hasil Perancangan Sistem Secara Keseluruhan

Perancangan perangkat keras secara keseluruhan menjelaskan bagaimana

sistem kerja dari setiap komponen yang digunakan sehingga sesuai dengan target

yang dirancang pada program python.

44
Gambar 4.1 Perancangan Alat

A. Bagian A merupakan unit Microrocessor Raspberry Pi 3 model B yang

terhubung dengan sensor HCSR-04, Motor Servo SG90, dan Buzzer. Ketika

dihubungkan ke listrik, Raspberry Pi akan menjalankan sistem kerja alat

secara keseluruhan.

B. Bagian B merupakan unit Buzzer yang bekerja pada kondisi tertentu sesuai

dengan ketentuan di dalam program

C. Bagian C merupakan unit HCSR-04 yang digunakan sebagai pengukur

ketinggian air. HCSR-04 diletakkan di atas wadah air agar dapat membaca

jarak antara sensor dengan muka air. Untuk perancangannya, penulis

menggunakan wadah dengan tinggi 25cm dan sensor HCSR-04 berada

dititik 29 cm. Rancangan HCSR-04 dalam mendeteksi ketinggian dapat

dilihat Pada gambar di bawah ini

45
Gambar 4.2 Simulasi Pembacaan Ketinggian Air

Sebenarnya, HCSR-04 tidak mengukur ketinggian air dari dasar

wadah sampai titik muka air, namun dengan mengetahui posisi penempatan

HCSR-04 dan jarak antara sensor HCSR-04 dengan muka air maka

ketinggian air dapat diketahui. Seperti pada gambar simulasi ketinggian air

diatas dapat dijelaskan bahwa nilai ketinggian air didapatkan dari jarak

dasar wadah ke sensor dikurangi dengan jarak yang terbaca oleh sensor.

Bagian ini diatur pada program pengiriman data sensor HCSR-04.

29 𝑐𝑚 − 20 𝑐𝑚 (𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑒) = 9 𝑐𝑚

D. Bagian D merupakan unit motor servo SG90 yang berfungsi untuk mengatur

pintu air seperti mengangkat dan menurunkan pintu air. Motor servo bekerja

saat sensor HCSR-04 mendeteksi air pada ketinggian tertentu.

46
Gambar 4.3 Simulasi Pintu Air
E. Bagian E adalah sebuah penggaris yang digunakan untuk mengukur

ketinggian air secara manual serta digunakan sebagai perbandingan nilai

antara ketinggian air yang diukur menggunakan penggaris dengan

ketinggian air yang didapatkan oleh sensor HCSR-04.

F. Bagian F adalah bagian pintu air yang terikat dengan motor servo SG90.

Motor akan bergerak ke titik 1800 untuk membuka pintu air dan akan

bergerak kembali bergerak ke titik 00 untuk menurunkan pintu air kebawah.

4.1.2 Hasil Rancangan Pintu Air Otomatis Dan Buzzer

Motor servo dan buzzer bekerja berdasarkan nilai ketinggian air yang

didapat oleh HCSR-04. Ketika ketinggian air berada pada titik 18 cm -19 cm maka

buzzer akan berbunyi selama tiga detik. Kemudian, ketika ketinggian air mencapai

lebih dari 22 cm maka buzzer akan berbunyi tujuh detik (lebih lama). Bunyi dari

buzzer digunakan untuk memberikan pertanda kepada warga sekitar dan petugas

47
bahwa status ketinggian air berada pada status SIAGA 1 atau saat pintu air telah

dibuka.

Perancangan pintu air otomatis diatur menggunakan motor servo SG90.

Motor akan berputar ke 00 untuk menurunkan pintu air ke bawah sehingga air tidak

dapat keluar, kemudian akan berputar ke 1800 untuk menarik pintu air keatas

sehingga air dapat keluar dari pintu tersebut.

Gambar 4.4 Pintu Air Saat tertutup dan Terbuka


Motor servo dapat mengangkat beban 1.6 kg/cm dengan kecepatan operasi

0.1 detik/600 dan tegangan 4.8 V. Untuk kecepatan bergerak dapat dikontrol dengan

pengaturan frekuensi dari tegangan supplay. Sehingga untuk penambahan beban

pintu air nantinya dapat diatur dengan cara memberikan tegangan supply sesuai

dengan yang dibutuhkan. Jika terjadi penambahan beban, selama beban tersebut

tidak mengakibatkan sinkronisasi motor, maka motor tetap berputar pada kecepatan

yang konstan.

48
4.2 Hasil Perancangan Perangkat Lunak

Perancangan perangkat lunak menjelaskan bagaimana sistem kerja dari

software yang digunakan dalam menerima data dari Raspberry Pi, penyimpanan

data kedalam database dan menampilkan data kedalam website secara realtime.

4.2.1 Hasil Pengiriman Data dari Raspberry Pi ke Komputer

Pengiriman data dapat berlangsung jika komputer (penerima) dijalankan

terlebih dahulu. Hal ini dilakukan agar komputer (penerima) dapat mencari

komputer lain yang terkoneksi dengan wifi yang sama dengannya.

Gambar 4.5 Proses Komputer Terkoneksi Dengan Wifi Yang Sesuai

Bagian “Server Mencari” merupakan pesan bahwa komputer akan mencari

komputer lain yang terhubung dengan wifi yang sama dengan komputer. Setelah

komputer menemukan wifi yang terhubung dengannya, maka komputer akan

memberikan informasi berupa pesan “Mendapat koneksi dari (‘192.168.43.131’),

pesan tersebut merupakan tanda bahwa komputer telah terkoneksi dengan IP

tersebut (IP Raspberry Pi). Pengiriman data dari Raspberry Pi akan dimulai ketika

komputer telah menampilkan pesan “Menerima Data” yang artinya komputer siap

menerima data dari Raspberry.

49
Pada saat pengiriman data, Raspberry Pi akan membaca data ketinggian air

yang didapatkan oleh HCSR-04, selanjutnya program akan mengubah data tersebut

kedalam format “%.1f”. Artinya Raspberry akan mengirimkan data ketinggian air

dengan hanya menampilkan satu angka dibelakang koma. Berikut ini adalah proses

ketika Raspberry Pi mulai mengirimkan data.

Gambar 4.6 Pengiriman Data Dari Raspberry Pi


Terdapat dua data yang dikirim oleh Raspberry Pi, yaitu “waktu

pengiriman” dari Raspberry ke komputer dan data “ketinggian air” yang dideteksi

oleh sensor HCSR-04. Proses pengiriman data berjalan secara terus-menerus sesuai

dengan jeda waktu yang telah ditentukan pada program pengirim. Pada bagian ini,

peneliti mengatur pengiriman data dengan jeda 2 menit.

4.2.2 Hasil Penerimaan Data dari Raspberry Pi ke Komputer

Gambar dibawah ini merupakan proses ketika komputer telah menerima

data dari Raspberry Pi. Data yang diterima hanya berupa data ketinggian air,

sedangkan untuk data waktu, peneliti menggunakan data waktu yang diatur pada

database phpmyadmin.

50
Gambar 4.7 Penerimaan Data Di Komputer

Pesan “1 data tersimpan” merupakan tanda bahwa baris data yang berada diatas

pesan tersebut telah tersimpan ke dalam database.

4.2.1 Hasil Data Yang Telah Masuk Kedalam Database

Data yang telah diterima oleh komputer akan otomatis masuk kedalam

database PhpMyadmin. Untuk data yang masuk kedalam database, penulis

mengubah data ketinggian air kedalam format Length/value = “DECIMAL (4,1)”

artinya nilai yang akan masuk ke tabel database totalnya ada 4 angka dengan 1

angkanya dibelakang koma. Bagian tersebut diatur pada saat pembuatan tabel di

PhpMyadmin dengan cara mengubah format isi tabelnya.

51
Gambar 4.8 Data yang masuk kedalam database
Penulis memberikan dua kolom tambahan pada tabel database, yaitu kolom

Tanggal yang digunakan untuk mengisi tanggal secara otomatis sesuai dengan

tanggal pada komputer dan kolom Status yang digunakan untuk memberikan

keterangan pada tampilan di website. Artinya, keterangan pada kolom Status hanya

dapat ditampilkan pada tabel website dan tidak berisi keterangan apapun pada kolom

di database. Kolom Status diolah sedemikian rupa menggunakan program php dan

html pada notepad++ untuk dapat memberikan keterangan pada tabel website

berdasarkan nilai yang ada pada kolom ketinggian air.

52
4.3 Hasil Karakteristik Sensor HCSR-04

Sensor HCSR-04 dapat mengukur jarak antara objek dengan sensor. Objek

yang menjadi sasaran dalam penelitian ini adalah air. Sensor HCSR-04 mampu

mengukur jarak hingga 400cm dengan dengan tingkat kepresisian ±1 cm.

Untuk memastikan kepresisiannya, penulis melakukan dua perbandingan,

yaitu perbandingan ketinggian air yang diukur menggunakan penggaris dengan

ketinggian air yang diukur menggunakan HCSR-04 dan ketinggian air yang diukur

jika air tersebut diberikan gangguan.

4.3.1 Perbandingan Nilai Ketinggian Air Antara HCSR-04 dan Penggaris

Perbandingan ketinggian air antara HCSR-04 dengan penggaris dilakukan

untuk mengetahui tingkat kepresisian dari sensor HCSR-04 dalam pembacaan

ketinggian air.

Tabel 4.1 Perbandingan Nilai Ketinggian Air Antara HCSR-04 dan Penggaris
No Alat Ukur (Penggaris) HCSR-04 Selisih
(cm) (cm) (cm)
1 3 3.3 0.3
2 6 6.8 0.8
3 9 9.5 0.5
4 12 12.2 0.2
5 15 14.2 0.8
6 18 18.0 0
7 21 20.9 0.1
8 24 23.8 0.2
Ʃ 108 108.7 -

53
Adapun hasil perbandingan data pada tabel 4.1 diatas dapat dilihat melalui
tampilan grafik dibawah ini

Perbandingan Nilai Ketinggian Air Antara


HCSR-04 dan Penggaris
27
24
21
18
HCSR-04

15
12
9
6
3
0
3 6 9 12 15 18 21 24
Alat Ukur Penggaris

Gambar 4.9 Grafik Perbandingan Antara Penggaris Dengan HCSR-04

Berdasarkan persamaan (3.1):


108−108,7
%𝐾𝐿 = × 100% = 0.6%
108
Berdasarkan dari data perbandingan antara penggaris dan sensor HCSR-04

pada tabel 4.1, didapatkan kesalahan literatur dari HCSR-04 yaitu sebesar 0.6%.

Berdasarkan nilai tersebut dapat diketahui bahwa nilai ketelitian sensor HCSR-04

adalah sebesar 99.4%. Dikarenakan nilai error yang didapat sangat kecil, sehingga

tidak diperlukannya nilai tambahan untuk kalibrasi pada program dan sensor ini

layak dijadikan sebagai pengukur ketinggian air. Terdapat 2 hal yang menyebabkan

error pada pembacaan ketinggian air oleh HCSR-04, yaitu karena adanya

gelombang air dan keakuratan dari sensor itu sendiri.

54
4.3.2 Karakteristik HCSR-04 dalam Pembacaan Ketinggian Air Jika

Diarahkan Pada Gelombang

Pada dasarnya, HCSR-04 dapat mengukur jarak dengan ketepatan yang

tinggi jika sensor tersebut diarahkan pada penghalang yang memiliki posisi bidang

yang datar. Namun pada penelitian kali ini, penghalang yang digunakan oleh

penulis adalah air sehingga terdapat posisi bidang yang tidak datar atau disebut

bergelombang, hal ini disebabkan karena adanya gelombang air.

Pengujian karakteristik sensor HCSR-04 dengan gangguan ini dilakukan

untuk mengetahui ketepatan pembacaan dari sensor HCSR-04 ketika permukaan air

mengalami gangguan seperti adanya gelombang air. Pengujian dilakukan dengan

cara memberikan air ke dalam wadah pada ketinggian awal sebesar 11 cm,

kemudian data akan diambil secara bertahap ketika air dalam wadah diberikan

gangguan agar bergelombang.

Tabel 4.2 Karakteristik HCSR-04 dalam Pembacaan Ketinggian Air Jika Diarahkan pada
Gelombang
Ketinggian Pengambilan Data Ketinggian Air Selisih
Normal (cm) (cm)
Data ke-1 11.2 1.2
Data ke-2 9.6 0.4
Data ke-3 9.1 0.9
Data ke-4 9.4 0.6
Data ke-5 8.0 2
10 cm
Data ke-6 10.4 0.4
Data ke-7 10.3 0.3
Data ke-8 9.7 0.3
Data ke-9 9.7 0.3
Data ke-10 9.8 0.2

55
Adapun hasil pengujian data pada tabel 4.2 diatas dapat dilihat melalui

tampilan grafik dibawah ini

Pengujian karakteristik sensor HCSR-04 jika


diberikan gelombang terus menerus
12
11.5
11
10.5
Ketinggian Air

10
9.5
9
8.5
8
7.5
7

Pengambilan Data

Gambar 4.10 Grafik Hasil Pengujian Karakteristik HCSR-04 pada Gelombang


Data ke-0 merupakan data yang didapatkan ketika permukaan air pada

kondisi datar (normal), selanjutnya untuk data ke-1 hingga data ke-10 merupakan

data ketinggian air yang didapatkan ketika permukaan air tersebut bergelombang.

Berdasarkan pada tabel 4.2 yaitu hasil pengujian HCSR-04 dalam membaca

jarak pada bidang yang bergelombang, dapat dijelaskan bahwa HCSR-04 membaca

jarak dengan selisih maksimal 2 cm dan selisih minimal 0.2 cm. Selisih dengan

jarak yang cukup jauh ini didapatkan ketika HCSR-04 menuju titik pada permukaan

air ketika kondisi air turun atau naik.

56
4.4 Hasil Karakteristik Motor Servo SG90

Motor servo SG90 dapat mengangkat beban 1.6 kg/cm dengan tegangan 4.8

V. Artinya, tegangan supplay harus diberikan sesuai dengan beban yang akan

diangkat oleh motor servo. Jika terjadi penambahan beban secara berlebihan, maka

akan mengakibatkan sinkronisasi motor servo atau motor tidak dapat berhenti pada

sudut yang tepat.

Untuk mengetahui kepresisian titik sudut yang diarahkan oleh motor servo,

maka penulis melakukan perbandingan sudut antara motor servo dengan busur.

Pengujian ini dilakukan untuk mengetahui tingkat ketepatan sudut dari gerak motor

servo. Berikut ini adalah tabel hasil pengujian perbandingan antara motor servo

dengan busur

Tabel 4.3 Perbandingan Antara Busur dengan Sudut Motor Servo


No Busur Motor Servo Selisih
1 00 00 00
2 300 300 00
3 600 600 00
4 900 900 00
5 1200 1200 00
6 1500 1500 00
7 1800 1800 00

57
Adapun hasil perbandingan data pada tabel 4.3 diatas dapat dilihat melalui

tampilan grafik dibawah ini

Perbandingan Antara Busur dengan Sudut Motor


Servo
200
180
160
140
Motor Servo

120
100
80
60
40
20
0
0 30 60 90 120 150 180
Busur

Gambar 4.11 Grafik Perbandingan Antara Busur dengan Motor Servo SG90

Berdasarkan hasil perbandingan pada tabel 4.3 dapat dijelaskan bahwa

selisih sudut antara motor servo dengan busur adalah 00, Artinya motor servo

bekerja sesuai dengan titik sudut yang telah ditentukan. Kesesuaian perbandingan

ini juga dipengaruhi oleh beban yang diangkat oleh motor servo. Pada prototype

ini, penulis menggunakan pintu air dengan beban yang ringan yaitu kurang dari 100

gram, sehingga tidak adanya sinkronisasi motor dan motor dapat bekerja sesuai

dengan titik sudut yang telah ditentukan dalam rancangan program.

58
4.5 Hasil Pengujian Kesesuaian Waktu Antara Data Yang Dikirim Dan

Diterima

Kecepatan waktu pengiriman dan penerimaan data ditentukan oleh

kestabilan sinyal. Jika sinyalnya lemah, maka pengiriman data akan menjadi lebih

lambat, Namun bila sinyal kuat/penuh maka waktu antara pengeriman dan

penerimaan data akan lebih cepat.

Untuk mengetahui kecepatan waktu pengiriman data mulai dari Raspberry

Pi hingga ke website, maka peneliti melakukan perbandingan antara waktu dikirim

dan diterima. Berikut ini adalah tabel hasil pengujian perbandingan antara waktu

dikirim dan diterima.

Tabel 4.4 Perbandingan Waktu Pengiriman dan Penerimaan Data


Pengirim Data (Raspberry) Penerima Data (Komputer) Selisih
HCSR-04 HCSR-04 Waktu
Waktu (cm) Waktu (cm) (detik)
09:11:35 3.3 09:11:37 3.3 2 detik
09:12:37 6.8 09:12:39 6.8 2 detik
09:13:39 9.5 09:13:41 9.5 2 detik
09:14:41 12.2 09:14:43 12.2 2 detik
09:15:43 14.2 09:15:45 14.2 2 detik
09:16:45 18.0 09:16:47 18.0 2 detik
09:17:47 20.9 09:17:49 20.9 2 detik
09:18:49 23.8 09:18:51 23.8 2 detik
Rata-rata 2 detik

Pada tabel 4.3 dapat dijelaskan bahwa antara waktu pengiriman data hingga

penerimaan data didapatkan jeda waktu rata-rata sebesar 2 detik dari 9 kali

percobaan. Respon waktu yang cepat ini terjadi karena peneliti menggunakan sinyal

59
handphone yang dekat dan cukup kuat sehingga kecepatan maksimal bisa

didapatkan.

4.6 Hasil Tampilan Website

Website yang dikembangkan oleh peneliti adalah website yang dinamis,

artinya informasi yang ada didalam website tersebut dapat diperbaharui secara

berkala dalam jangka waktu yang telah ditentukan. Dengan kata lain, adanya

program yang berjalan untuk mengatur perubahan data yang ditampilkan dalam

website dinamis tersebut.

Gambar 4.12 Tampilan Website

60
Hal yang menjadikannya sebagai website dinamis adalah website tersebut

didesain secara otomatis untuk menampilkan informasi terbaru setiap waktu yang

telah ditentukan, tanpa adanya pengaturan manual pada program. Website dimuat

dengan tambahan query <meta http-equiv="refresh" content="1"/> pada program

website. Nilai 1 pada query tersebut diatur agar website dapat merefresh halaman

website secara otomatis setiap 1 detik, sehingga website dapat langsung

menampilkan data terbaru yang masuk kedalam database tanpa harus merefresh

manual.

Pada program website, nilai pada kolom ketinggian air akan dijadikan acuan

untuk mengisi keterangan pada kolom status. Nilai tersebut nantinya akan dibagi

menjadi 4 kategori, yaitu kategori “SIAGA 3” jika nilai ketinggian air kurang dari

7 cm, “SIAGA 2” jika nilai ketinggian air kurang dari 14 cm, SIAGA 1 jika

ketinggian air kurang dari 21 cm dan “Pintu Air Dibuka” jika ketinggian air

melebihi dari 22 cm.

Terdapat dua fitur tambahan yang ditampilkan dalam website tersebut yaitu

pengaturan tanggal dan kotak informasi. Fitur tanggal berguna untuk memudahkan

para pengguna website dalam mencari data seputar berndungan sesuai dengan

tanggal yang diinginkan sedangkan kotak informasi berguna untuk memudakan

pengguna dalam membaca status ketinggian air.

61
BAB V
KESIMPULAN DAN SARAN

5.1 KESIMPULAN

1. Telah berhasil dirancang sistem deteksi ketinggian air dan pintu air otomatis

menggunakan Raspberry Pi 3 Model B berbasis website

2. Hasil karakteristik HCSR-04 mampu mendeteksi ketinggian air banjir

dengan tingkat ketelitian sebesar 99.4% dan motor servo sebesar 00.

3. Sistem deteksi ketinggian air banjir dan pintu air otomatis ini memiliki

kecepatan waktu pengiriman data hingga penerimaan data dengan jeda rata-

rata sebesar 2 detik dari 9 kali percobaan. Kecepatan respon waktu yang

maksimal ini membuat website dapat menampilkan informasi secara

realtime.

5.2 SARAN

1. Untuk penelitian selanjutnya sebaiknya menggunakan Motor Stepper,

karena jenis motor tersebut memiliki 50 sampai 100 kutub, sehingga

pengaturan pintu air dapat dilakukan secara bertahap

2. Untuk tahap pengiriman data dari Raspberry Pi ke komputer, kedepannya

perlu dibuatkan cloud agar ketika koneksi terputus maka data tidak ada yang

hilang

3. Tambahan informasi mengenai perkiraan cuaca dapat menyempurnakan

penelitian kali ini karena kondisi cuaca seperti hujan sangat mempengaruhi

intensitas ketinggian air.

62
DAFTAR REFERENSI

[1] CNNindonesia, “Anies Baswedan: Banjir Jakarta Karena Air dan Sampah
Kiriman”. https://www.cnnindonesia.com/nasional/20190426114140-20-
389845/anies-banjir-jakarta-karena-air-dan-sampah-kiriman (diakses tanggal
10 januari 2020)
[2] Akhiruddin. “Rancang Bangun Alat Pendeteksi Ketinggian Air Sungai
Sebagai Peringatan Dini Banjir Berbasis Arduino Nano” journal of
electrical technology Vol.3, No.3, 2018.
[3] Pratomo, Dicka Yoga., Adel Silvia Handayani dan R.A. Halimatussa’diyah.
“Sistem Peringatan Dini Banjir Menggunakan Mikrokontroller Raspberry
Pi 3”, Seminar Nasional Inovasi Dan Aplikasi Teknologi Di Industri,
Pp.110-115 2019
[4] Hans F, Astria Firman dan Wowor Xaverius Najoan. “Sistem Informasi
Perpustakaan Online Berbasis Web”, E-Journal Teknik Elektro Dan
Komputer, Vol.5 No.2, Pp. 29-36, 2016.
[5] Lubis, Ashar Muda dan Lizalidiawati. “Rancang-Bangun Alat Penentuan
Kecepatan Bunyi Di Udara Berbasis Instrumentasi”, Jurnal Gradien Vol.1,
No.1, Pp.10-15, 2005.
[6] Surya, Yohanes. “Getaran Dan Gelombang”, Tangerang: Pt Kandel, 2014.
[7] Halliday, David & Robert Resnick. “Fisika Edisi Ketiga Jilid 1”, Jakarta:
Erlangga, 1998.
[8] Sukandi, Agus dan Budi Santoso. “Aplikasi Instrumentasi Ultrasonik Pada
Pengujian Sifat Mekanik Logam”, Jurnal Politeknologi, Vol.12, No.2,
Pp.119-125, 2013.
[9] Walingkas, Irene Saktini., Meicsy E.I. Najoan dan Brave Angkasa Sugiarso.
“Perpaduan Sensor Ultrasonic Dengan Mini Komputer Raspberry Pi
Sebagai Pemandu Robot Beroda”, E-Journal Teknik Elektro Dan
Komputer, Vol.8, No.3, Pp. 122-123, 2019.

63
[10] Bhatt, Mahesh Chandra., Dharmendra Sharma, & Ashish Chauhan. “Smart
Dustbin for Efficient Waste Management”, International Research Journal
Of Engineering And Technologi, Vol 06, Issue 07, Pp.967-969, 2019.
[11] Sharmila A., dkk. “Obstacle Detection Using Ultrasonic Sensor In Mav
(Micro Air Vehicle)”, International Research Journal Of Engineering And
Technologi, Vol 05, Issue 04, Pp.1964-1966, 2018.
[12] R, Unni & Pati U.C. “Pc Based Ultrasonic Intrusion Detection System”,
IEEE International Symposium On Power Electronics For Distributed
Generation Systems, Pp.942-947, 2018.
[13] Abdillah, Muhammad Izzan., Denny Darlis dan Rizki Ardianto P.
“perancangan dan implementasi perangkat pengukur jarak dengan sistem
VLC pada sepeda motor untuk komunikasi antar kendaraan”, E-Proceeding
of Applied Science, Vol.5, No.1, Pp.267-279, 2019.
[14] Ikal., Sumiati dan Harizal. “Rancang Bangun Ptototype Penanganan Dini
Dan Pendeteksi Kebocoran LPG Berbasis Mikrokontroller Melalui SMS”,
Jurnal Pengembangan Riset Dan Observasi Sistem Komputer, Vol.3, No.2,
Pp.26-32, 2016.
[15] Hidayat, M Reza., Christiono dan Budi Septiana Sapudin. “Perancangan
Sistem Keamanan Rumah Berbasis IoT Dengan NodeMCU ESP8266
Menggunakan Sensor PIR HC-SR501 Dan Sensor Smoke Detector”, Jurnal
Kilat, Vol.7, No.2, Pp.139-148, 2018.
[16] Raut, Mahesh., dkk. “Automatic Mini Cnc Machine For Pcb Drawing Using
Arduino”, International Research Journal Of Engineering And Technologi,
Vol 06, Issue 06, Pp.310-313, 2019.
[17] Lutifa, Ulinnuha dan Joko Slamet Saputro. “Perancangan Robot ARM
Gripper Berbasis Arduino Uno Menggunakan Antarmuka Labview”,
Barometer, Vol.3, No.2, Pp.138-141, 2018.
[18] Kurniawan, Asep. “Alat Bantu Jalan Sensorik Bagi Tunanetra”, Journal Of
Disability Studies, Vol.6, No.2, Pp. 285-312, 2019.

64
[19] Mujadin, Anwar Dan Dwi Astharini. “Ball On Plate Balancing System Pada
KIT Praktek PID Mata Kuliah Dasar Sistem Kendali”, Jurnal Al-Azhar
Indonesia Seri Sains Dan Teknologi, Vol.3, No.3, 2016.
[20] Ramli, Mardhan., Dringhuzen J Mamahit dan Janny O Wuwung. “Rancang
Bangun Sistem Pemantau Tamu Pada Smarthome Berbasis Raspberry Pi
3”. E-Journal Teknik Elektro Dan Komputer, Vol.7 No.1, Pp. 1-8, 2018.
[21] Sedayu, Agung., Elvan Yuniarti Dan Edi Sanjaya. “Rancang Bangun Home
Autamtion Berbasis Raspberry Pi 3 Model B Dengan Interface Aplikasi
Media Sosial Telegram Sebagai Sistem Kendali”. Al-Fiziya, Vol.1, No.2,
2018.
[22] Dharaska, Mayank., dkk. “IOT Based Surveillance Robotic Car Using
Raspberry Pi”, International Research Journal Of Engineering And
Technologi, Vol 05, Issue 03, Pp.422-425, 2017.
[23] Kadir, Abdul. 2001. “Dasar Raspberry Pi”. Yogyakarta: Andi
[24] Khrisnawan, Adhi. “Perancangan Sistem Keamanan Ruangan
Menggunakan Raspberry Pi”. E-Proceeding of Engineering, Vol.2, No.2,
Pp.3822-3828, 2015.
[25] Srinath, K.R. “Python – The Fastest Growing Programming Language”,
International Research Journal Of Engineering And Technologi, Vol 04,
Issue 12, Pp.354-357, 2017.
[26] Bogdanchikov.A., Zhaparoy .M & Suliyey .R “python to learn
programing”, IopScience, journal Of Physics : conference series 423,2013.
[27] Singh, Ankesh V., Vunod L Gupta & Anand Yadaf. “College Infrastructure
Management System”, International Research Journal Of Engineering And
Technologi, Vol 06, Issue 04, Pp. 4670-4674, 2019.
[28] Raharjo, Budi., Imam Heryanto Dan E. Rosdiana K. 2014 “Modul
Pemrograman Web Html, Php Dan Mysql”. Bandung: Modula.
[29] Rengkung, Roberto., Steven R. Sentinuwo dan Stanley Karouw.
“Pembangunan Sistem Informasi Repository Berbasis Teknologi Web
Component Studi Kasus GMIM Bukit Moria Winangun”, E-Journal Teknik
Elektro Dan Komputer, Vol.4, No.6, Pp.1-6, 2015.

65
[30] Song, Yuwu. 2004. “Building Better Web Sites: a how to do it manual for
librarians”. New York: Neal-Schuman.
[31] Barrie, Maria. W. H., Arie. S. M. Lumenta dan Anneke Wowor.
“Perancangan Aplikasi SMS GATEWAY Untuk Pembuatan Kartu
Perpustakaan Di Fakultas Teknik Unsrat”, E-Journal Teknik Elektro Dan
Komputer, Vol.4, No.1, Pp. 23-28, 2015.
[32] Warman, Indra Dan Rizki Ramdaniansyah. “Analisis Perbandingan Kinerja
Query Database Management System (DBMS) Antara Mysql 5.7.16 Dan
Mariadb 10.1”, Jurnal Teknik Informatika, Vol.6 No.1, Pp. 32-41 , 2018.
[33] Yaqin, M. Ainun., dkk. “Pengembangan Sistem Informasi Alumni Berbasis
Web Fakultas Sains Dan Teknologi Universitas Islam Negeri Maulana
Malik Ibrahim Malang” Jurnal Matics, Vol.4, No.1, Pp. 26-31, 2010.
[34] Haisani, Luwis .H., Marceau A. F. Haurissa dan Zulkarnaen Hatala. “Sistem
Informasi Data Jemaat Gpm Gidion Waiyari Ambon Dan Jemaat Gpm
Halong Anugerah Ambon”, Jurnal Simetrik, Vol.8, No.2, Pp.139-144, 2018.
[35] Makde, Gaurav., dkk. “Implementation Of Iot Based Smart Garbage And
Waste Collection System”, International Research Journal Of Engineering
And Technology, Vol 06, Issue 03, Pp.1847-1853, 2019.
[36] Al-Qorni, Wais., Anugrah Azhar dan Elvan Yuniarti. “Perancangan Sistem
Control Otomatis Berbasis Web Menggunakan Raspberry Pi 3 Pada
Smarthome”, Jurnal Al-Fiziya, Vol.1, No.2, 2018.
[37] Priyambodo, Modul Praktikum Pengolahan Sistem Digital, Jakarta: Pusat
Laboratoriun Terpadu, UIN Jakarta, 2006.
[38] Ernawati, Tati dan Jemi Endrawan. “Peningkatan Kinerja Jaringan
Komputer Dengan Border Gateway Protocol (Bgp) Dan Dynamic Routing”.
Khazanah Informatika: Jurnal Ilmu Komputer Dan Informatika, Vol.4,
No.1, Pp.35-41, 2018.

66
LAMPIRAN

Script program pengirim data di Raspberry Pi

import sys
import socket
import RPi.GPIO as GPIO
import pickle
import time
import datetime

host = "192.168.43.184"
port = 60000
s= socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((host, port))

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(18, GPIO.OUT)
GPIO.setup(24, GPIO.IN)

def distance():
GPIO.output(18, True)
time.sleep(0.00001)
GPIO.output(18, False)
StartTime = time.time()
StopTime = time.time()

# save StartTime
while GPIO.input(24) == 0:
StartTime = time.time()
# save time of arrival
while GPIO.input(24) == 1:
StopTime = time.time()
TimeElapsed = StopTime - StartTime
distance = 29-(TimeElapsed * 34300) / 2
return distance
buzzer = 23
GPIO.setup(buzzer, GPIO.OUT)

servoPIN = 27
GPIO.setup(servoPIN, GPIO.OUT)

p = GPIO.PWM(servoPIN, 50) # GPIO 17 for PWM with 50Hz


p.start(2.5) # Initialization

67
while True:
ts = time.time()
now = datetime.datetime.fromtimestamp(ts)
dist = distance()
print(now.strftime("%T"),"%.1f" %dist)
data_string = pickle.dumps((dist))
s.sendall(data_string)
time.sleep(119)
if dist >18 and dist <19:
GPIO.output(buzzer,GPIO.HIGH)
Time.sleep(2)
p.ChangeDutyCycle(2.5)
time.sleep(1)
GPIO.output(buzzer,GPIO.LOW)
elif dist >22:
GPIO.output(buzzer,GPIO.HIGH)
p.ChangeDutyCycle(12.5)
Time.sleep(7)
GPIO.output(buzzer,GPIO.LOW)
time.sleep(1)
else:
p.ChangeDutyCycle(1)
GPIO.output(buzzer,GPIO.LOW)
time.sleep(1)
time.sleep(110)
s.close()
print('connection closed')

68
Script program penerima data di Komputer

import socket # Import socket module


import pickle
import mysql.connector
import ssl
#import sys

s = socket.socket() # Create a socket object


host = '192.168.43.184' # Get local machine name
port = 60000 # Reserve a port for your
service.
s.bind((host, port)) # Bind to the port
s.listen(5)

con = mysql.connector.connect(
host="localhost",
user="root",
database="Banjir")

print ('Server Mencari....')

conn, addr = s.accept() # Establish connection with client.


print('mendapat koneksi dari', addr)
print(' menerima data...')
while True :
data = conn.recv(1024)
data_arr = pickle.loads(data)
if data:
print('data=', (data_arr))
cur=con.cursor()
sql = ("INSERT INTO datakatulampa (Ketinggian_Air) VALUES
(%s)")
cur.executemany(sql,(data_arr,))
con.commit()
print(cur.rowcount, " data tersimpan.")
else:
print("tidak ada data.")
break
conn.close()

69
Script Program untuk mengkoneksikan database PhpMyAdmin dengan website
diNotepad++. Nama tabel “koneksi.php”.

<?php
$conn= mysqli_connect('localhost','root','','banjir');
?>

Script Program untuk mengkategorikan status berdasarkan ketinggian air di


Notepad++. Status.php”.

<html>
<?php
$t = $data['Ketinggian_Air'];
if ($t <= 7.00)
{echo "<div <p style='text-align:center;
width:100%;height:25px; background-
color:#FFCCFF;'>SIAGA3</p></div>";}
elseif ($t <= 14.00)
{echo "<div <p style='text-align:center;
width:100%;height:25px; background-color:
#FF99CC;'>SIAGA 2</p></div>";}
elseif ($t <= 22.00)
{echo "<div <p style='text-align:center;
width:100%;height:25px; background-color:
#DC143C;'>SIAGA 1</p></div>";}
else
{echo "<div <p style='text-align:center; font-
size:120%;color:white;width:100%; height:65px;
background-color:#660000;'>Pintu Air <br>
Dibuka !!!</p></div>";}
?>
</html>

70
Script utama program website di Notepad++. Nama tabel “tinggiair.php”.

<html>
<head>
<meta http-equiv="refresh" content="1"/>
<!--<meta http-equiv="refresh" content="1"; url =
index.php>-->
<title>Data Ketinggian Air di Bendungan</title>
</head>
<body style="background-image:url('gambar3.jpg');">
<br/>
<h1 align="center" >Data Ketinggian Air di Bendungan
</h1>
<?php
include 'koneksi.php'; ?>
<br/>
<form method="get"; align="center";>
<label><b>PILIH TANGGAL</b></label>
<input type="date" name="Tanggal">
<input type="submit" value="FILTER">
</form>
<table border = "3px"; align="center" bgcolor =
"#f0f0f0">
<tr bgcolor="Black" style="color:white"
height="30px">
<th width="120px, align="center">
Tanggal</th>
<th width="120px" align="center">
Waktu</th>
<th width="150px" align="center">
KETINGGIAN AIR </th>
<th width="120px", align="center">
Status</th>
</tr>

71
<?php
if(isset($_GET['Tanggal'])){
$tgl = $_GET['Tanggal'];
$query = mysqli_query($conn,"select * from datakatulampa
where Tanggal='$tgl' LIMIT 15");
}else{
$query = mysqli_query($conn,"select * from datakatulampa
limit 15");
}
while($data = mysqli_fetch_array($query)){
?>

<tr height="30px">
<td width="105px"><?php echo $data['Tanggal']; ?></td>
<td width="105px"> <?php echo $data['Waktu']; ?></td>
<td align="center" ><b><?php echo $data['Ketinggian_Air'];
?></b></td>
<td><b align="center"><?php include 'status.php'; echo
$data['Status'];?></b></td>
</tr>
<?php } ?>

</table>
<table style="background-color:White; border: solid Tomato;">
<td width="330px", height="110px" ,align="center">
<b>Keterangan Status:</b><ul>
<li>0 cm ~ 7.00 cm = <b style="background-color: #FFCCFF;">
SIAGA 3 </b></li>
<li>7.01 cm ~ 14.00 cm = <b style="background-color:
#FF99CC;"> SIAGA 2 </b></li>
<li>14.01 cm ~ 22.00 cm = <b style="background-color:
#DC143C;"> SIAGA 1 </b></li>
<li><b>Lebih Dari 22.00 cm = <b style="background-color:
#660000; color:white;">Pintu Air Dibuka</b></li>
</ul></td>
</table>
</body
</html>

72

Anda mungkin juga menyukai