ESP32 - Regensensor - Relay

We gaan leren hoe u de ESP32 programmeert om het relay te activeren wanneer regen wordt gedetecteerd.

Door het relay te koppelen aan een motor of actuator, kunnen we de regensensor gebruiken voor naadloze bediening van de motor of actuator.

Hardware Benodigd

1×ESP32 ESP-WROOM-32 Ontwikkelingsmodule
1×USB-kabel Type-C
1×Regensensor
1×Relais
1×Jumperdraden
1×(optioneel) Solenoïde Slot
1×(optioneel) 12V Voedingsadapter
1×(optioneel) DC Voedingsconnector
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor ESP32
1×(Aanbevolen) Breakout Expansion Board for ESP32
1×(Aanbevolen) Stromsplitter voor ESP32

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over Relay en Regensensor

Bent u niet vertrouwd met relay en regensensor, inclusief hun pinouts, functionaliteit en programmering? Verken uitgebreide tutorials over deze onderwerpen via de onderstaande links:

Aansluitschema

ESP32 Regensensor Relay Aansluitschema

This image is created using Fritzing. Click to enlarge image

ESP32 Code

/* * Deze ESP32 code is ontwikkeld door newbiely.nl * Deze ESP32 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/esp32/esp32-rain-sensor-relay */ #define RAIN_SENSOR_PIN 25 // The ESP32 pin GPIO25 connected to the sound sensor #define RELAY_PIN 26 // The ESP32 pin GPIO26 connected to the relay int rain_state = LOW; // current state of rain sensor's pin int prev_rain_state = LOW; // previous state of rain sensor's pin void setup() { Serial.begin(9600); // initialize serial pinMode(RAIN_SENSOR_PIN, INPUT); // set ESP32 pin to input mode pinMode(RELAY_PIN, OUTPUT); // set ESP32 pin to output mode } void loop() { prev_rain_state = rain_state; // store old state rain_state = digitalRead(RAIN_SENSOR_PIN); // read new state if (prev_rain_state == LOW && rain_state == HIGH) { // pin state change: LOW -> HIGH Serial.println("Rain detected!"); digitalWrite(RELAY_PIN, HIGH); // turn on } else if (prev_rain_state == HIGH && rain_state == LOW) { // pin state change: HIGH -> LOW Serial.println("Rain stopped!"); digitalWrite(RELAY_PIN, LOW); // turn off } }

Snelle Stappen

  • Als u voor het eerst met ESP32 werkt, bekijk dan hoe u de omgeving instelt voor ESP32 in Arduino IDE.
  • Maak de bedrading zoals in bovenstaande afbeelding.
  • Verbind de ESP32 met uw PC via een micro USB-kabel.
  • Open Arduino IDE op uw PC.
  • Selecteer het juiste ESP32-board (bijv. ESP32 Dev Module) en de juiste COM-poort.
  • Verbind ESP32 met PC via USB-kabel
  • Open Arduino IDE, selecteer het juiste board en poort
  • Kopieer bovenstaande code en open deze in Arduino IDE
  • Klik op de Upload-knop in Arduino IDE om de code naar ESP32 te uploaden
Arduino IDE Upload Code
  • Beweeg uw hand voor de sensor
  • Zie de verandering in de staat van het relay

Code Uitleg

Lees de regel-voor-regel uitleg in de commentaarregels van de broncode!

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en maakt het makkelijker om de stappen te volgen.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!