Arduino - Sensor de Umidade do Solo
Neste tutorial, vamos aprender a usar o sensor de umidade com o Arduino. Em detalhes, vamos aprender:
- Sensor de Umidade Resistivo vs Sensor de Umidade Capacitivo
- Como ler o valor de um sensor de umidade capacitivo usando Arduino
- Como calibrar um sensor de umidade capacitivo
- Como determinar se o solo está úmido ou seco
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) |
Buy Note: Many soil moisture sensors available in the market are unreliable, regardless of their version. We strongly recommend buying the sensor with TLC555I Chip from the DIYables brand using the link provided above. We tested it, and it worked reliably.
Sobre o Sensor de Umidade do Solo

Existem dois tipos de sensores de umidade:
- Sensor de umidade resistivo
- Sensor de umidade capacitivo.
Os dois sensores fornecem informações sobre a umidade do solo. Porém, os seus princípios de funcionamento são diferentes. Recomendamos fortemente usar o sensor de umidade capacitivo, pelo seguinte motivo:
- O sensor de umidade do solo resistivo sofre corrosão com o tempo. Isso acontece porque a corrente elétrica flui entre as suas pontas de prova, o que causa corrosão eletroquímica.
- O sensor de umidade do solo capacitivo NÃO sofre corrosão com o tempo. Isso acontece porque os seus eletrodos não ficam expostos, então ele é relativamente livre de corrosão.
A imagem abaixo mostra um sensor de umidade do solo resistivo que sofreu corrosão com o tempo.

O restante deste tutorial vai usar o sensor de umidade do solo capacitivo.
Pinagem do Sensor de Umidade do Solo Capacitivo
Um sensor de umidade do solo capacitivo tem três pinos:
- Pino GND: precisa ser conectado ao GND (0V)
- Pino VCC: precisa ser conectado ao VCC (5V ou 3.3v)
- Pino AOUT: pino de saída de sinal analógico, fornece uma tensão inversamente proporcional ao nível de umidade do solo. Conecte este pino a um pino de entrada analógica do Arduino.

Como Funciona
Quanto mais água houver no solo, menor será a tensão no pino AOUT
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código Arduino
Passos Rápidos
- Copie o código acima e abra-o na Arduino IDE
- Clique no botão Upload na Arduino IDE para carregar o código no Arduino
- Enterre o sensor no solo e depois despeje água no solo. Ou mergulhe-o lentamente em um copo de água com sal.
- Confira o resultado no Serial Monitor. Ele fica parecido com o mostrado abaixo:
※ Nota:
- NÃO use água pura para o teste, pois ela não conduz eletricidade, o que significa que não vai afetar as leituras do sensor.
- As leituras do sensor normalmente não caem até zero. É normal que elas fiquem na faixa de 500 a 600, mas isso pode mudar com base em fatores como a profundidade em que o sensor é colocado, o tipo de solo ou de água e a tensão da fonte de alimentação.
- Nunca enterre a parte do circuito (que fica na parte de cima do sensor) no solo ou na água, pois isso pode danificar o sensor.
Calibração do Sensor de Umidade do Solo Capacitivo
O valor medido pelo sensor de umidade é relativo. Ele depende da composição do solo e da água. Na prática, precisamos fazer uma calibração para determinar um limite (threshold) que é a fronteira entre úmido e seco.
Como fazer a calibração:
- Execute o código acima no Arduino
- Coloque o sensor de umidade no solo
- Coloque o sensor de umidade no solo
- Despeje água no solo lentamente
- Observe o Serial Monitor.
- Anote o valor no momento em que você sentir que o solo muda de seco para úmido. Este valor é chamado de THRESHOLD.
Determinar se o solo está úmido ou seco
Depois da calibração, atualize no código abaixo o valor de THRESHOLD que você anotou. O código abaixo determina se o solo está úmido ou seco
O resultado no Serial Monitor.