Pendeteksi Hujan Menggunakan Arduino Uno

10:07 AM

 Berikut adalah contoh program untuk mengontrol sensor hujan menggunakan Arduino Uno. Sensor hujan digunakan untuk mendeteksi adanya air atau tetesan hujan. Ketika sensor mendeteksi hujan, kita dapat mengaktifkan LED atau buzzer sebagai indikator.

Alat dan bahan:

  • Arduino Uno
  • Sensor hujan
  • LED (opsional untuk indikasi)
  • Buzzer (opsional)
  • Resistor 220Ω (untuk LED)
  • Kabel jumper

Cara Kerja Sensor Hujan:

  • Sensor hujan terdiri dari dua bagian, yaitu modul sensor hujan dan modul pemrosesan.
  • Modul sensor mendeteksi air di permukaannya dan mengirimkan sinyal analog.
  • Modul pemrosesan mengubah sinyal analog menjadi sinyal digital yang dapat dibaca oleh Arduino.

Skema Rangkaian:

rangkaian deteksi hujan

  • Hubungkan pin VCC sensor hujan ke pin 5V pada Arduino.
  • Hubungkan pin GND sensor hujan ke GND Arduino.
  • Hubungkan pin A0 (output analog) sensor hujan ke pin analog A0 pada Arduino.
  • hubungkan LED ke pin digital Arduino (misalnya pin 9 & 10) dengan resistor 220Ω.
  • Jika menggunakan buzzer, hubungkan ke pin digital (misalnya pin 12).
Program

const int rainSensorPin = A0;   // Pin analog untuk sensor hujan
const int ledPin1 = 9;          // Pin untuk LED Hijau
const int ledPin2= 10;          // Pin untuk LED Merah
const int buzzerPin = 12;       // Pin untuk buzzer
int sensorValue = 0;            // Variabel untuk menyimpan nilai sensor

void setup() {
  // Setel pin LED dan buzzer sebagai output
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  
  // Memulai komunikasi serial untuk debugging
  Serial.begin(9600);
}

void loop() {
  // Membaca nilai dari sensor hujan
  sensorValue = analogRead(rainSensorPin);

  // Cetak nilai sensor ke serial monitor
  Serial.print("Nilai Sensor Hujan: ");
  Serial.println(sensorValue);

  // Jika nilai sensor melebihi ambang batas (misalnya lebih dari 500), artinya hujan
  if (sensorValue > 500) {
    digitalWrite(ledPin2, HIGH);   // Nyalakan LED Merah
    digitalWrite(ledPin1, LOW);   // Matikan LED Hijau
    digitalWrite(buzzerPin, HIGH); // Aktifkan buzzer
  } else {
    digitalWrite(ledPin2, LOW);    // Matikan LED Merah
    digitalWrite(ledPin1, HIGH);   // Hidupkan LED Hijau
    digitalWrite(buzzerPin, LOW); // Matikan buzzer
  }

  delay(1000); // Tunggu 1 detik sebelum membaca sensor lagi
}
 Catatan
  • Kalian dapat menyesuaikan nilai ambang batas sesuai dengan kebutuhan dan kondisi lingkungan tempat sensor ditempatkan.
  • Jika menggunakan output digital dari sensor hujan, kalian dapat langsung membaca sinyal HIGH atau LOW pada pin digital Arduino tanpa perlu membaca nilai analog.

Next Article
« Prev Post
Previous Article
Next Post »
Disqus
Tambahkan komentar Anda

No comments