Acerca del proyecto
Vamos a trabajar con un sensor que tiene la capacidad de medir la humedad presente en el suelo que lo rodea, este sensor nos genera una señal analogía que esta relacionada con la cantidad de humedad en el suelo. La conexión que realizaremos con el arduino es por medio de los puertos análogos que posee y usando la función analogread()
obtendremos un valor que podemos interpretar con una lógica básica para determinar la cantidad de humedad del suelo.[1]
Conocimiento previo
Para realizar este proyecto se requiere conocimiento previo de los siguientes temas, si aun no has trabajado con lo que se menciona en la siguiente tabla, allí están los links a los post para que puedas dar un repaso adicional o puedas recordar el conocimiento necesario para poder realizar este proyecto.
Proyecto | Descripción |
---|---|
analogRead() | Arduino contienen un convertidor de analógico a digital multicanal de 10 bits. Esto significa que mapeará voltajes de entrada entre 0 y el voltaje de operación (5V o 3.3V) en valores enteros entre 0 y 1023. |
Sensor de humedad del suelo
Funcionamiento del sensor
Este sensor utiliza las dos sondas para pasar corriente a través del suelo, luego lee la resistencia que se produce con la humedad de la tierra para obtener el nivel. Más agua hace que la conducción eléctrica del suelo más fácilmente (menos resistencia), mientras que el suelo seco mal conductor de la electricidad (mayor resistencia).
Hay que aclarar que este sensor es de bajo poder y que solo detecta si hay humedad, si queremos saber el porcentaje de humedad del suelo este sensor no tiene la capacidad para dicha proeza.
Características
Estas son las características mas relevantes del sensor:[2]
- Medida análoga de la humedad con salida de variación de voltaje.
- Pines de conexión de la tarjeta: VCC: alimentación, GND: Tierra, AO: Salida análoga de la medición de humedad
- Voltaje de alimentación: 3.3V a 5V
- Corriente 35mA Max.
- Dos agujeros de sujeción en el sensor de diámetro 3 mm aprox. y un agujero de sujeción en el módulo electrónico de 2 mm aprox.
- Dimensiones aprox: Sensor 6 cm x 2 cm. Módulo electrónico 4 cm x 1.5 cm
Valor de salida
La siguiente tabla es una representación aproximada de las condiciones de humedad del suelo después de obtener la lectura analógica con el arduino, teniendo en cuenta que la conversión análoga que realiza el arduino es de 0 a 1024 con 10bits de conversión, esto lo explico con la función analogread()
.
Condición | Valor mínimo | Valor máximo |
---|---|---|
Sensor en suelo seco | 0 | 300 |
Sensor en suelo húmedo | 300 | 700 |
Sensor en agua | 700 | 950 |
Conexión de sensor
El sensor es fácil de conectar y de programar, ya que sus salida es un 0 a 4.2v lo que podemos leer como una señal análoga, lo cual podemos conectarlo a una de nuestras estradas de nuestro arduino, como se observa en la siguiente imagen.
Materiales
A continuación describo los materiales que estamos usando para este proyecto.
Materia | Cantidad | Descripción |
---|---|---|
Arduino | 1 | Puedes usar el que prefieras |
Sendor de humedad (SEN0114) | 1 | Sensor de humedad del fabricante dfrobot |
Código
Tenemos el código del ejerció, además lo puedes encontrar en la siguiente dirección de nuestros proyectos en github.
/*Sensor de humedad con arduino
*
* Copyright: codigoelectronica.com
* Author: Oscar Fernandez
* License: MIT
*/
void setup() {
//Paso 1
Serial.begin(9600);
Serial.println("Valor del sensor de humedad");
}
void loop() {
//Paso 2
int humidity = analogRead(A0);
Serial.print("Lectura:");
Serial.println(humidity);
//Paso 3
if(humidity >= 0 & humidity <= 300){
Serial.println("Sensor en suelo seco");
} else if(humidity > 301 & humidity <= 700){
Serial.println("Sensor en suelo húmedo");
}else if(humidity >= 701){
Serial.println("Sensor en agua");
}
delay(1000);
}
- Inicializamos el puerto serial para ver el resultado por la consola serial de arduino.
- Leemos el valor del puerto análogo, el cual va a hacer de 0 a 1024 a 10bits de lectura analógica.
- Con la tabla valor de salida que esta arriba, determinamos la humedad del suelo.
Ejemplo funcionando
Como podemos observar en la siguiente imagen, cuando agregamos más agua a la tierra disminuye la resistencia, lo que hacer que pase más voltaje y lo podamos leer por las entradas análogas de nuestro circuito.
Referencias
[1] dfrobot https://wiki.dfrobot.com/Moisture_Sensor__SKU_SEN0114_, Consultado octubre 2019
[2] electronicoscaldas https://www.electronicoscaldas.com/datasheet/OBSoil-01_ElecFreaks.pdf, Consultado octubre 2019
Comentario
javi_pana_co
16 August 2017 08:57
jose.brizuela95
29 October 2020 18:40
30 October 2022 20:38