Módulo 10

Visualización de datos en dashboards

Integración con la Nube y IoT

ESP32 Mecatrónica IoT UNAM

Introducción a Visualización de Datos

La visualización de datos en dashboards es un elemento fundamental en Mecatrónica e IoT, permitiendo monitorear y controlar sistemas físicos mediante gráficos en tiempo real y controladores virtuales.

Importancia de la Visualización
Control en Tiempo Real

Monitoreo instantáneo de sistemas físicos con gráficos actualizados en tiempo real.

Decisiones Informadas

Información clara y simplificada que permite tomar decisiones rápidamente.

Eficiencia Optimizada

Mejor control y eficiencia de los sistemas físicos mecatrónicos.

Aplicaciones Industriales
Supervisión de Maquinaria

Monitoreo del estado y rendimiento de equipos industriales

Seguimiento de Inventario

Control automático de stock y materiales

Control de Calidad

Verificación en tiempo real de parámetros de producción

Monitoreo Ambiental

Seguimiento de condiciones ambientales críticas

Arquitectura Técnica para Dashboards

El ESP32 actúa como el núcleo de recopilación y transmisión de datos para dashboards IoT, aprovechando sus capacidades WiFi y Bluetooth para conectividad.

Recopilación

Sensores físicos capturan datos del entorno

Procesamiento

ESP32 procesa y estructura los datos

Transmisión

Envío a plataformas IoT o servidores web

Visualización

Dashboard muestra datos en tiempo real

Plataformas Dashboard
ThingSpeak

Plataforma MATLAB para análisis y visualización de datos IoT

Gratuito MATLAB
Blynk

Aplicación móvil para control y monitoreo de dispositivos IoT

Móvil Intuitivo
Ubidots

Plataforma IoT empresarial con dashboards personalizables

Empresarial Escalable

Implementación de Conexión WiFi

Un aspecto importante a tener en cuenta es la configuración del ESP32 para la conexión WiFi. En el Arduino IDE, se puede utilizar la biblioteca WiFi.h. Para enviar los datos a una plataforma IoT, se puede utilizar la biblioteca HTTPClient.h que permite realizar solicitudes HTTP.

Código Arduino - Conexión WiFi y Envío de Datos
#include <WiFi.h>
#include <HTTPClient.h>

const char* ssid = "nombreRed";
const char* password = "contraseña";

void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Conectando a WiFi...");
  }
  Serial.println("Conectado a WiFi");
}

void loop() {
  if (WiFi.status() == WL_CONNECTED) {
    HTTPClient http;
    http.begin("http://servidor.com/datos");
    http.addHeader("Content-Type", "application/x-www-form-urlencoded");
    int httpResponseCode = http.POST("dato=valor");
    if (httpResponseCode > 0) {
      String response = http.getString();
      Serial.println(httpResponseCode);
      Serial.println(response);
    } else {
      Serial.print("Error en el envio: ");
      Serial.println(httpResponseCode);
    }
    http.end();
  } else {
    Serial.println("Error en la conexion WiFi");
  }
  delay(10000);
}
Explicación del Código
  • WiFi.h: Biblioteca para manejar conectividad WiFi en ESP32
  • HTTPClient.h: Biblioteca para realizar solicitudes HTTP
  • WiFi.begin(): Inicia la conexión WiFi con credenciales
  • http.POST(): Envía datos mediante petición HTTP POST

Ejercicios Prácticos

1

Visualización de Datos en Blynk

Básico

Conectar un sensor de temperatura al ESP32 y visualizar los datos en un dashboard de Blynk.

Objetivo: Visualización de datos de temperatura en tiempo real
Materiales: ESP32, sensor DHT11, resistencia 10kΩ, cables
Tiempo: 30-45 minutos
Plataforma: Blynk IoT Dashboard
2

Control LED con Ubidots

Intermedio

Conectar un LED al ESP32 y controlarlo mediante un dashboard de Ubidots.

Objetivo: Control remoto de LED mediante dashboard web
Materiales: ESP32, LED, resistencia 220Ω, cables
Tiempo: 45-60 minutos
Plataforma: Ubidots IoT Dashboard
3

Acelerómetro en ThingSpeak

Avanzado

Conectar un acelerómetro al ESP32 y visualizar los datos en un dashboard de ThingSpeak.

Objetivo: Visualización de datos de movimiento 3D
Materiales: ESP32, acelerómetro MPU6050, cables
Tiempo: 60-90 minutos
Plataforma: ThingSpeak Analytics
Resultados Esperados
Visualización en tiempo real de datos de temperatura
Control remoto exitoso del LED desde dashboard
Gráficas 3D de aceleración en los tres ejes

Proyecto Aplicado

Sistema de Monitoreo de Calidad del Aire

Sistema completo de monitoreo de calidad del aire en tiempo real utilizando sensor MQ-135, ESP32 y visualización en dashboard de Blynk.

Objetivos del Proyecto
  • Integrar sensor MQ-135 con ESP32 para medición de calidad del aire
  • Establecer conexión estable con plataforma Blynk
  • Crear dashboard interactivo para visualización de datos
  • Implementar alertas automáticas por niveles críticos
  • Registrar historial de mediciones para análisis
Componentes Necesarios
ESP32 DevKit
Sensor MQ-135
Cables de conexión
App Blynk
Procedimiento
1
Conexión del Hardware

Conectar el sensor MQ-135 al ESP32 utilizando conexión analógica

2
Programación del ESP32

Implementar código para lectura del sensor y conexión WiFi

3
Configuración de Blynk

Crear proyecto en Blynk con widgets de visualización

4
Pruebas y Calibración

Verificar funcionamiento y calibrar alertas de calidad del aire

Evaluación y Troubleshooting

Problemas de Conectividad WiFi
Alta

Desconexiones frecuentes o falta de conexión WiFi del ESP32

  1. Verificar credenciales de red (SSID y password)
  2. Comprobar alcance de señal WiFi
  3. Revisar configuración de router (banda 2.4GHz)
  4. Implementar reconexión automática en código
Inconsistencia de Datos
Media

Los datos mostrados en el dashboard no corresponden con las mediciones reales

  1. Calibrar sensor según especificaciones
  2. Verificar conexiones físicas del sensor
  3. Revisar fórmulas de conversión de datos
  4. Comprobar configuración de widgets en dashboard
Problemas de Servidor IoT
Baja

Errores en la comunicación con plataformas IoT (Blynk, Ubidots, ThingSpeak)

  1. Verificar tokens y claves de API
  2. Comprobar límites de envío de datos
  3. Revisar formato de datos enviados (JSON)
  4. Confirmar estado del servicio IoT
Criterios de Evaluación
25%
Conexión y Configuración

ESP32 conectado correctamente a WiFi y plataforma IoT

25%
Visualización de Datos

Dashboard muestra datos en tiempo real correctamente

25%
Precisión de Mediciones

Correspondencia entre datos reales y visualizados

25%
Funcionalidad Completa

Sistema operativo sin interrupciones durante pruebas

Referencias Adicionales