Grove - Sensor de Humedad

Este Sensor de Humedad puede ser usado para detectar la humedad del suelo o determinar si hay agua alrededor del sensor, permitiendo que la planta en tu jardín pueda pedir ayuda humana cuando tenga sed. Este sensor es muy fácil de usar, simplemente puedes insertarlo en el suelo y leer los datos. Con este sensor, puedes hacer un pequeño proyecto que permita a la planta enviarte un mensaje como "Tengo sed ahora, por favor dame un poco de agua."
Versión
Versión del Producto | Cambios | Fecha de Lanzamiento |
---|---|---|
Grove - Sensor de Humedad V1.4 | Inicial | Junio 2014 |
Actualizable a Sensores Industriales
Con el controlador S2110 y el registrador de datos S2100 de SenseCAP, puedes convertir fácilmente el Grove en un sensor LoRaWAN®. Seeed no solo te ayuda con el prototipado sino que también te ofrece la posibilidad de expandir tu proyecto con la serie SenseCAP de sensores industriales robustos.
Los sensores industriales de la serie SenseCAP S210x proporcionan una experiencia lista para usar para el sensado ambiental. Por favor consulta el Sensor Inalámbrico de Humedad del Suelo, Temperatura y EC S2105 con mayor rendimiento y robustez para el monitoreo de condiciones del suelo. La serie incluye sensores para humedad del suelo, temperatura y humedad del aire, intensidad de luz, CO2, EC, y una estación meteorológica 8-en-1. Prueba el último SenseCAP S210x para tu próximo proyecto industrial exitoso.
Sensor Industrial SenseCAP |
S2105 Humedad del Suelo & Temp & EC |
Características
- Sensor de humedad del suelo basado en medición de resistividad del suelo
- Fácil de usar
- Módulo grove de 2.0 cm X 6.0 cm
Más detalles sobre los módulos Grove consulte Sistema Grove
Especificaciones
Elemento | Condición | Mín | Típico | Máx | Unidad |
---|---|---|---|---|---|
Voltaje | - | 3.3 | - | 5 | V |
Corriente | - | 0 | - | 35 | mA |
Valor de Salida | Sensor en suelo seco, Sensor en suelo húmedo,Sensor en agua | 0, 300, 700, | - | 300, 700, 950 | - |
Plataformas Soportadas
Arduino | Raspberry Pi | |||
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
Las plataformas mencionadas anteriormente como compatibles son una indicación de la compatibilidad de software o teórica del módulo. Solo proporcionamos biblioteca de software o ejemplos de código para la plataforma Arduino en la mayoría de los casos. No es posible proporcionar biblioteca de software / código de demostración para todas las plataformas MCU posibles. Por lo tanto, los usuarios tienen que escribir su propia biblioteca de software.
Ideas de Aplicación
- Jardinería Botánica
- Detección de Humedad
- Medición de Consistencia
Primeros Pasos
Si esta es la primera vez que trabajas con Arduino, te recomendamos firmemente que veas Primeros Pasos con Arduino antes de comenzar.
Jugar con Arduino
Hardware
- Paso 1. Prepara los siguientes elementos:
Seeeduino V4.2 | Base Shield | Grove-Sensor de Humedad |
---|---|---|
![]() | ![]() | ![]() |
Obtener Uno Ahora | Obtener Uno Ahora | Obtener Uno Ahora |
- Paso 2. Conecta el Sensor de Humedad Grove al puerto A0 del Shield Base Grove.
- Paso 3. Conecta el Shield Base Grove al Seeeduino.
- Paso 4. Conecta el Seeeduino a la PC mediante un cable USB.

Si no tenemos el Shield Base Grove, también podemos conectar directamente el Sensor de Humedad Grove al Seeeduino como se muestra a continuación.
Seeeduino | Sensor de Humedad Grove |
---|---|
5V | Rojo |
GND | Negro |
Sin Conexión | Blanco |
A0 | Amarillo |
Software
- Paso 1. Copia el código en el IDE de Arduino y súbelo. Si no sabes cómo subir el código, por favor revisa cómo subir código.
int sensorPin = A0;
int sensorValue = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
// read the value from the sensor:
sensorValue = analogRead(sensorPin);
Serial.print("Moisture = " );
Serial.println(sensorValue);
delay(1000);
}
- Paso 2. Veremos la humedad mostrada en la terminal como se muestra a continuación.
Moisture = 0
Moisture = 31
Moisture = 48
Moisture = 139
Moisture = 155
Moisture = 124
Moisture = 236
Moisture = 218
Moisture = 215
Moisture = 221
Jugar con Codecraft
Hardware
Paso 1. Conecta un Sensor de Humedad Grove al puerto A0 de un Base Shield.
Paso 2. Conecta el Base Shield a tu Seeeduino/Arduino.
Paso 3. Conecta el Seeeduino/Arduino a tu PC mediante un cable USB.
Software
Paso 1. Abre Codecraft, añade soporte para Arduino, y arrastra un procedimiento principal al área de trabajo.
Si esta es tu primera vez usando Codecraft, consulta también Guía para usar Codecraft con Arduino.
Paso 2. Arrastra bloques como en la imagen de abajo o abre el archivo cdc que se puede descargar al final de esta página.

