Arduino - Regensensor - Relais
We gaan leren hoe u:
- Bij detectie van regen het relais inschakelt
- Bij geen regen het relais uitschakelt
Door het relais te verbinden met een lamp, led-strip, motor of actuator, kunt u de regensensor gebruiken om een lamp, led-strip, motor of actuator te besturen.
Hardware Benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables STEM V3 Starterskit (Arduino inbegrepen) | |
| 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 Relais en Regensensor
Als u nog niet bekend bent met relais en regensensor (pinout, werking, programmeren ...), leer er meer over in de volgende tutorials:
Bedradingsschema

This image is created using Fritzing. Click to enlarge image
Arduino Code
/*
* Deze Arduino code is ontwikkeld door newbiely.nl
* Deze Arduino code wordt zonder enige beperking aan het publiek beschikbaar gesteld.
* Voor volledige instructies en schema's, bezoek:
* https://newbiely.nl/tutorials/arduino/arduino-rain-sensor-relay
*/
#define RAIN_SENSOR_PIN A0 // Arduino pin connected to the OUTPUT pin of rain sensor
#define RELAY_PIN A2 // Arduino pin connected to the IN pin of 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 arduino pin to input mode
pinMode(RELAY_PIN, OUTPUT); // set arduino 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
- Verbind de Arduino met de pc via een USB-kabel
- Open de Arduino IDE, selecteer het juiste board en poort
- Kopieer de bovenstaande code en open deze met de Arduino IDE
- Klik op de Upload knop in de Arduino IDE om de code naar de Arduino te uploaden

- Beweeg uw hand voor de sensor
- Bekijk de verandering in de status van het relais
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.