MEMBUAT JEMURAN OTOMATIS BERBASIS ARDUINO DAN SENSOR HUJAN


1. Deskripsi Projek

Jemuran otomatis merupakan salah satu contoh penerapan Internet of Things (IoT) dan sistem kendali otomatis sederhana dalam kehidupan sehari-hari.

Pada projek ini digunakan Arduino Uno sebagai pengendali utama, sensor hujan (Raindrop/MH-RD) sebagai pendeteksi kondisi lingkungan, dan motor servo sebagai penggerak jemuran.

Ketika sensor mendeteksi hujan, Arduino akan memberikan perintah kepada servo untuk menggerakkan jemuran ke posisi terlindung. Sebaliknya, ketika kondisi kembali kering, jemuran akan bergerak keluar.

Cara kerja singkat

Sensor hujan → Arduino Uno → Motor Servo → Jemuran bergerak


2. Video Tutorial

Berikut adalah video tutorial projek:

https://www.youtube.com/shorts/hbH6q8DHtwI

Jangan lupa subscribe untuk mendapatkan tutorial projek Arduino lainnya.



3. Alat dan Bahan

Komponen elektronik

  1. Arduino Uno
  2. Sensor hujan / Raindrop Module MH-RD
  3. Motor Servo SG90 atau MG90S
  4. Kabel jumper male-female dan male-male
  5. Breadboard (opsional)
  6. Kabel USB Arduino
  7. Sumber daya/baterai

Bahan mekanik

  1. Kardus atau akrilik untuk membuat miniatur rumah
  2. Stik es krim/kawat sebagai lengan jemuran
  3. Kain atau kertas kecil sebagai pakaian
  4. Lem tembak
  5. Selotip/double tape
  6. Sedotan kecil atau pipa kecil sebagai poros
  7. Kabel ties (opsional)


4. Komponen Utama dan Fungsinya

Arduino Uno

Arduino Uno berfungsi sebagai otak sistem. Arduino membaca nilai dari sensor hujan kemudian menentukan apakah jemuran harus masuk atau keluar.

Sensor Hujan MH-RD

Sensor hujan digunakan untuk mengetahui keberadaan air/hujan.

Sensor memiliki dua bagian utama:

  • Plat sensor → mendeteksi air
  • Modul sensor → mengubah kondisi sensor menjadi sinyal listrik

Pada projek ini digunakan keluaran:

AO (Analog Output)

Karena AO menghasilkan nilai analog, Arduino dapat membaca tingkat kelembapan pada sensor.

Motor Servo

Servo digunakan sebagai aktuator untuk menggerakkan mekanisme jemuran.

Servo dapat diputar pada sudut tertentu, misalnya:

  • 0° → jemuran keluar
  • 90° → jemuran masuk

Sudut tersebut dapat disesuaikan dengan konstruksi miniatur.


5. Membuat Miniatur Rumah

Pertama, buat miniatur rumah menggunakan kardus atau akrilik.

Contoh ukuran yang dapat digunakan:

  • Panjang: 30 cm
  • Lebar: 20 cm
  • Tinggi: 20–25 cm

Ukuran tidak harus sama. Sesuaikan dengan ukuran servo dan jemuran.

Buat bagian atap rumah sedikit menjorok keluar agar dapat digunakan sebagai tempat perlindungan pakaian.

Langkah:

  1. Potong kardus sesuai ukuran rumah.
  2. Buat dinding depan, belakang, samping kanan dan kiri.
  3. Buat bagian atap.
  4. Satukan menggunakan lem tembak.
  5. Tentukan posisi pemasangan servo.
  6. Buat jalur agar lengan jemuran dapat bergerak.


6. Membuat Jemuran

Jemuran dapat dibuat menggunakan:

  • Stik es krim
  • Kawat
  • Sedotan
  • Tusuk sate
  • Potongan akrilik

Buat sebuah lengan yang terhubung dengan horn servo.

Contoh mekanismenya:

Servo → lengan penggerak → batang jemuran → pakaian