Sube el programa a tu Arduino/Seeeduino.
Cuando el código termine de subirse, verás el valor de humedad mostrado en el Monitor Serie.
Jugar con Raspberry Pi (Con Grove Base Hat para Raspberry Pi)
Hardware
- Paso 1. Elementos utilizados en este proyecto:
Raspberry pi | Grove Base Hat para RasPi | Sensor de Humedad Grove |
---|---|---|
![]() | ![]() | ![]() |
|Obtener UNO Ahora|Obtener UNO Ahora|Obtener UNO Ahora
- Paso 2. Conecta el Grove Base Hat a la Raspberry Pi.
- Paso 3. Conecta el Grove - Moisture Sensor al puerto A0 del Base Hat.
- Paso 4. Conecta la Raspberry Pi a la PC a través del cable USB.

Software
- Paso 1. Sigue Configuración de Software para configurar el entorno de desarrollo.
- Paso 2. Descarga el archivo fuente clonando la biblioteca grove.py.
cd ~
git clone https://github.com/Seeed-Studio/grove.py
- Paso 3. Ejecuta el siguiente comando para ejecutar el código.
cd grove.py/grove
python grove_moisture_sensor.py 0
A continuación se muestra el código de grove_moisture_sensor.py.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# The MIT License (MIT)
#
# Grove Base Hat for the Raspberry Pi, used to connect grove sensors.
# Copyright (C) 2018 Seeed Technology Co.,Ltd.
'''
This is the code for
- Grove - Moisture Sensor <https://www.seeedstudio.com/Grove-Moisture-Sensor-p-955.html>`_
Examples:
.. code-block:: python
import time
from grove.grove_moisture_sensor import GroveMoistureSensor
# connect to alalog pin 2(slot A2)
PIN = 2
sensor = GroveMoistureSensor(PIN)
print('Detecting moisture...')
while True:
m = sensor.moisture
if 0 <= m and m < 300:
result = 'Dry'
elif 300 <= m and m < 600:
result = 'Moist'
else:
result = 'Wet'
print('Moisture value: {0}, {1}'.format(m, result))
time.sleep(1)
'''
import math
import sys
import time
from grove.adc import ADC
__all__ = ["GroveMoistureSensor"]
class GroveMoistureSensor:
'''
Grove Moisture Sensor class
Args:
pin(int): number of analog pin/channel the sensor connected.
'''
def __init__(self, channel):
self.channel = channel
self.adc = ADC()
@property
def moisture(self):
'''
Get the moisture strength value/voltage
Returns:
(int): voltage, in mV
'''
value = self.adc.read_voltage(self.channel)
return value
Grove = GroveMoistureSensor
def main():
from grove.helper import SlotHelper
sh = SlotHelper(SlotHelper.ADC)
pin = sh.argv2pin()
sensor = GroveMoistureSensor(pin)
print('Detecting moisture...')
while True:
m = sensor.moisture
if 0 <= m and m < 300:
result = 'Dry'
elif 300 <= m and m < 600:
result = 'Moist'
else:
result = 'Wet'
print('Moisture value: {0}, {1}'.format(m, result))
time.sleep(1)
if __name__ == '__main__':
main()
Si todo va bien, podrás ver el siguiente resultado:
pi@raspberrypi:~/grove.py/grove $ python grove_moisture_sensor.py 0
Detecting moisture...
Moisture value: 0, Dry
Moisture value: 1, Dry
Moisture value: 25, Dry
Moisture value: 3, Dry
Moisture value: 0, Dry
Moisture value: 0, Dry
Moisture value: 0, Dry
Moisture value: 0, Dry
Moisture value: 0, Dry
Moisture value: 1, Dry
^CTraceback (most recent call last):
File "grove_moisture_sensor.py", line 74, in <module>
main()
File "grove_moisture_sensor.py", line 71, in main
time.sleep(1)
KeyboardInterrupt
Puedes usar este sensor para detectar la calidad del aire. Presiona ++ctrl+c++ para salir.
Es posible que hayas notado que para el puerto analógico, el número de pin en la serigrafía es algo como A1, A0, sin embargo en el comando usamos el parámetro 0 y 1, igual que el puerto digital. Así que por favor asegúrate de conectar el módulo en el puerto correcto, de lo contrario, puede haber conflictos de pines.
Jugar Con Raspberry Pi(con GrovePi_Plus)
Hardware
- Paso 1. Prepara las siguientes cosas:
Raspberry pi | GrovePi_Plus | Grove-Sensor de Humedad |
---|---|---|
![]() | ![]() | ![]() |
Consigue Uno Ahora | Consigue Uno Ahora | Consigue Uno Ahora |
- Paso 2. Conecta el GrovePi_Plus al Raspberry.
- Paso 3. Conecta el Grove-Moisture Sensor al puerto A0 del GrovePi_Plus.
- Paso 4. Conecta el Raspberry a la PC a través del cable USB.

Software
- Paso 1. Sigue Setting Software para configurar el entorno de desarrollo.
- Paso 2. Clona el repositorio de Github con Git.
cd ~
git clone https://github.com/DexterInd/GrovePi.git
- Paso 3. Ejecuta los siguientes comandos para usar el Sensor de Humedad Grove para medir la humedad.
cd ~/GrovePi/Software/Python
python grove_moisture_sensor.py
Aquí está el código de grove_moisture_sensor.py.
# Here are suggested sensor values:
# Min Typ Max Condition
# 0 0 0 sensor in open air
# 0 20 300 sensor in dry soil
# 300 580 700 sensor in humid soil
# 700 940 950 sensor in water
import time
import grovepi
# Connect the Grove Moisture Sensor to analog port A0
# SIG,NC,VCC,GND
sensor = 0
while True:
try:
print(grovepi.analogRead(sensor))
time.sleep(.5)
except KeyboardInterrupt:
break
except IOError:
print ("Error")
- Paso 4. Veremos la humedad mostrada en la terminal como se muestra a continuación.
pi@raspberrypi:~/GrovePi/Software/Python $ python grove_moisture_sensor.py
0
90
130
150
160
218
238
Jugar con TI LaunchPad
Hardware
El siguiente esquema demuestra una aplicación simple de detección de la humedad en el suelo. Con esto, puedes saber si tu planta necesita agua o no observando el resultado de la salida del sensor

Software
/*
Moisture-Sensor
The following sketch demonstrates a simple application of sensing
the moisture of the soil. You can know whether a plant needs water
or not by observing the results that the sensor outputs.
The circuit:
* Moisture-Sensor attached to pin 24 (J6 plug on Grove Base BoosterPack)
* one side pin (either one) to ground
* the other side pin to +VCC
* LED anode (long leg) attached to RED_LED
* LED cathode (short leg) attached to ground
- NOTE:
This example code is in the public domain.
https://www.seeedstudio.com/wiki/Grove_-_Moisture_Sensor
*/
#include "TM1637.h"
/* Macro Define */
#define CLK 39 /* 4-digital display clock pin */
#define DIO 38 /* 4-digiral display data pin */
#define BLINK_LED RED_LED /* blink led */
#define MOISTURE_PIN 24 /* pin of moisture sensor */
#define THRESHOLD_VALUE 300 /* threshold for watering the flowers */
#define ON HIGH /* led on */
#define OFF LOW /* led off */
#define _handle_led(x) digitalWrite(BLINK_LED, x) /* handle led */
/* Global Varibles */
TM1637 tm1637(CLK, DIO); /* 4-digital display object */
int analog_value = 0; /* varible to store the value coming from rotary angle
sensor */
int8_t bits[4] = {0}; /* array to store the single bits of the value */
/* the setup() method runs once, when the sketch starts */
void setup() {
/* Initialize 4-digital display */
tm1637.init();
tm1637.set(BRIGHT_TYPICAL);
/* declare the red_led pin as an OUTPUT */
pinMode(BLINK_LED, OUTPUT);
}
/* the loop() method runs over and over again */
void loop() {
analog_value = analogRead(MOISTURE_PIN); /* read the value from the sensor */
/* if the value is smaller than threshold, turn on led */
if(analog_value < THRESHOLD_VALUE) {
_handle_led(ON);
} else {
_handle_led(OFF);
}
memset(bits, 0, 4); /* reset array when we use it */
for(int i = 3; i >= 0; i--) {
/* get single bits of the analog value */
bits[i] = analog_value % 10;
analog_value = analog_value / 10;
tm1637.display(i, bits[i]); /* display by 4-digital display */
}
delay(200);
}
Preguntas Frecuentes
P1: ¿Qué significa la salida? ¿voltaje o cuentas?
R1: La salida son valores de voltaje. Cuando se usa analogRead(), 5V se dividirá por 1023. Así que el valor de salida = Vout * 1023/5. Cuanto mayor sea el voltaje de salida, mayor será la humedad.
Visor de Esquemas en Línea
Recursos
-
[Eagle&PDF]Grove - Moisture Sensor v1.4 Schematic
-
[Codecraft]CDC File
Proyectos
Sistema de Monitoreo de Plantas usando AWS IoT: Si planeas unas vacaciones, aquí tienes un gran proyecto para rastrear la temperatura y humedad del suelo de tu planta usando dweet.io y AWS IoT.
Soporte Técnico y Discusión de Productos
¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para atender diferentes preferencias y necesidades.