Arduino UNO R4 - Sensor de Água
Este tutorial vai nos ensinar a usar um sensor de água com o Arduino UNO R4. Um sensor de água pode descobrir se há um vazamento de água, medir a chuva, verificar se um tanque está transbordando ou checar o nível de água. Em detalhes, vamos aprender:
- Como conectar o sensor de água ao Arduino UNO R4
- Como programar o Arduino UNO R4 para ler o valor do sensor de água
- Como detectar vazamento de água, chuva e transbordamento de tanque usando o Arduino UNO R4
- Como medir o nível de água usando o Arduino UNO R4
- Como calibrar o sensor de água usando o Arduino UNO R4

Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables STEM V4B IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Sensor de Nível de Água
Pinagem do Sensor de Nível de Água
O sensor de nível de água tem três pinos:
- Pino S (Signal): é uma saída analógica. Conecte-o a uma entrada analógica do seu Arduino UNO R4.
- Pino + (VCC): este pino alimenta o sensor. Use de 3,3V a 5V para alimentá-lo.
- Pino - (GND): é a conexão de terra.

※ Nota:
A saída do pino de sinal do sensor muda conforme a tensão aplicada ao pino VCC.
Como Funciona o Sensor de Nível de Água
Quando o sensor está em mais água, a tensão de saída no pino de sinal aumenta.
Vamos olhar com mais atenção.
O sensor tem dez linhas de cobre visíveis. Ele tem cinco linhas de alimentação e cinco linhas de sensor. Essas linhas ficam lado a lado, alternando uma linha de sensor entre cada duas linhas de alimentação. Normalmente, essas linhas não se tocam, mas se o sensor for colocado na água, a água conecta as linhas.
As trilhas funcionam como um resistor variável (parecido com um potenciômetro) que muda a sua resistência conforme o nível de água.
- A mudança na resistência mostra a distância entre o topo do sensor e a superfície da água.
- A resistência diminui conforme o nível de água sobe.
- Quando o sensor está mais submerso, ele conduz melhor a eletricidade, e a resistência fica menor.
- Quando o sensor está menos submerso, ele conduz pior a eletricidade, e a resistência fica maior.
- O sensor fornece uma tensão de saída com base na resistência.
Podemos descobrir o nível de água medindo a tensão.
Diagrama de Ligação
Para alimentar o sensor, conecte o pino VCC do sensor ao pino 5V do Arduino UNO R4 e o pino GND ao pino GND do Arduino.
No entanto, não é recomendável alimentar o sensor o tempo todo em um ambiente úmido, pois isso pode fazer o sensor corroer rapidamente, reduzindo a sua vida útil. Para evitar isso, sugerimos alimentar o sensor somente quando você precisar ler os seus dados. Você pode fazer isso conectando o pino VCC do sensor a um pino digital do Arduino UNO R4. Coloque o pino do Arduino em HIGH para ler o sensor e depois em LOW quando terminar.

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Uno R4 e outros componentes.
Código Arduino UNO R4 - Lendo o Valor do Sensor de Água
Passos Rápidos
Siga estas instruções passo a passo:
- Se esta é a sua primeira vez usando o Arduino Uno R4 WiFi/Minima, consulte o tutorial sobre como configurar o ambiente para o Arduino Uno R4 WiFi/Minima na Arduino IDE.
- Conecte o sensor de água ao Arduino Uno R4 conforme o diagrama fornecido.
- Conecte a placa Arduino Uno R4 ao seu computador usando um cabo USB.
- Abra a Arduino IDE no seu computador.
- Selecione a placa Arduino Uno R4 correta (por exemplo, Arduino Uno R4 WiFi) e a porta COM.
- Copie o código fornecido e abra-o na Arduino IDE.
- Pressione o botão Upload na Arduino IDE para enviar o código ao Arduino UNO R4.
- Abaixe o sensor aos poucos na água (use um copo de água).
- Confira o resultado no Serial Monitor. Ele mostra o valor 0 quando o sensor não está em contato com nada.
※ Nota:
O sensor não deve ficar totalmente submerso na água; somente as partes expostas da placa de circuito podem tocar a água. Instale-o com cuidado.
Como Detectar Vazamento de Água
Para descobrir se há vazamento de água, chuva ou transbordamento de tanque, basta comparar a leitura com um limite definido. Definimos esse limite na etapa de calibração deste tutorial.
Código Arduino UNO R4 - Detectando Vazamento de Água
Como Medir o Nível de Água
Para dividir o nível máximo de água em diferentes estágios e verificar o estágio atual, use a técnica do código a seguir. Lembre-se de que o nível máximo de água corresponde à altura do sensor. Este código divide a altura máxima em 4 estágios.
※ Nota:
- SENSOR_MIN e SENSOR_MAX são definidos durante o processo de calibração.
- O método de mapeamento acima pode não ser preciso, mas funciona bem para muitos usos. Para melhorar a precisão, meça os valores de limite de cada nível, como explicado na seção de calibração.
Calibração do Sensor de Nível de Água
A saída do sensor é afetada pelo nível de água e pela condutividade da água. A água pura não conduz eletricidade. No entanto, a água com minerais e impurezas conduz eletricidade. Quanto maior a condutividade da água, mais sensível o sensor se torna. Além disso, o valor de saída muda conforme as diferentes tensões aplicadas ao pino VCC do sensor.
Para obter leituras precisas do sensor de água, sugerimos calibrá-lo para o tipo específico de água que você vai monitorar.
Antes de definir o limite para uma ação, primeiro meça o valor real do sensor fazendo um teste.
Como fazer o teste:
- Use o desenho fornecido para ler o valor do sensor.
- Coloque o sensor na água até o nível desejado.
- Anote o valor mostrado no Serial Monitor.
- Defina esse valor como o limite para ativar uma ação.
Este teste pode precisar de algumas tentativas para dar certo.
O teste também pode ajudar a descobrir:
- O valor mínimo do sensor quando ele está fora da água.
- O valor máximo do sensor quando ele está completamente na água.
- Um valor de limite para detectar vazamentos de água.
- Valores de limite para cada nível da sua escala.
Vídeo
O vídeo de demonstração abaixo usa o código abaixo: