ESP32 - Bomba de sensor de humedad del suelo
En este tutorial, vamos a aprender cómo usar el ESP32 para controlar la bomba según el valor leído desde el sensor de humedad del suelo capacitivo.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 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.
Acerca del sensor de humedad del suelo y de la bomba
Si no estás familiarizado con la bomba y el sensor de humedad del suelo (disposición de pines, cómo funciona, cómo programarlo...), aprende sobre ellos en los siguientes tutoriales:
- ESP32 - Soil Moisture Sensor tutorial
- ESP32 - Controls Pump tutorial
Cómo funciona
El ESP32 lee periódicamente el valor del sensor de humedad del suelo capacitivo. En función del valor de humedad del suelo, tomará las siguientes acciones:
- Si el valor de humedad del suelo está por debajo de un umbral, el ESP32 activa automáticamente un relé para encender una bomba.
- De lo contrario, el ESP32 desactiva automáticamente un relé para apagar una bomba.
Diagrama de Cableado

This image is created using Fritzing. Click to enlarge image
Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.
Código ESP32
Pasos R\u00e1pidos
- Si es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en el IDE de Arduino.
- Realiza la calibración para determinar el umbral húmedo-seco, consulta ESP32 - Calibra el sensor de humedad del suelo.
- Actualiza el valor calibrado a THRESHOLD en el código.
- Abre el Monitor Serial en el IDE de Arduino.
- Sube el código al ESP32.
- Revisa el resultado en el Monitor Serial.
Explicación del código
Lee la explicación línea por línea en los comentarios del código fuente.
※ Nota:
Este tutorial usa la función analogRead() para leer valores de un ADC (Convertidor analógico-digital) conectado a un sensor de humedad del suelo. El ADC del ESP32 es bueno para proyectos que NO necesitan alta precisión. Sin embargo, para proyectos que requieren mediciones precisas, tenga en cuenta:
- El ADC del ESP32 no es perfectamente preciso y podría necesitar calibración para obtener resultados correctos. Cada placa ESP32 puede ser un poco diferente, por lo que necesitas calibrar el ADC para cada placa individual.
- La calibración puede ser difícil, especialmente para principiantes, y podría no dar siempre exactamente los resultados que deseas.
Para proyectos que requieren alta precisión, considera usar un ADC externo (p. ej. ADS1115) con el ESP32 o usar un Arduino, que tiene un ADC más confiable. Si aún quieres calibrar el ADC del ESP32, consulta ESP32 ADC Calibration Driver
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.