Heaven Arvian Marcello Devin (25051204032)
Ravelino Hermanto (25051204151)
Naufal Fayyadhani Ramadhan Akbar (25051204181)
Ahmad Aditya Ardiansyah (25051204203)
BAB I
PENDAHULUAN
1.1 Latar Belakang
Indonesia merupakan negara dengan curah hujan tinggi yang menyebabkan
bencana banjir menjadi salah satu masalah lingkungan yang sering terjadi. Banyak
daerah mengalami kenaikan permukaan air secara tiba-tiba akibat drainase buruk,
intensitas hujan tinggi, dan meluapnya sungai. Oleh karena itu, diperlukan sistem
pendeteksian dini yang mampu memantau ketinggian air secara real-time.
Pada era modern, teknologi mikrokontroler seperti Arduino memberikan kemudahan
dalam pembuatan alat monitoring sederhana tetapi fungsional. Sensor Ultrasonik
HC-SR04 dapat mengukur jarak permukaan air tanpa bersentuhan langsung,
sehingga lebih aman dan cocok digunakan pada area rawan banjir.
Melalui praktikum simulasi ini, mahasiswa mempelajari bagaimana sebuah
mikrokontroler bekerja berdasarkan konsep arsitektur komputer
(Input–Proses–Output). Proyek ini menampilkan bagaimana data jarak diproses
menjadi informasi level air, ditampilkan pada LCD, dan memberikan peringatan
menggunakan LED dan buzzer.
1.2 Rumusan Masalah
Berdasarkan latar belakang tersebut, rumusan masalah dalam laporan ini adalah:
1. Bagaimana merancang sistem deteksi ketinggian air menggunakan sensor
ultrasonik dan Arduino Uno?
2. Bagaimana mengolah data jarak menjadi tinggi air untuk menentukan status
aman, waspada, dan bahaya?
3. Bagaimana mengimplementasikan sistem tersebut dalam bentuk simulasi dan
rangkaian Arduino?
1.3 Tujuan Laporan
Tujuan dari pembuatan laporan ini adalah:
1. Memahami konsep kerja mikrokontroler Arduino dalam memproses input
sensor.
2. Mampu membuat rangkaian sistem monitoring ketinggian air sederhana.
3. Mampu membuat program Arduino untuk mendeteksi level air dan
menampilkan statusnya.
1. Bagi Mahasiswa: Memberikan pengalaman langsung mengenai integrasi
sensor dengan Arduino.
2. Bagi Pembaca: Memberikan pengetahuan tentang cara kerja sistem
pendeteksi banjir sederhana namun efektif.
BAB II
TINJAUAN PUSTAKA
2.1 Dasar Teori
2.1.1 Sistem Monitoring Ketinggian Air
Sistem monitoring ketinggian air adalah perangkat yang digunakan untuk
mengetahui perubahan permukaan air secara real-time. Sistem ini biasanya
digunakan pada sungai, bendungan, selokan, dan daerah rawan banjir. Prinsip
kerja sistem ini adalah membaca tinggi air, mengelompokkannya ke dalam
kategori tertentu, dan memberikan peringatan jika terjadi kenaikan signifikan.
Dalam ilmu arsitektur komputer, sistem monitoring air adalah implementasi
Input–Process–Output (IPO), yaitu:
● Input → sensor membaca jarak
● Proses → konversi jarak menjadi tinggi air & penentuan status
● Output → LED, LCD, buzzer
Gelombang ultrasonik adalah gelombang mekanik dengan frekuensi > 20 kHz, tidak dapat
didengar manusia. Sensor ultrasonik mengirimkan gelombang ke permukaan objek, lalu
menghitung waktu pantulan kembali untuk menentukan jarak.
Rumus dasar Jarak = ( v * t ) / 2, dengan:
● v = kecepatan suara (0,034 cm/µs)
● t = waktu tempuh gelombang pulang–pergi
Mengapa prinsip ini cocok untuk mendeteksi permukaan air?
Karena gelombang ultrasonik dapat dipantulkan oleh permukaan cairan tanpa harus
menyentuh airnya.
2.1.3 Konsep Ketinggian Air (Water Level)
Ketinggian air adalah selisih antara jarak sensor ke dasar wadah saat kosong dengan jarak
sensor ke permukaan air saat diukur.
Rumus:
Tinggi Air = Jarak Kosong - Jarak Terukur
Jika tinggi air semakin besar → permukaan air semakin naik → status semakin berbahaya.
2.1.4 Konsep Indikator Visual dan Audio
Dalam sistem peringatan banjir, indikator perlu dibuat sejelas mungkin agar dapat dipahami
dalam kondisi darurat.
Standarnya:
● Hijau → Aman
● Kuning → Waspada
● Merah → Bahaya
● Buzzer → Peringatan keras saat bahaya
Konsep ini mengikuti standar sistem keselamatan industri (Safety Indicator System).
2.1.5 Input–Process–Output pada Arsitektur Komputer
Sistem ini merupakan implementasi nyata konsep arsitektur komputer:
2.2 Alat dan Bahan
2.2.1 Arduino Uno
Arduino Uno adalah papan mikrokontroler berbasis ATmega328P yang digunakan sebagai
pusat pengolahan data. Arduino membaca input dari sensor dan memberikan output berupa
tampilan status serta alarm.
2.2.2 Sensor Ultrasonik HC-SR04
Sensor yang digunakan untuk mengukur jarak permukaan air tanpa menyentuh air. Sensor ini
bekerja dengan gelombang ultrasonik 40 kHz.
2.2.3 LCD 16x2 (I2C)
Digunakan untuk menampilkan nilai tinggi air dan status kondisi air secara real-time.
2.2.4 LED (Hijau, Kuning, Merah)
Sebagai indikator visual:
● LED Hijau → Aman
● LED Kuning → Waspada
● LED Merah → Bahaya
2.2.5 Buzzer
Berfungsi untuk memberikan alarm suara ketika tinggi air mencapai kondisi Bahaya.
2.2.6 Breadboard & Kabel Jumper
Digunakan untuk merangkai seluruh komponen tanpa soldering
2.2.7 Ganbar Rangkaian dan Alat
Rangkaian dibuat dengan menempatkan sensor ultrasonik pada posisi atas dan
menghadap ke permukaan air untuk mengukur perubahan jarak. LCD digunakan
untuk menampilkan tinggi air dan status level.
Konfigurasi pin:
● HC-SR04
○ Trig → D9
○ Echo → D10
● LED
○ Hijau → D2
○ Kuning → D3
○ Merah → D4
● Buzzer → D5
● LCD I2C
○ SDA → A4
○ SCL → A5
1. Sensor membaca jarak antara sensor dan permukaan air.
2. Nilai jarak dikonversi menjadi tinggi air:tinggi air = jarak Kosong - jarak
3. Sistem menentukan status:
a. Tinggi < 5 cm → AMAN (LED Hijau)
b. 5–10 cm → WASPADA (LED Kuning)
c. 10 cm → BAHAYA (LED Merah + Alarm Buzzer)
Logika ini menyerupai sistem deteksi banjir modern yang sederhana.
3.2 Code Program
Kode berikut diunggah ke Arduino Uno:
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);#define TRIG 9
#define ECHO 10
#define LED_HIJAU 2
#define LED_KUNING 3
#define LED_MERAH 4
#define BUZZER 5
const int jarakKosong = 30;
const int thWaspada = 5;
const int thBahaya = 10;
long bacaJarak() {
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
long durasi = pulseIn(ECHO, HIGH, 30000UL);
if(durasi == 0) return jarakKosong;
return durasi * 0.034 / 2;
}
void setup() {
lcd.init();
lcd.backlight();
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(LED_HIJAU, OUTPUT);
pinMode(LED_KUNING, OUTPUT);
pinMode(LED_MERAH, OUTPUT);
pinMode(BUZZER, OUTPUT);
}
void loop() {
long jarak = bacaJarak();
long tinggiAir = jarakKosong - jarak;
if (tinggiAir < 0) tinggiAir = 0;
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Air: ");
lcd.print(tinggiAir);
lcd.print(" cm");
digitalWrite(LED_HIJAU, LOW);
digitalWrite(LED_KUNING, LOW);
digitalWrite(LED_MERAH, LOW);
digitalWrite(BUZZER, LOW);
lcd.setCursor(0,1);
if (tinggiAir < thWaspada) {
lcd.print("Status: AMAN");
digitalWrite(LED_HIJAU, HIGH);
} else if (tinggiAir < thBahaya) {
lcd.print("Status: WASPADA");
digitalWrite(LED_KUNING, HIGH);
} else {
lcd.print("Status: BAHAYA");
digitalWrite(LED_MERAH, HIGH);
digitalWrite(BUZZER, HIGH);
}
delay(600);
}
BAB IV
PENUTUP
4.1 Kesimpulan
Berdasarkan praktikum dan simulasi yang dilakukan, dapat disimpulkan bahwa:
1. Arduino Uno dapat digunakan sebagai sistem monitoring ketinggian air
dengan memanfaatkan sensor HC-SR04 sebagai input.
2. Data jarak berhasil diolah menjadi tinggi air dan dikategorikan menjadi status
aman, waspada, dan bahaya.
3. Sistem mampu memberikan peringatan visual (LED) dan audio (buzzer)
ketika level air mencapai batas tertentu.4. Simulasi ini memberikan pengalaman nyata mengenai penerapan konsep
arsitektur komputer pada perangkat fisik.
4.2 Saran
Untuk pengembangan lebih lanjut, sistem ini dapat ditingkatkan dengan:
1. Penambahan modul WiFi (ESP8266) untuk mengirim data ke smartphone.
2. Menggunakan baterai cadangan agar tetap aktif saat listrik padam.
3. Menambahkan grafik dashboard monitoring berbasis web.
DAFTAR PUSTAKA
1. Arduino.cc. (2025). Arduino Reference Documentation.
2. Prapanca, Aditya. (2025). Materi Kuliah Arsitektur dan Organisasi Komputer,
UNESA.
3. Wokwi. (2025). Wokwi Arduino Simulator Documentation.
Tidak ada komentar:
Posting Komentar