Arduino - Sensor de Água com Relé
Neste tutorial, vamos aprender a usar um Arduino para ativar um relé quando ele detectar água. Depois, você pode conectar o relé a uma bomba, a uma sirene ou a um buzzer para fazer um alarme de água.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.
Sobre o Sensor de Água e o Relé
Se você ainda não conhece o sensor de água e o relé (pinagem, como funcionam, como programar...), aprenda sobre eles nos tutoriais a seguir:
- Tutorial Arduino - Sensor de Água
- Tutorial Arduino - Relé
Como Funciona
O Arduino lê periodicamente o valor do sensor de água. Se o valor ultrapassar um limite predefinido, o Arduino ativa o relé; caso contrário, ele desativa o relé.
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código Arduino
/*
* Este código de Arduino foi desenvolvido por pt.newbiely.com
* Este código de Arduino é disponibilizado ao público sem nenhuma restrição.
* Para tutoriais completos e diagramas de ligação, visite:
* https://pt.newbiely.com/tutorials/arduino/arduino-water-sensor-relay
*/
#define RELAY_PIN A0 // The Arduino pin that connects to the relay
#define POWER_PIN 7 // The Arduino pin that provides the power to the water sensor
#define SIGNAL_PIN A5 // The Arduino pin that reads the value from the water sensor
#define THRESHOLD 500 // The threshold for water detectiion
void setup() {
Serial.begin(9600);
pinMode(RELAY_PIN, OUTPUT); // configure D2 pin as an OUTPUT
pinMode(POWER_PIN, OUTPUT); // configure D7 pin as an OUTPUT
digitalWrite(POWER_PIN, LOW); // turn the water sensor OFF
digitalWrite(RELAY_PIN, LOW); // dectivates relay
}
void loop() {
digitalWrite(POWER_PIN, HIGH); // turn the water sensor's power ON
delay(10); // wait 10 milliseconds
int value = analogRead(SIGNAL_PIN); // read the analog value from sensor
digitalWrite(POWER_PIN, LOW); // turn the water sensor's power OFF
if (value > THRESHOLD) {
Serial.print("The water is detected");
digitalWrite(RELAY_PIN, HIGH); // activates relay
} else {
digitalWrite(RELAY_PIN, LOW); // dectivates relay
}
delay(1000);
}
Passos Rápidos
- Conecte o Arduino ao PC com um cabo USB
- Abra o Arduino IDE e selecione a placa e a porta corretas
- Copie o código acima e abra no Arduino IDE
- Atualize o valor de THRESHOLD no código para um valor adequado à sua aplicação
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino

- Coloque o sensor de água dentro da água
- Veja o estado do relé
Explicação do Código
Leia a explicação linha por linha nos comentários do código-fonte!