5.4 Regenmeldesystem

5.4.1 Dampfsensor

cou41

Der Dampfsensor erkennt das Vorhandensein von Wasser und wird daher üblicherweise zur Regenmeldung eingesetzt. Wenn der Regen auf die leitfähigen Pads des Sensors trifft, sendet dieser ein Signal an das Arduino-Board.

couy41

Parameter:

  • Spannung: 3~5V

  • Strom: 1.5mA

  • Leistung: 7.5mW

Öffnen Sie den Code 5.4.1Alarm-System mit Arduino IDE.

#define SteamPin 35   //Define the steam sensor pin to 35

void setup() {
  Serial.begin(9600);
  pinMode(SteamPin,INPUT);
}

void loop() {
  //Read the value of steam sensor
  int ReadValue = analogRead(SteamPin);
  Serial.print("Steam Value: ");
  Serial.println(ReadValue);
  delay(500);
}

Wählen Sie das Board ESP32 Dev Module und den COM-Port aus und laden Sie den Code hoch.

5458448

Testergebnis:

Berühren Sie den Erfassungsbereich mit Ihrem Finger. Je größer der berührte Bereich ist, desto größer ist der Wert.

Sie können den seriellen Monitor öffnen, um den aktuell erfassten Wert (Bereich: 0~4095) zu beobachten.

image-20250417131110395

5.4.2 Regenwasser-Erkennungssystem

Öffnen Sie den Code 5.4.2Rainwater-Detection-System mit Arduino IDE

#define SteamPin 35   //Define pins
#define BuzzerPin 16

void setup() {
  Serial.begin(9600);
  pinMode(SteamPin,INPUT);
  pinMode(BuzzerPin,OUTPUT);
}

void loop() {
  //Read the value of steam sensor
  int ReadValue = analogRead(SteamPin);
  Serial.print("Steam Value: ");
  Serial.println(ReadValue);
  //Determine whether the detected value is within 800~2000
  if(ReadValue >= 800 && 2000 > ReadValue){
    //Execute for 3 times
    for (int i = 0; i < 3; i++) {
      tone(BuzzerPin,200);
      delay(100);
      noTone(BuzzerPin);
      delay(100);
    }
  }
  //Determine whether the detected value is within 2000~4000
  else if (ReadValue >= 2000 && 4000 >= ReadValue) {
    for (int i = 0; i < 3; i++) {
      tone(BuzzerPin,400);
      delay(100);
      noTone(BuzzerPin);
      delay(100);
    }
  }
  //Determine whether the detected value is greater than 4000
  else if (ReadValue > 4000) {
    for (int i = 0; i < 3; i++) {
      tone(BuzzerPin,600);
      delay(100);
      noTone(BuzzerPin);
      delay(100);
    }
  }
  noTone(BuzzerPin);
  delay(500);
}

Wählen Sie das Board ESP32 Dev Module und den COM-Port aus und laden Sie den Code hoch.

5458448

Testergebnis:

Je größer der erfasste Wert des Dampfsensors ist, desto lauter ist der vom Summer abgegebene Ton.

flo4