modulo humedad

Proyecto Arduino-Parte 2: Sensor de humedad

Bien, pues despues de empezar a investigar cosas que hacer con Arduino, he dado con el modulo HL-69, un sensor de humedad de suelo que utiliza la conductividad entre dos terminales para determinar ciertos parámetros relacionados a agua, líquidos y humedad.

Arduino

Este sensor tiene la capacidad de medir la humedad del suelo. Aplicando una pequeña tensión entre los terminales del módulo, hace pasar una corriente que depende básicamente de la resistencia que se genera en el suelo y ésta depende mucho de la humedad. Por lo tanto al aumentar la humedad la corriente crece y al bajar la corriente disminuye.

Posee dos tipos de salidas, una analógica y una digital. La salida digital entregará un pulso bajo cuando haya conductividad suficiente entre cada una de las puntas. El umbral de disparo se puede establecer moviendo el potenciómetro del circuito de control. En la salida analógica el nivel de voltaje dependerá directamente de cuanta humedad haya en el suelo. Es decir, dependiendo de cuanta conductividad (producto del agua en el suelo) haya entre las puntas del módulo, así variará el valor entregado por Arduino (entre 0 y 1023).

Los valores aproximados de tensión según la humedad son:

0  -300         muy mojado  
300-700       húmedo  
700-1023     seco 

Estos valores dependen de la planta que quieras regar, ya que no es lo mismo un captus que una cala, aunque para la mayoría de las plantas esos valores valen.

Una anotación muy importante es que depende el módulo que tengamos, alomejor los valores cercanos a 0 es porque la planta está seca y los cercanos a 1023 es porque esta muy aguada. Os recomiendo que al cargar el programa probeis como actúa vuestro sensor metiendolo en un vaso de agua.

Conexionado:

Código:

 [wp-like-lock] 

 

// Sensor de Humedad

// Conectamos el sensor de la siguiente forma:
// GND    -> GND
// VCC    -> 5V
// DAT    -> A0


int Valor;

void setup() {
Serial.begin(9600);
}
void loop(){
Serial.print(«Sensor de Humedad valor:»);
Valor = analogRead(0);
Serial.print(Valor);
if (Valor <= 300)
   Serial.println(» Encharcado»);
if ((Valor > 300) and (Valor <= 700))
    Serial.println(» Humedo, no regar»);
if (Valor > 700)
    Serial.println(» Seco, necesitas regar»);
delay(1000);
}
[/wp-like-lock]