ESP32 Sensore de Água

Sensor de água — : capacitância por contato (ESP32 touch)

Princípio: a presença de água atrás da parede altera a constante dielétrica local -> altera capacitância detectada pelo pino touch do ESP32.

Vantagens: simples, sem componentes extra; tolerante a parede fina/úmida próxima.
Limitações: paredes muito espessas/armadas reduzem sensibilidade; sujeira e salinidade alteram leituras.

Montagem:

  • Use um pedaço de placa de cobre (~3×3 cm) como eletrodo/acoplador, ligado diretamente ao pino touch do ESP32 (pinos: T0..T9 — ex.: GPIO 4, 0, 2, 15, 13, 12, 14, 27, 33, 32 dependendo do módulo).

  • Isolar a parte traseira do eletrodo (para que só a face toque a parede).

  • Se quiser duas áreas, use duas placas separadas e faça média/diferença.

Código (ESP32 — leitura touch):

// Sensor de umidade por capacitancia - ESP32
const int touchPin = T4;
// ex: T4 corresponde a GPIO 13 em muitos módulos
int baseline = 0;
void setup()
{
Serial.begin(115200);
// calibrar baseline
delay(200);
long sum = 0;
for (int i=0;i<20;i++)
{
sum += touchRead(touchPin);
delay(20);
}
baseline = sum / 20;
Serial.printf("Baseline touch: %d\n", baseline);
}
void loop()
{
int val = touchRead(touchPin); // menor valor = mais capacitância (normalmente)
Serial.printf("touch: %d (baseline %d)\n", val, baseline);
// ajuste o limiar empiricamente: por exemplo, se cair 15% do baseline -> presença de água
if (val < baseline * 0.85)
{
Serial.println("💧 Água detectada atrás da parede!");
}
delay(300);
}

Calibração prática:

  1. Com parede seca: encoste o sensor e registre 20 leituras → media = baseline.

  2. Com parede molhada (ou umidade simulada por spray na outra face): encoste e veja queda percentual. Ajuste limiar (p.ex. 10–30% abaixo do baseline).

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *