Conectar sensor de humedad del suelo Arduino

El sensor FC-28 Arduino es una sonda de humedad del suelo utilizada en sistemas de riego automático de cultivos. El módulo sensor de humedad del suelo (Soil Moisture Sensor) consta de un palpador con dos electrodos abiertos y un módulo electrónico basado en un comparador LM393 con salidas digitales y analógicas. Considere la posibilidad de conectar el módulo sensor de humedad del suelo FC-28 o módulo YL-69 a un Arduino Uno.

Para esta actividad necesitaremos:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • sensor de humedad suelo FC-28 y YL-69;
  • LEDs y resistencias de 220 Ohm;
  • protoboard;
  • cables de conexion.

Sensor de humedad del suelo datasheet, pinout

La sonda (palpador) actúa como una resistencia variable cuya resistencia varía en función del contenido de agua del suelo. Cuanta más humedad haya en el suelo, menor será la resistencia, y viceversa, cuanta menos humedad haya en el suelo, mayor será la resistencia. Entonces, en función de la resistencia del medio, el sensor de humedad del suelo FC-28 (Soil Moisture Sensor Arduino) emite una tensión analógica en la salida A0.

Sensor de humedad del suelo FC-28 pinout, datasheet
Sensor de humedad del suelo FC-28 pinout, datasheet

Características sensor FC-28 y YL-69:

  • Alimentación: de 3,3 V a 5 V
  • Consumo de corriente: 35 mA
  • Salida: digital y analógica
  • Tamaño del módulo: 16 × 30 mm
  • Tamaño de la sonda: 20 × 60 mm

La sonda del sensor higrómetro FC-28 se conecta con dos hilos al comparador LM393. Un potenciómetro incorporado se utiliza para ajustar la sensibilidad del sensor, estableciendo el contenido mínimo de humedad en el suelo en el que el sensor emitirá un nivel lógico bajo (LOW) en la salida digital D0. Mientras no se alcance el valor mínimo de contenido de humedad, la salida del módulo digital YL-69 emitirá un nivel lógico alto (HIGH).

Conectar sensor de humedad del suelo Arduino

Conexión módulo sensor FC-28 o YL-69 Arduino
Conexión módulo sensor FC-28 o YL-69 Arduino

En el primer ejemplo, conecta el sensor al Arduino a través de la salida analógica, ya que la señal analógica permite controlar con mayor precisión incluso los cambios más pequeños en la humedad del suelo. Para ello, conecta la fuente de alimentación del módulo – GND y 5 voltios (véase el diagrama de cableado anterior), y conecta el pin A0 al puerto A1 del Arduino. Después de cargar el sketch, abre el monitor de puertos de Arduino IDE.

Programa Arduino para sensor de humedad del suelo YL-69

#define solPin A1 // puerto de conexión del sensor
#define ledPin 13 // puerto de conexión de LED

int minsol = 300; // humedad mínima del suelo
int sol;

void setup(){
   Serial.begin(9600);

   pinMode(solPin, INPUT);
   pinMode(ledPin, OUTPUT);
}

void loop(){
   sol = analogRead(solPin);
   Serial.print("sol = ");
   Serial.println(sol); // variable de visualización

   if (sol > minsol) { digitalWrite(ledPin, LOW); }
   if (sol < minsol) { digitalWrite(ledPin, HIGH); }

   delay(1000);
}

Explicación del código para sensor de humedad del suelo YL-69:

  1. cuando el valor de la señal analógica del módulo sensor de humedad del suelo desciende hasta un determinado nivel, se activa el LED del microcontrolador;
  2. al calibrar el sensor de humedad del suelo (Soil Moisture Sensor), fije el valor umbral a partir del cual debe activarse el riego automático.

Conectar sensor analógico y digital de humedad FC-28

Conectar sensor analógico y digital de humedad FC-28
Conectar sensor analógico y digital de humedad FC-28

Al calibrar el sensor analógico de humedad del suelo, establezca en el software el valor umbral a partir del cual se activa el riego automático. La señal del sensor digital se calibra por hardware mediante una resistencia variable – girando el potenciómetro incorporado en el sentido de las agujas del reloj aumenta la sensibilidad. Carga el siguiente programa en el microcontrolador y ajusta el potenciómetro del módulo soil moisture sensor.

Programa Arduino analógico y digital sensor FC-28

#define solPin  2 // puerto de conexión del sensor
#define ledPin 13 // puerto de conexión de LED

int sol;

void setup(){
   Serial.begin(9600);

   pinMode(solPin, INPUT);
   pinMode(ledPin, OUTPUT);
}

void loop(){
   Serial.print("sol = ");
   Serial.println(digitalRead(solPin));

   if (digitalRead(solPin) == LOW) { digitalWrite(ledPin, LOW); }
   if (digitalRead(solPin) == HIGH) { digitalWrite(ledPin, HIGH); }

   delay(1000);
}

Explicación del código para sensor FC-28 Arduino:

  1. el sensor se calibra por hardware con una resistencia variable: al girar el potenciómetro incorporado en el sentido de las agujas del reloj, aumenta la sensibilidad.

Conclusión. Los sensores Arduino FC-28 e YL-69 tienen un diseño sencillo y son fáciles de conectar. Pero los módulos tienen un gran inconveniente: la vida útil del sensor en un entorno húmedo es corta debido a la corrosión. La forma de salir de esta situación es utilizar un sensor de humedad del suelo casero para Arduino, en el que las sondas metálicas se puedan sustituir de forma muy rápida y barata en caso necesario.


2 Replies to “Sensor de humedad del suelo Arduino YL-69 / FC-28”

  1. Hola, estoy intentando conectar el FC-28 con una pantalla LCD y un relé para activar una bomba de agua, no lo consigo.
    ¿podrías ayudarme?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *