Panduan Membuat Keran Air Otomatis dengan Arduino dan Sensor Ultrasonik
Berikut Video Pembuatannya:
📝 Deskripsi Proyek
Keran otomatis ini bekerja dengan sensor ultrasonik
HC-SR04 untuk mendeteksi keberadaan gelas di dekat keran. Saat gelas
terdeteksi, servo motor menarik tuas keran sehingga air mengalir.
Setelah waktu tertentu, servo kembali ke posisi awal untuk menutup keran.
Proyek ini cocok untuk eksperimen sederhana maupun solusi
praktis hemat air.
🔧 Alat dan Bahan
- 1x Arduino
Uno / Nano
- 1x Sensor
Ultrasonik HC-SR04
- 1x Servo
motor SG90 / MG90S
- 1x Breadboard
& Jumper Wires
- 1x Kabel
USB
- 2 Baterai
charger 18650
- Tali
kecil untuk mengikat tuas servo dengan keran air manual
⚡ Wiring / Rangkaian
Hubungkan komponen seperti berikut:
- HC-SR04
- VCC
→ 5V Arduino
- GND
→ GND Arduino
- Trig
→ Pin 9 Arduino
- Echo
→ Pin 10 Arduino
- Servo
Motor
- Kabel
Merah (VCC) → 5V Arduino
- Kabel
Coklat/Hitam (GND) → GND Arduino
- Kabel
Oranye/Kuning (Signal) → Pin 6 Arduino
🔗 Berikut diagram
sederhana koneksi:
HC-SR04
Arduino UNO
---------
------------
VCC ---> 5V
GND ---> GND
Trig ---> D9
Echo ---> D10
Servo
---------
VCC (Merah) --->
5V
GND (Coklat) --->
GND
Signal (Oranye) -> D6
💻 Kode Program Arduino
Berikut program lengkap untuk mengontrol keran otomatis:
#include <Servo.h>
#define TRIG_PIN 9
#define ECHO_PIN 10
#define SERVO_PIN 6
Servo servo;
long duration;
int distance;
int threshold = 15; //
Jarak ambang (cm) untuk mendeteksi gelas
void setup() {
pinMode(TRIG_PIN,
OUTPUT);
pinMode(ECHO_PIN,
INPUT);
servo.attach(SERVO_PIN);
servo.write(0); // Posisi awal servo (tutup keran)
Serial.begin(9600);
}
void loop() {
// Kirim trigger
digitalWrite(TRIG_PIN,
LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN,
HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN,
LOW);
// Baca echo
duration = pulseIn(ECHO_PIN,
HIGH);
distance = duration
* 0.034 / 2; // Konversi ke cm
Serial.print("Jarak:
");
Serial.print(distance);
Serial.println("
cm");
// Jika gelas
terdeteksi
if (distance > 0
&& distance < threshold) {
servo.write(90); // Tarik tali (buka keran)
delay(7000); // Lama keran terbuka (7 detik, bisa
diubah)
servo.write(0); // Tutup kembali
delay(1000); // Jeda agar tidak langsung aktif lagi
}
}
⚙️ Cara Kerja
- Sensor
ultrasonik membaca jarak objek (gelas).
- Jika
jarak < 15 cm → servo bergerak ke posisi 90° untuk menarik tuas
keran.
- Setelah
7 detik, servo kembali ke posisi awal (0°) menutup keran.
- Terdapat
jeda 1 detik sebelum sistem bisa aktif lagi.
🎯 Tips & Pengembangan
- Atur
nilai threshold sesuai kebutuhan (misal 10–20 cm).
- Atur delay(7000)
sesuai lama air yang ingin keluar.
- Gunakan
servo yang lebih kuat jika tuas keran berat.
- Bisa
ditambahkan sensor flowmeter untuk mengukur volume air.
- Jika
ingin lebih modern, sistem bisa dipadukan dengan relay + solenoid valve
sebagai pengganti keran manual.

Tidak ada komentar:
Posting Komentar