Volver a proyectos
Completado

PlantsCare IoT

Sistema agrícola IoT con visión artificial para monitoreo inteligente de cultivos

Descripción del Proyecto

Sistema avanzado de monitoreo agrícola que combina IoT y visión artificial para optimizar el cuidado de cultivos. Desarrollado durante mi experiencia en el Instituto Tecnológico de Aragón (ITA).

Características principales

  • Visión artificial con EfficientNet-B0 para detección automática de problemas en plantas
  • Dashboard web en tiempo real para monitoreo y control de cultivos
  • Comunicación IoT mediante protocolos MQTT y CoAP
  • Base de datos temporal InfluxDB para almacenamiento optimizado de series temporales
  • Interfaz responsive adaptada para uso en campo y escritorio

Tecnologías utilizadas

Frontend & Dashboard:

  • React con hooks modernos para estado y efectos
  • Node.js para el backend y APIs RESTful
  • InfluxDB para manejo eficiente de datos temporales

IoT & Comunicación:

  • MQTT para comunicación ligera entre dispositivos
  • CoAP para protocolos IoT optimizados
  • ESP32/ESP8266 para sensores de campo

Inteligencia Artificial:

  • EfficientNet-B0 para clasificación de imágenes de plantas
  • OpenCV para procesamiento de imágenes
  • TensorFlow Lite para inferencia optimizada

Funcionalidades técnicas

  • Detección automática de enfermedades en plantas mediante análisis de imágenes
  • Monitoreo continuo de parámetros ambientales (humedad, temperatura, pH)
  • Alertas inteligentes basadas en umbrales dinámicos
  • Histórico de datos con visualizaciones interactivas
  • Panel de control intuitivo para gestión de múltiples cultivos

Impacto y resultados

  • Reducción del 30% en pérdidas de cultivo por detección temprana
  • Automatización completa del sistema de riego basado en datos reales
  • Dashboard en tiempo real utilizado por técnicos agrícolas
  • Escalabilidad probada para múltiples invernaderos simultáneos

Retos Técnicos Superados

1. Conectividad inestable en entorno agrícola

Problema: Los invernaderos tenían conectividad WiFi intermitente con pérdidas de paquetes del 30%, causando brechas en los datos críticos.

Solución: Implementé un sistema de buffer local en los ESP32 con almacenamiento SPIFFS que guarda lecturas cuando no hay conexión. Al reconectar, sincroniza automáticamente con timestamps correctos usando protocolo MQTT con QoS 2 (exactly once delivery).

2. Falsos positivos en detección de enfermedades

Problema: El modelo EfficientNet-B0 base tenía 40% de falsos positivos debido a variaciones de luz natural y sombras.

Solución: Apliqué técnicas de data augmentation durante entrenamiento (variaciones de luz, rotaciones, zoom) y agregué un paso de pre-procesamiento con normalización adaptativa de histograma. Reduje falsos positivos al 8%.

3. Latencia en dashboard en tiempo real

Problema: Con 15+ sensores enviando datos cada 10 segundos, el dashboard tenía lag notable y consumía excesiva CPU.

Solución: Implementé un sistema de agregación temporal en el backend que consolida lecturas en ventanas de 30 segundos antes de enviar al frontend vía WebSocket. Además, usé Canvas en lugar de SVG para gráficos, reduciendo el repaint time en 85%.

4. Gestión eficiente de series temporales

Problema: PostgreSQL luchaba con queries de agregación sobre millones de registros de sensores (tiempo de respuesta +30 segundos).

Solución: Migré datos de sensores a InfluxDB, base de datos especializada en series temporales. Las mismas queries pasaron a ejecutarse en <500ms. Implementé retention policies automáticas para downsampling de datos antiguos.


Este proyecto demuestra la aplicación práctica de tecnologías emergentes (IoT + IA) en sectores tradicionales como la agricultura, creando soluciones que generan valor real y mesurable.

Explorar más proyectos

Ver todos