MEDIR HUMEDAD DEL SUELO CON ARDUINO

Si necesitamos automatizar el sistema de riego de un cultivo es imprescindible conocer la humedad de la tierra para saber si es necesario regarla o no. El higrometro FC-28 es un sensor muy sencillo que mide la humedad de la tierra en forma indirecta calculando la conductividad de la tierra. Como ya sabemos el agua es un gran conductor y cualquier elemento mojado mejora su conductividad intrínseca, lo que quiere decir que cuanto mas mojada esta la tierra sera mas conductiva y cuando este mas seca sera menos conductivo.

El sensor FC-28 cuenta con una pequeña placa que nos resuelve en gran parte las cosas, por que nos entrega directamente el valor analógico de la conductividad o también el valor digital si se supere un umbral determinado de humedad. El valor o umbral lo seteamos mediante un potenciometro, es un trabajo manual, entregara un uno cuando se consiga superar o igualar el nivel de humedad que nosotros seteamos y entregara un cero cuando la humedad del suelo este por debajo de ese umbral.

Medir humedad del suelo con arduino FC-28

Medir la humedad del suelo con arduino es muy simple y barato, el FC28 es un sensor muy económico y se consigue fácilmente en Internet, no es un sensor capaz de cumplir las expectativas necesarias para un desarrollo comercial, pero es muy útil para el desarrollo de prototipos y el aprendizaje.

DIAGRAMA DE CONEXIÓN

La conexión es simple, solo tenemos que conectar tres pines, la tensión de alimentación vcc que debe ser aproximadamente 5V, el pin de GND y después tenemos otros dos pines de los cuales tenemos que decidir cual usaremos, si el analógico o el digital.

  • VCC debe ser del orden de 5V, puede estar conectado a la misma alimentación que el arduino.
  • GND debe estar conectado al gnd de arduino.
  • A0 es el pin de datos analógico
  • D0 es el pin de datos digital

Sensor de humedad FC28

CÓDIGO ARDUINO

Como digo siempre, con arduino se hace fácil lo difícil, como podrán ver en el siguiente código notaran que es muy simple y bastante intuitivo.

Vamos a separar el código en dos ejemplos, uno para una lectura digital y el otro para una lectura analogica.

EJEMPLO LECTURA ANALÓGICA

const int sensorPin = A0;
 
void setup() {
   Serial.begin(9600);
}
 
void loop() 
{
   int humedad = analogRead(sensorPin);
   Serial.print(humedad);
  
   if(humedad < 500)
   {
      Serial.println("La humedad del suelo esta por debajo de 500 en nuestra lectura analogica");  
      //tomar medidas al respecto
   }
   delay(1000);
}

EJEMPLO LECTURA DIGITAL

const int sensorPin = 10;
 
void setup()
{
   Serial.begin(9600);
   pinMode(sensorPin, INPUT);
}
 
void loop()
{
   int humedad = digitalRead(sensorPin);

   if (humedad == HIGH)
   {
      Serial.println("El estado de la humedad esta en alto");   
      
   }
   delay(1000);
}

Si te sirvió de algo lo que leíste aquí te invito a dejar comentarios y aportar lo que creas necesario para mejorar el sitio.

NO ESPERES MAS, APRENDE ROBOTICA CON ARDUINO

Si estas realmente interesado en aprender arduino desde cero, poder sacarle todo el jugo a esta plataforma genial y empezar a hacer proyectos super profesionales, te recomiendo uno de los mejores cursos que hice en mi vida, por muy poco recibiras un curso completo donde Jose Antonio Vacas (crack en la materia) explica todo paso a paso y hasta el mas minimo detalle.

12 horas de video explicativo que puedes seguir a tu ritmo y verlo cuantas veces quieras.

¿TE PARECE POCO?

Vas a contar con acceso a la plataforma de por vida!, puedes seguir el curso desde celulares y tablet y ademas de todo eso, todo el codigo que se genere en el curso va a estar disponible para que te lo descargues en cualquier momento.

Al acceder al curso mediante click en la siguiente imagen obtendras un importante descuento 🙂

CursoArduino

BREVE DESCRIPCION DEL CURSO

Aprende a usar Arduino desde cero.  Crea tus propios proyectos

¿Qué es Arduino? un placa electrónica open-source que permite crear prototipos y proyectos electrónicos muy fácilmente. ¡¡Hace unos años había que ser ingeniero para trabajar con estos sistemas!!

Hoy en día lo puedes hacer sin problema siguiendo este curso, donde aprenderás electrónica, programación y cómo hacer montajes con Arduino.

Empezarás desarrollando pequeños proyectos que podrás unir y crear uno más completo

No son necesarios conocimientos previos de electrónica ni de programación, aprenderemos todo en el curso, por medio de aplicaciones practicas.

A medida que avances en el curso verás como tus ideas se convierten en proyecto reales.

La naturaleza Open-Source de Arduino nos facilita que podamos trabajar en cualquier ordenador con Linux, Mac o Windows.

Hablaremos de simuladores donde puedes construir tus proyectos “virtualmente” pero si quieres hacer tus proyectos necesitarás conseguir componentes. Algunos los tendrás que comprar pero muchos de ellos los puedes conseguir reciclando equipos.

Aprenderemos sobre …

  • Los distintos modelos de placa de Arduino que existen
  • Los tipos de sensores que podemos conectar a Arduino
  • Los diferentes motores que nos permitirán dar movimiento a nuestros proyectos
  • Cómo comunicar nuestra placa Arduino con otros componentes y con Internet
  • Cómo ampliar la capacidad de Arduino con diferentes escudos (shields) y módulos

Cada semana se añaden nuevos vídeos y ejemplos

¿Para quién es este curso?
  • Cualquiera que quiera aprender a montar proyectos con Arduino
  • Quien quiera aprender a programar Arduino
  • El que quiera aprender electrónica básica
  • A partir de 12-14 años
REQUISITOS
  • El único requisito es saber usar un ordenador conectado a internet a nivel básico
  • Cualquier ordenador conectado a internet (se usa open software compatible con Linux, Mac y Windows)
  • Puedes aprender sin necesidad de componentes, se enseña a usar un simulador
  • Aprenderás más si vas consiguiendo componentes, muchos de ellos se pueden obtener de equipos reciclados

cursoarduinocomprar

ARTICULOS RELACIONADOS

6 comentarios sobre “MEDIR HUMEDAD DEL SUELO CON ARDUINO

  • ¿Cómo puedo hacer para que cuando pulso “Serial Monitor” en la lectura digital en lugar de imprimirse el mensaje de “El estado de la humedad esta en alto” se impriman los valores de humedad al igual que en la entrada digital?

    • Como estas Enrique?
      Lo que tenes que hacer para visualizar el valor de la humedad mediante el “Serial Monitor” es simplemente reemplazar esta linea
      Serial.println(“El estado de la humedad esta en alto”);
      con esta
      Serial.println(humedad);

      Espero que te sirva.
      saludos!

    • no imprimas el mensaje “El estado de la Humedad es Alto”, sino la variable del valor de los datos de entrada digital que tengas declarada.

  • Hola Veloso:
    Lo hago, pero en el “Serial Monitor” sólo me aparece el valor 1. Tengo conectado el puerto D0 del FC-28 al Pin 10 de la Placa que se supone que es para señales digitales ¿No?

    • Enrique, debes utilizar una salida analógica.
      luego deberías probar con el siguiente código


      const int sensor = A0;

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

      void loop()
      {
      int humedad = analogRead(sensor);
      Serial.print(humedad);
      Serial.println("nueva lectura");
      delay(1000);
      }

Deja un comentario

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