Pastikan mekanisme dapat bergerak bebas dan tidak terlalu berat.

Tips

Gunakan pakaian tiruan yang ringan.

Jangan menggunakan beban pakaian yang terlalu berat karena servo SG90 memiliki torsi terbatas.


7. Memasang Servo

Pasang servo pada bagian atas atau samping rumah.

Gunakan:

  • Lem tembak
  • Double tape kuat
  • Baut kecil
  • Bracket servo

Posisi servo harus kuat agar tidak ikut bergerak ketika servo berputar.

Setelah servo terpasang, pasang horn servo.

Hubungkan horn dengan lengan jemuran.

Prinsip gerakan

Ketika servo bergerak:

0° → jemuran berada di luar

90° → jemuran masuk ke bawah atap

Jika arah gerak terbalik, posisi 0° dan 90° dapat ditukar pada program.


8. Memasang Sensor Hujan

Letakkan plat sensor hujan di tempat yang mudah terkena air.

Contohnya di bagian atas rumah atau tempat terbuka.

Jangan menempatkan sensor di bawah atap karena air hujan tidak dapat mengenai sensor.

Gunakan kabel jumper untuk menghubungkan sensor dengan Arduino.


9. Skema Rangkaian

Sensor HujanArduino Uno
VCC5V
GNDGND
AOA0
ServoArduino Uno
VCC/Merah5V
GND/Cokelat/HitamGND
Signal/Kuning/OranyeD8

Diagram sederhana

       


10. Perhatian pada Catu Daya

Jika menggunakan dua baterai 18650 secara seri, tegangan nominalnya sekitar 7,4 V dan dapat lebih tinggi ketika baterai penuh.

Tegangan tersebut dapat digunakan sebagai sumber input melalui jack DC/Vin Arduino, selama sumber dan polaritasnya sesuai.

Namun, ada hal penting:

Servo dapat membutuhkan arus yang cukup besar ketika mulai bergerak atau ketika mendapat beban.

Untuk projek yang lebih stabil, servo sebaiknya menggunakan sumber 5 V yang mampu menyediakan arus cukup.

Jika menggunakan catu daya 5 V eksternal untuk servo:

Power Supply 5V
       │
       ├──── VCC Servo
       │
       └──── GND Servo
                │
                │
Arduino GND ────┘

GND Arduino dan GND sumber servo harus tersambung bersama.

Jangan memasukkan tegangan baterai 7,4 V langsung ke pin VCC servo.


11. Menyiapkan Arduino IDE

Sebelum memasukkan program, instal Arduino IDE pada komputer.

Kemudian:

  1. Hubungkan Arduino Uno menggunakan kabel USB.
  2. Buka Arduino IDE.
  3. Pilih menu Tools.
  4. Pilih Board.
  5. Pilih Arduino Uno.
  6. Pilih Port yang sesuai dengan Arduino.
  7. Buka menu Serial Monitor jika ingin melihat nilai sensor.

Library Servo biasanya sudah tersedia pada Arduino IDE melalui:

#include <Servo.h>

12. Program Arduino

Gunakan program berikut:

#include <Servo.h>

Servo myServo;

const int rainSensorPin = A0;
const int servoPin = 8;

// Nilai ambang sensor
int threshold = 700;

// Posisi jemuran
const int POSISI_KELUAR = 0;
const int POSISI_MASUK = 90;

void setup() {

  myServo.attach(servoPin);

  // Posisi awal jemuran
  myServo.write(POSISI_KELUAR);

  pinMode(rainSensorPin, INPUT);

  Serial.begin(9600);

  Serial.println("=== JEMURAN OTOMATIS ===");
  Serial.println("Sistem siap...");
}

void loop() {

  int sensorValue = analogRead(rainSensorPin);

  Serial.print("Nilai Sensor Hujan: ");
  Serial.println(sensorValue);

  if (sensorValue < threshold) {

    Serial.println("HUJAN TERDETEKSI");
    Serial.println("Jemuran masuk...");

    for (int pos = myServo.read();
         pos <= POSISI_MASUK;
         pos++) {

      myServo.write(pos);
      delay(15);
    }

  } else {

    Serial.println("KONDISI KERING");
    Serial.println("Jemuran keluar...");

    for (int pos = myServo.read();
         pos >= POSISI_KELUAR;
         pos--) {

      myServo.write(pos);
      delay(15);
    }
  }

  delay(1000);
}

13. Memahami Program

Library Servo

#include <Servo.h>

Digunakan agar Arduino dapat mengendalikan motor servo.

Menentukan pin sensor

const int rainSensorPin = A0;

Sensor hujan dihubungkan ke pin analog A0.

Menentukan pin servo

const int servoPin = 8;

Kabel signal servo dihubungkan ke pin digital 8.

Nilai threshold

int threshold = 700;

Angka 700 digunakan sebagai batas untuk menentukan kondisi hujan atau kering.

Jika:

sensorValue < 700

maka sistem menganggap hujan.

Jika:

sensorValue >= 700

maka sistem menganggap kering.

Nilai threshold tidak selalu sama untuk setiap sensor sehingga perlu dikalibrasi.


14. Cara Upload Program

Setelah program selesai:

  1. Hubungkan Arduino Uno ke komputer.
  2. Buka Arduino IDE.
  3. Pilih Board → Arduino Uno.
  4. Pilih port Arduino.
  5. Klik tombol Verify untuk mengecek program.
  6. Jika tidak ada error, klik Upload.
  7. Tunggu sampai muncul proses upload selesai.
  8. Setelah selesai, Arduino akan menjalankan program.


15. Cara Kalibrasi Sensor Hujan

Kalibrasi merupakan langkah penting agar sistem tidak salah mendeteksi hujan.

Buka Serial Monitor.

Atur baud rate:

9600 baud

Kemudian lihat nilai yang muncul.

Contoh:

Nilai Sensor Hujan: 950
Nilai Sensor Hujan: 930
Nilai Sensor Hujan: 910

Ketika sensor kering, catat nilainya.

Kemudian teteskan air pada sensor.

Contoh:

Nilai Sensor Hujan: 600
Nilai Sensor Hujan: 450
Nilai Sensor Hujan: 200

Jika nilai turun ketika terkena air, berarti sensor bekerja dengan benar.


16. Menentukan Threshold

Misalnya diperoleh:

Kondisi kering = 900

Kondisi terkena air = 400

Maka threshold dapat dibuat sekitar:

int threshold = 700;

Karena:

400 < 700 → hujan
900 > 700 → kering

Jika hasil sensor berbeda, ubah angka:

int threshold = 700;

menjadi nilai yang sesuai dengan hasil pengujian.


17. Pengujian Pertama

Sebelum memasang pakaian, lakukan pengujian tanpa beban.

Pengujian kondisi kering

Pastikan sensor dalam kondisi kering.

Hasil yang diharapkan:

KONDISI KERING
Jemuran keluar...

Servo bergerak menuju posisi 0°.

Pengujian kondisi hujan

Teteskan air ke plat sensor.

Hasil:

HUJAN TERDETEKSI
Jemuran masuk...

Servo bergerak menuju posisi 90°.


18. Pengujian Dengan Pakaian

Jika sistem sudah bekerja tanpa beban:

  1. Pasang pakaian tiruan.
  2. Pastikan pakaian ringan.
  3. Pastikan jemuran dapat bergerak bebas.
  4. Basahi sensor.
  5. Amati gerakan jemuran.
  6. Keringkan sensor.
  7. Amati apakah jemuran kembali keluar.

Jika servo berhenti atau bergetar, kemungkinan beban jemuran terlalu berat atau sumber daya servo kurang kuat.


19. Masalah yang Sering Terjadi

Servo tidak bergerak

Periksa:

  • Kabel signal servo.
  • Pin servo pada program.
  • VCC servo.
  • GND servo.
  • Sumber daya.
  • Beban mekanik jemuran.

Pastikan:

Signal → D8
VCC → 5V
GND → GND

Sensor selalu mendeteksi hujan

