Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Características técnicas:
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).
Conexionado:
Código
// 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);
}
MEDIR LA HUMEDAD
DEL SUELO CON
ARDUINO E
HIGRÓMETRO FC-28
SHARE ON:
El FC-28 es un sensor sencillo que mide la humedad del suelo por la variación de
su conductividad. No tiene la precisión suficiente para realizar una medición absoluta
de la humedad del suelo, pero tampoco es necesario para controlar un sistema de
riego.
El FC-28 se distribuye con una placa de medición estándar que permite obtener
la medición como valor analógico o como una salida digital, activada cuando la
humedad supera un cierto umbral.
PRECIO
El sensor de humedad FC-28 es realmente barato. Podemos encontrarlo por
0,85€ en vendedores internacionales de Ebay y Aliexpress.
ESQUEMA DE MONTAJE
El esquema eléctrico es sencillo. Alimentamos el módulo conectando GND y 5V a
los pines correspondientes de Arduino.
EJEMPLOS DE CÓDIGO
El código necesario es realmente sencillo. Si estamos empleando la señal
analógica A0, leemos el valor mediante la entrada analógica, y usamos el puerto de
serie para mostrar el valor por pantalla. En un caso real, este valor se emplearía para
ejecutar acciones, en lugar de mostrar el valor.
2
3 void setup() {
4 Serial.begin(9600);
5 }
6
7 void loop()
8 {
1 Serial.print(humedad);
0
1
1
1
2
1 delay(1000);
6
}
1
7
1
8
Si estamos empleando la señal digital, empleamos una entrada digital para leer
el estado. En el ejemplo mostramos un mensaje por la pantalla, pero igualmente en
un caso real ejecutaríamos las acciones oportunas.
2
3 void setup()
4 {
5 Serial.begin(9600);
6 pinMode(sensorPin, INPUT);
7 }
8
9 void loop()
1 {
0
int humedad = digitalRead(sensorPin);
1
1
1
4
1
5 {
1 Serial.println("Encendido");
6
//aquí se ejecutarían las acciones
1
}
7
delay(1000);
1
8 }
1
9
2
0