Tabla de contenido:
- Suministros
- Paso 1: desarrollo del proyecto
- Paso 2: Inserción del sensor de humedad en el circuito
- Paso 3: Comprenda los valores de humedad
- Paso 4: Programación lógica
- Paso 5: Agradecimientos
Video: Sistema de alerta de suelo con poca humedad para su planta: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
En varias residencias es común encontrar tarros con diferentes tipos de plantas. Y con la gran cantidad de actividades del día a día, la gente se olvida de regar sus plantas y acaba muriendo por falta de agua.
Como forma de evitar este problema, decidimos crear un sistema para informar cuando una planta no tiene agua. De esta forma, nunca olvidarás regar tu planta y se mantendrá viva durante mucho tiempo. A continuación, presentaremos todo el desarrollo de este proyecto.
Suministros
- PCBWay PCB personalizado
- Sensor de humedad del suelo analógico para Arduino
- Arduino UNO
- Cables de puente (genéricos)
- LCD estándar - 16 x 2 azul
- Potenciómetro rotativo UTSOURCE 10k
Paso 1: desarrollo del proyecto
Una de las formas que usamos para detectar la cantidad de agua en la planta es a través del parámetro de humedad. Entonces, cuanta menos agua haya en el frasco de nuestra planta, menor será la humedad del suelo.
Por tanto, debemos utilizar un sensor de humedad para analizar el estado de humedad en nuestra planta.
A través de él, configuramos un circuito montado en el protoboard con Arduino, para realizar el monitoreo e indicación de baja humedad del tarro de cactus. Entonces, por medio de la pantalla LCD para informar a nuestro usuario sobre la humedad, como se muestra en la Figura 1.
Paso 2: Inserción del sensor de humedad en el circuito
Desde el circuito anterior, insertaremos la sonda para medición de humedad en la planta que deseamos monitorear. En nuestro proyecto, insertamos una sonda en un pequeño cactus, como se muestra en la Figura 2.
Ahora, veremos cómo proyectar el trabajo paso a paso y en adelante, aprenderemos a crear el código de control. Inicialmente, cuando no conectamos el sensor dentro del frasco, el dispositivo tiene un bajo contenido de humedad del 2% en el exterior. el tarro de cactus. Esto se puede ver en la Figura 3.
Paso 3: Comprenda los valores de humedad
Este valor porcentual bajo representa una humedad baja. Ahora, después de insertar el sensor en el suelo del tarro de cactus, se mostrará un valor de 36%, como se muestra en la Figura 4. Es decir, nuestra humedad es baja y el sistema muestra el mensaje Low Moisture porque el valor es menor. del 60%.
El siguiente paso es regar el suelo de la jarra de nuestro cactus y podemos verificar el aumento del valor de la humedad al 69%.
Después de comprender el funcionamiento del proyecto, presentaremos toda la lógica de construcción para crear este sistema de monitoreo. ¡Comencemos!
Paso 4: Programación lógica
En adelante, la lógica de programación se presentará a través del código construido.
Inicialmente, se declaró la librería de Display LCD, variables y se creó un objeto LCD con sus pines de conexión con Arduino UNO.
#incluir
#define sensor A0 bool LCDControl = 0, LowUmid = 0, HighUmid = 0; byte UmidityPercent = 0, humedad = 0, PreviousValue = 0; int ValUmidade = 0, AnalogValue = 0; const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; LiquidCrystal lcd (rs, en, d4, d5, d6, d7);
Posteriormente se inicializó la función setup y display LCD 16x2 y se configuró el pin del sensor como entrada, finalmente hicimos la primera lectura de nuestro sensor y lo usamos como referencia para la variable PreviousValue, como se muestra a continuación.
{Serial.begin (9600); lcd. comienzo (16, 2); pinMode (sensor, ENTRADA); PreviousValue = analogRead (sensor); }
Con las variables creadas y los comandos en la función de configuración void, explicaremos toda la programación lógica en la función de bucle.
// Le o valor do pino A0 do sensorAnalogValue = analogRead (sensor); // Muestra el valor del puerto analógico sin monitor serial Serial.print ("Puerto analógico:"); Serial.println (AnalogValue); UmidityPercent = mapa (AnalogValue, 0, 1023, 0, 100); humedad = 100 - UmidityPercent;
En la función de lazo, se leyó el valor analógico y se mapeó el valor en un rango de 0 y 100. Este valor representa un porcentaje de humedad del suelo. Cuando la humedad es alta mundial, el valor se acerca a 0 y si la humedad es baja el valor se acerca a 100.
Para facilitar la representación del valor y evitar confusiones en la lectura del usuario, invertimos esta lógica y representamos que 0% será baja humedad y 100% alta humedad. Esto se realizó mediante el cálculo realizado después del mapeo.
humedad = 100 - UmidityPercent;
Después de leer el valor de humedad es necesario presentarlo en la pantalla LCD. El siguiente paso es verificar si el valor de humedad es diferente de su valor más 1 o su valor menos 1, de acuerdo con la condición a continuación.
if ((humedad> (valor anterior) +1) || (humedad <(valor anterior) - 1))
Esta condición se utiliza para evitar que el sistema presente el mismo valor varias veces en la pantalla LCD. Pero, cuando la condición es verdadera, el sistema presentará el valor en la pantalla LCD y verificará si el valor es mayor o igual al 60% o menor al 60%. Si el valor fue mayor o igual al 60%, el sistema presentará el mensaje Humedad alta, de lo contrario, presente el mensaje Humedad baja, como se muestra a continuación.
if ((humedad> (valor anterior) +1) || (humedad <(valor anterior) - 1)) {lcd.setCursor (1, 0); lcd.print ("Humedad:"); lcd.print (""); lcd.setCursor (11, 0); lcd.print (humedad); lcd.print ("%"); if (humedad = 60 && HighUmid == 0) {lcd.setCursor (2, 1); lcd.print (""); lcd.setCursor (1, 1); lcd.print ("Alta humedad"); HighUmid = 1; LowUmid = 0; } PreviousValue = humedad; }
Finalmente, el sistema almacenará el valor de la variable de humedad en la variable PreviousValue para actualizar su valor. Cada vez que se presenta un nuevo valor en el display se actualiza la variable PreviousValue para ser utilizada en otros ciclos de procesamiento del código, por lo tanto, se trata de un sistema simple que se utiliza para monitorear la humedad de las plantas en nuestras residencias e informar a los usuarios sobre el nivel de humedad del suelo.
Paso 5: Agradecimientos
Silícios Lab agradece a PCBWay su apoyo y trabajo conjunto. Y tenemos muchos beneficios para ti. Gana 10 PCB gratis y muchas monedas de frijol (más información) para intercambiar productos en el sitio web de PCBWay.
Además de ellos, Silícios Lab agradece a UTSOURCE por su apoyo, por ofrecernos los componentes electrónicos de bajo costo, de gran calidad y buen servicio.
Recomendado:
Sistema de riego por goteo conectado a Internet controlado por retroalimentación de humedad del suelo (ESP32 y Blynk): 5 pasos
Sistema de riego por goteo conectado a Internet controlado por retroalimentación de humedad del suelo (ESP32 y Blynk): preocúpese por su jardín o sus plantas cuando se vaya de vacaciones, u olvídese de regar su planta a diario. Bueno, aquí está la solución Es un sistema de riego por goteo controlado por la humedad del suelo y conectado globalmente controlado por ESP32 en la parte frontal del software i
Monitor de planta Arduino con sensor capacitivo de suelo - Tutorial: 6 pasos
Monitor de planta Arduino con sensor capacitivo de suelo - Tutorial: En este tutorial aprenderemos cómo detectar la humedad del suelo utilizando un sensor de humedad capacitivo con pantalla OLED y Visuino. ¡Vea el video
¡Automatizando un invernadero con LoRa! (Parte 1) -- Sensores (temperatura, humedad, humedad del suelo): 5 pasos
¡Automatizando un invernadero con LoRa! (Parte 1) || Sensores (temperatura, humedad, humedad del suelo): en este proyecto les mostraré cómo automaticé un invernadero. Eso significa que les mostraré cómo construí el invernadero y cómo conecté la electrónica de potencia y automatización. También te mostraré cómo programar una placa Arduino que usa L
Sistema de control y monitoreo de humedad del suelo basado en IoT usando NodeMCU: 6 pasos
Sistema de control y monitoreo de humedad del suelo basado en IoT usando NodeMCU: En este tutorial vamos a implementar un sistema de control y monitoreo de humedad del suelo basado en IoT usando el módulo WiFi ESP8266, es decir, NodeMCU.Componentes requeridos para este proyecto: Módulo WiFi ESP8266 - Amazon (334 / - INR) Módulo de relé - Amazon (130 / - INR
Guía completa para usar el sensor de humedad del suelo con ejemplo práctico: 7 pasos
Guía completa para usar el sensor de humedad del suelo con ejemplo práctico: puede leer este y otros tutoriales increíbles en el sitio web oficial de ElectroPeak. También se proporcionan ejemplos prácticos para ayudarle a dominar el código. Lo que aprenderá: cómo se