Kemungkinan nilai threshold tidak sesuai.

Buka Serial Monitor dan lihat nilai sensor ketika:

  • Sensor kering
  • Sensor basah

Kemudian sesuaikan:

int threshold = 700;

Jemuran bergerak terbalik

Jika saat hujan jemuran justru keluar, ubah posisi:

const int POSISI_KELUAR = 90;
const int POSISI_MASUK = 0;

Servo bergerak tidak stabil

Kemungkinan:

  1. Catu daya kurang kuat.
  2. Kabel terlalu panjang.
  3. Beban jemuran terlalu berat.
  4. Mekanisme jemuran macet.
  5. GND belum tersambung dengan baik.


20. Pengembangan Projek

Projek ini dapat dikembangkan menjadi sistem yang lebih canggih.

Beberapa fitur yang dapat ditambahkan:

1. Sensor cahaya

Tambahkan LDR untuk mengetahui kondisi siang atau malam.

Logika dapat dibuat:

Ada hujan → jemuran masuk

Tidak hujan + siang → jemuran keluar

Malam → jemuran masuk

2. Sensor kelembapan

Sensor kelembapan dapat digunakan untuk mengetahui apakah pakaian masih basah.

3. LCD

Tambahkan LCD untuk menampilkan:

JEMURAN OTOMATIS

Status:
KERING

Jemuran:
KELUAR

4. Buzzer

Buzzer dapat memberikan peringatan ketika hujan terdeteksi.

5. LED indikator

Contoh:

LED Hijau → Kering
LED Merah → Hujan

6. IoT

Arduino dapat dikembangkan menggunakan ESP32 sehingga status jemuran dapat dipantau melalui smartphone.


21. Diagram Alur Sistem


22. Prinsip Fisika yang Dapat Dipelajari

Projek ini juga dapat digunakan sebagai media pembelajaran fisika dan teknologi.

Konsep yang dapat dipelajari antara lain:

  • Tegangan listrik
  • Arus listrik
  • Hambatan listrik
  • Rangkaian listrik
  • Sensor
  • Sinyal analog
  • Motor listrik
  • Torsi
  • Sistem kontrol
  • Energi listrik
  • Konversi energi
  • Teknologi otomatisasi

Motor servo mengubah energi listrik menjadi energi mekanik berupa gerakan putar.


23. Kesimpulan

Jemuran otomatis berbasis Arduino merupakan projek sederhana yang menggabungkan sensor, mikrokontroler, dan aktuator.

Sensor hujan digunakan sebagai input untuk mendeteksi air. Arduino memproses informasi tersebut dan memberikan perintah kepada servo. Servo kemudian menggerakkan mekanisme jemuran sehingga pakaian dapat dipindahkan ke tempat terlindung ketika hujan.

Projek ini sangat cocok digunakan sebagai media pembelajaran Arduino, elektronika, STEM, IoT, sistem kontrol, dan pemrograman dasar.

Dengan menambahkan sensor cahaya, LCD, buzzer, sensor kelembapan, atau koneksi internet, projek ini dapat dikembangkan menjadi sistem jemuran otomatis yang lebih lengkap dan pintar.

⚡ Cara Rakit

Sumber daya
  1. 2 baterai 18650 (3,8V x 2) = 7,6V.
  2. Sambungkan ke jack Arduino UNO (bisa langsung ke pin Vin & GND).
  3. Arduino otomatis menurunkan ke 5V untuk sensor dan servo.
Sensor hujan (Raindrop Module)
  1. VCC → 5V Arduino
  2. GND → GND Arduino
  3. AO (Analog OUT) → AO Arduino
Servo
  1. VCC → 5V Arduino
  2. GND → GND Arduino
  3. Signal → pin 8 Arduino
Miniatur Jemuran
  1. Pasang servo di atas rumah tiruan, buat lengan jemuran dari stik es krim/kawat.
  2. Kaitkan pakaian tiruan di lengan jemuran.
  3. Saat servo berputar → jemuran masuk/keluar.



3 komentar: