Tabla de contenido:

Sistema autónomo de riego de plantas: 4 pasos
Sistema autónomo de riego de plantas: 4 pasos

Video: Sistema autónomo de riego de plantas: 4 pasos

Video: Sistema autónomo de riego de plantas: 4 pasos
Video: OLVÍDATE de REGAR: Riego por Goteo Casero (+30 Días y Regulable) Ideal Vacaciones 2024, Noviembre
Anonim
Sistema autónomo de riego de plantas
Sistema autónomo de riego de plantas
Sistema autónomo de riego de plantas
Sistema autónomo de riego de plantas
Sistema autónomo de riego de plantas
Sistema autónomo de riego de plantas

Este proyecto presenta un sistema de riego de plantas autónomo inteligente. El sistema es autónomo en energía usando una batería de 12v y un panel solar, y riega la planta cuando se establecen las condiciones adecuadas, con un sistema bien pensado (espero) a prueba de fallas. Es inteligente porque se comunica con el (los) usuario (s) a través de la aplicación Telegram.

Los pasos que sigue el sistema son los siguientes:

  • siempre se controla el contenido de agua del suelo;
  • si el contenido de agua del suelo está por debajo de un cierto valor (max_soil_moisture), el sistema:

    • (?) verifica que el tanque de agua no esté vacío (y durante) el evento de riego para evitar cualquier daño a la bomba funcionando en seco;
    • (?) comprueba que se excede el período mínimo de riego entre dos eventos de riego. Esto se hace para evitar regar las plantas demasiadas veces durante el día (mejor tener un poco de sequedad en algún momento), y para agregar algo de seguridad en caso de que el sensor de humedad del suelo se rompa;
    • (?) iniciar el riego;
    • detiene el riego siempre que:

      • (?) el contenido de agua del suelo alcanza un cierto valor (max_soil_moisture) o;
      • (?) el tanque de agua está vacío, en cuyo caso el riego se reanudará tan pronto como se vuelva a llenar, o;
      • (?) la duración del riego excede la duración máxima permitida para cada evento de riego (watering_max_time). El objetivo aquí es evitar hacer funcionar la bomba hasta que el tanque de agua esté vacío si hay una fuga en el sistema que evitaría que la humedad del suelo aumente;
  • (?) comprueba que las plantas se riegan al menos cada período de tiempo determinado (max_wo_water), para evitar que mueran si, por ejemplo, el sensor de humedad del suelo está roto y devuelve siempre valores altos;

El usuario recibe una notificación mediante mensajes de Telegram en cada paso importante (¿indicado?). El usuario también puede activar manualmente un evento de riego desde Telegram, incluso si el contenido de agua del suelo es mayor que el valor dado (max_soil_moisture). También es posible encender y apagar todo el sistema, preguntar si el sistema está en funcionamiento o preguntar el valor actual del contenido de agua del suelo (vea la instantánea de Telegram).

Suministros

Material

A continuación se muestra una lista de los productos utilizados para construir el sistema. Debo decir que no recibo ningún incentivo de Amazon, donde se compraron todos los productos.

Para controlar el sistema:

  • Placa NodeMCU (ESP8266) para el cerebro, 17,99 €
  • Módulo relé, 11,99 €
  • 120 cables de puente para la creación de prototipos, 6,99 € -> creación de prototipos
  • 3 protoboards, 8,99 € -> prototipos
  • Caja estanca, 10,99 €
  • Kit resistencias 525 piezas, 10,99 €
  • PCB impreso con conexiones similares a una protoboard, 9.27 €
  • Cables eléctricos trenzados 20, 22 o 24 AWG según su preferencia (20 es más sólido pero debe reducirse para algunas conexiones, 22 es bueno, 24 es más barato), 18,99 €

Para la autonomía en energía:

  • Batería 12V, 21,90 €
  • Panel solar monocristalino 10W wp 12V, 23,90 €
  • Regulador de carga 12 / 24V, 13,99 €

Para el tanque de agua:

  • Bomba de agua 12V, 16,99 €
  • Conector DC macho / hembra (para conectar la bomba), 6,99 €

Los sensores:

  • Flotador de nivel de agua, 7,99 €
  • Sensor capacitivo de humedad del suelo, 9,49 €
  • un poco de esmalte de uñas para impermeabilizar el sensor de humedad del suelo, 7,99 €;

Y el sistema de riego:

Sistema de riego, 22,97 €

Por un total de 237,40 €. ¡Eso no es barato! ¡Pero tenga en cuenta que sigue siendo más barato que un sistema preconstruido y con muchas más capacidades! Además, algunas piezas son solo para prototipos (15,98 €), y compré muchos componentes en grupos de varias piezas para otros proyectos, p. Ej. 525 resistencias es una cantidad increíble, no necesitas 3 placas NodeMCU ni 6 relés para este proyecto.

Paso 1: Código

Para reproducir este proyecto, necesitará algunas herramientas, algo de material y el código de este proyecto.

Código

Para obtener el código de este proyecto, clónelo (o mejor, bifurque) desde el repositorio de Github usando GIT, y si no sabe qué significa GIT, clonar y bifurcar, simplemente descárguelo en su computadora usando este enlace..

Luego, configúrelo según sus necesidades.

Para usar Telegram, el NodeMCU debe estar conectado a Internet. Lo hice usando su módulo WIFI y el WIFI de mi casa. Para configurar su propia conexión, abra el script plant_watering.ino en Arduino IDE y complete los valores faltantes para sus credenciales wifi (supongo que tiene WiFi):

String ssid = "xxxxx"; // Nombre de su cadena Wifi pass = "xxxxx"; // Contraseña de wifi

Luego, configuraremos un bot de Telegram, que es una cuenta de usuario un poco como la tuya, pero en realidad lo ejecuta un robot (tu NodeMCU). Para hacerlo, siga los pasos que se describen aquí. En pocas palabras:

  • Abra Telegram (y conéctese con su cuenta);
  • Crea un nuevo bot:

    • Busque BotFather en sus contactos (escríbalo en la barra de búsqueda) y abra una conversación con él (como lo haría con cualquier contacto nuevo);
    • Escriba / newbot en la conversación (esté atento al caso e incluya el /!)
    • Nombra tu bot como quieras, pero termina con "bot" (por ejemplo, "watering_balcony_bot");
    • Botfather te da un token de bot, mantenlo en secreto (¡¡no lo compartas usando GIT !!), lo usaremos en unos pocos pasos;
    • Búscalo en tus contactos y envíale este mensaje: / start
    • Copie el token devuelto por Botfather y péguelo en su script plant_watering.ino aquí:

      Token de cadena = "xxxxxx: xxxxxxxxxxxxxxxxxxxxxxx"; // Token de bot de Telegram

¡Tu bot ahora está vivo!

Para que pueda comunicarse con usted, necesita conocer su ID de conversación. Como queremos poder compartir lo que dice el bot con otras personas en caso de que salgamos de vacaciones, prefiero crear un chat grupal. Así que cree uno (Nuevo grupo), agregue su bot buscando su nombre y agregue un tercer bot llamado IDBot temporalmente. Luego, asigne un nombre a su chat grupal como desee. Abra su chat grupal y escriba / getgroupid. IDBot devolverá un número como -xxxxxxxxx (¡no olvide el menos cuando lo copie!), ¡Esa es su ID de chat grupal!

También puede pedirle a / getid que obtenga su identificación personal, por lo que su bot le enviará mensajes directamente a usted (no enviándolos al grupo)

Copie la ID y péguela en su script plant_watering.ino aquí:

int chatID = -000000000; // Este es el ID de tu chat grupal Pegue el / getid aquí en su lugar si desea que el bot envíe mensajes directamente a usted

Luego, elimine IDBot de su grupo por si acaso (no queremos que se filtre ningún dato).

Para el último paso, deberá instalar las bibliotecas CTBot y ArduinoJson. Para hacerlo, escriba ctrl + maj + I, busque CTBot, busque CTBot de Stefano Ledda y haga clic en instalar. Luego repita para ArduinoJson y busque ArduinoJson de Benoit Blanchon, pero instale la versión 5.13.5 por ahora porque CTBot aún no es compatible con la sexta versión (puede verificar aquí si hay algún cambio).

Y eso es todo, ¡tu código está listo! ¡Ahora puedes subirlo a NodeMCU! Si hay algunos errores, verifique que seleccionó NodeMCU 1.0 como el tipo de placa y que usa la versión correcta para sus bibliotecas.

Paso 2: herramientas

Instrumentos

Las herramientas son muy simples, las usé para este proyecto:

  • Un soldador + estaño (por ejemplo, 220V 60W);
  • Un multímetro (el mío es un TackLife DM01M);
  • Un destornillador plano (más pequeño es mejor);
  • Alicates de corte;

Si los tienes también puedes añadir algunos pelacables, pero no son indispensables.

Paso 3: Montaje

Montaje
Montaje

Puede encontrar el ensamblaje de las piezas usando Fritzing para abrir el proyecto Fritzing en el repositorio de Github.

NB: el NodeMCU está conectado al controlador de carga solar mediante un cable USB (el del esquema no lo tiene). Consulte la sección Material para ver un ejemplo de un controlador de carga solar con un USB.

Hice todas las piezas personalizadas disponibles en la carpeta fritzing del proyecto Github (todas se pueden encontrar en Internet, excepto el flotador de agua porque lo hice).

Paso 4: Agradecimientos

¡Me gustaría agradecer a mi maravilloso socio que me permitió hacer esto durante los fines de semana! ¡Y por supuesto todos los creadores que hicieron posible el proyecto, como @shurillu para la biblioteca super CTBot, EstebanP27 para su tutorial del que aprendí mucho para este proyecto! También me gustaría agradecer a svgrepo, por el que utilicé SVG como base para el logotipo.

Recomendado: