Un sensor de humedad del suelo permite a una Raspberry Pi monitorizar la humedad del suelo, por lo que es ideal para jardinería inteligente, sistemas de riego y monitorización ambiental. Esta guía te mostrará cómo configurar y usar un sensor de humedad del suelo con una Raspberry Pi.
Qué necesitarás
- Raspberry Pi (cualquier modelo con soporte GPIO, p. ej., Pi 3, Pi 4)
- Sensor de humedad del suelo (salida analógica o digital)
- Módulo ADC (p. ej., ADS1115) para sensores analógicos (si es necesario)
- Protoboard y cables de puente
- Python instalado en la Raspberry Pi
Paso 1: Entender el Sensor de humedad del suelo
Hay dos tipos de sensores de humedad del suelo:
- Sensores con salida digital (p. ej., sensores capacitivos de humedad del suelo) – Proporcionan una señal HIGH/LOW cuando la humedad supera un umbral.
- Sensores con salida analógica – Proporcionan un voltaje variable según la humedad del suelo, requiriendo un ADC (Convertidor Analógico a Digital) como el ADS1115.
Paso 2: Conectar el sensor a la Raspberry Pi
Para un sensor de salida digital Sensor de humedad del suelo
| Pin del sensor | Pin de la Raspberry Pi |
|---|---|
| VCC | 3.3V o 5V (Pin 1 o 2) |
| GND | GND (Pin 6) |
| D0 (Digital) | Cualquier GPIO (p. ej., GPIO17, Pin 11) |
Para un sensor de salida analógica (con ADS1115)
| Pin del sensor | Pin del ADS1115 | Raspberry Pi Pin |
|---|---|---|
| Pin de la Raspberry Pi | VCC | VCC |
| 3.3V o 5V (Pin 1 o 2) | GND | GND |
| GND (Pin 6) | A0 (Analógico) | A0I2C (vía ) |
ADS1115
Paso 3: Habilitar I2C en la Raspberry PiPuesto que algunos sensores usan I2C (módulo ADS1115)
- , habilítalo:
Abre la herramienta de configuración de Raspberry Pi: - sudo raspi-config Ve a Interface Options > I2C
- y actívalo.
Reinicia la Raspberry Pi:
sudo reboot
- Paso 4: Instalar las librerías necesarias
Actualiza tu Raspberry Pi: - sudo apt update && sudo apt upgrade -y
Instala las librerías GPIO e I2C:
sudo apt install -y python3-rpi.gpio python3-smbus python3-pip pip3 install adafruit-circuitpython-ads1x15
Paso 5: Código Python para leer niveles de humedad
Para un sensor digital
import RPi.GPIO as GPIO import time SENSOR_PIN = 17 # GPIO Pin connected to D0 GPIO.setmode(GPIO.BCM) GPIO.setup(SENSOR_PIN, GPIO.IN) try: while True: if GPIO.input(SENSOR_PIN): print("Soil is Dry!") else: print("Soil is Moist!") time.sleep(2) except KeyboardInterrupt: print("Exiting...") finally: GPIO.cleanup() Para un sensor analógico (usando )
ADS1115import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
# Initialize I2C and ADS1115 ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115(i2c)
moisture_sensor = AnalogIn(ads, ADS.P0) # A0 on ADS1115
try: while True: moisture_level = moisture_sensor.value print(f"Soil Moisture Level: {moisture_level}") time.sleep(2) except KeyboardInterrupt: print("Exiting...") Paso 6: Aplicaciones de los Sensores de humedad del suelo
- Riego inteligente – Regar automáticamente las plantas cuando el suelo esté seco.
- Estaciones meteorológicas – Monitorizar las condiciones del suelo de forma remota.
- Automatización de invernaderos – Optimizar el crecimiento de las plantas según los niveles de humedad.
- Proyectos IoT – Enviar datos a plataformas en la nube para monitorización remota.
Solución de problemas
-
El sensor no detecta humedad
- Comprueba el cableado y asegúrate del voltaje correcto.
- Para sensores analógicos, asegúrate de que el módulo ADS1115 se detecta correctamente usando:
sudo i2cdetect -y 1
-
Lecturas inestables
- Evita colocar el sensor en entornos excesivamente húmedos para prevenir corrosión.
- Para sensores capacitivos, asegúrate de tener superficies de sonda limpias para lecturas precisas.
Conclusión
Los sensores de humedad del suelo permiten a los proyectos con Raspberry Pi monitorizar y automatizar el riego de plantas, por lo que son ideales para jardinería inteligente y aplicaciones IoT. Siguiendo esta guía, puedes leer niveles de humedad del suelo y activar acciones automatizadas basadas en datos en tiempo real! 🌱🚀
