El sistema desarrollado tiene como objetivo monitorizar, visualizar y evaluar el consumo de energía de cualquier aparato eléctrico (monofásico y trifásico).
Almacena la información en una web que permite a los usuarios o técnicos identificar los diferentes consumos. El sistema permite conocer, en tiempo real, la curva de demanda de energía eléctrica. El prototipo se basa en tres puntos principales: el dispositivo de medida, el procesamiento de señales y la plataforma de almacenamiento en la nube.
Se utilizan sensores profesionales para la monitorización del consumo de energía de los dispositivos eléctricos.
En este sentido, se ha desarrollado un dispositivo de medida de consumo de energía eléctrica basado en los chips ADE77XX y el microcontrolador Atmega328p, así como el chip ESP8266. Por otra parte, es necesario utilizar un sistema adicional para almacenar la información obtenida. Para ello se ha utilizado la plataforma web emoncms y Thingspeak.
Para medir el consumo de energía se utilizan dos sensores, el de corriente y el de tensión. Esta información se envía al chip ADE77XX de precisión y este le envía por SPI la información al microcontrolador con los principales parámetros eléctricos del dispositivo. Posteriormente se envía esta información al servidor a través de Internet.
Las operaciones que tienen lugar dentro de estos bloques son:
Capturar parámetros eléctricos utilizando los sensores conectados a la alimentación del dispositivo eléctrico. Los sensores empleados son: de corriente, tensión y temperatura.
Consiste en el diseño de una solución IoT capaz de realizar la medición de Tensión, Intensidad, Potencia y Temperatura de cualquier máquina industrial, y la visualización en una pantalla LCD o en una plataforma IoT en tiempo real.
El microcontrolador principal ha sido un ATMEGA328P y el secundario el Módulo ESP8266.
Atmega es una placa de microcontrolador basada en ATmega328P
El ADE7753 mide tensión monofásica.
Los datos se leen desde el ADE7758 a través de la interfaz serial SPI. La salida de solicitud de interrupción (IRQ) es una salida lógica activa de bajo consumo y drenaje abierto.
La salida IRQ se activa baja cuando se producen uno o más eventos de interrupción en él. Un registro de estado indica la naturaleza de la interrupción.
El proyecto tiene dos programas distintos
-Programa para el ATmega328P: Comunica el ADE7758 con el Arduino. Este procesa los datos y los muestra por una pantalla LCD además de enviarlos al la plataforma IOT mediante el ESP8266.
-Aplicación para Android: Indicando la API key del usuario muestra los nodos de esa cuenta y los sensores vinculados a dichos nodos. También incluye gráfica con los datos del sensor seleccionado.
El código del ATmega328P consta de tres partes
1.Código principal: Se encarga de gestionar la comunicación con el ESP8266 y con el ADE7758 además de mostrar por la pantalla LCD los datos recogidos
2.Librería ADE7758: Donde se encuentra todos las funciones necesarias para la comunicación con el mismo.
3.Archivo .cpp: Archivo que contiene todas las operaciones de las funciones de la librería ADE7756.h
Esta aplicación, mediante el uso de APIs, recoge los datos almacenados en los feeds de la página Emoncms y los muestra en pantalla. Además de ello, los representa en una gráfica. El programa consta de seis archivos java (cuatro de ellos activities con sus respectivos layout.xml). También se añade una librería para la incorporación de la gráfica
El código de la aplicación Android consta de las siguientes partes
1.Archivos .java: Es donde se encuentra el código de la aplicación. Se encarga de controlar todos los elementos dispuestos en el archivo .xml vinculado a ellos y las funciones que estos tienen.
2.Archivos .xml: Es el diseño de la aplicación. Contiene todo aquello con el que el usuario interacciona (botones, listas, textos, etc)
Para la realización de este proyecto hemos utilizado dos plataformas de IoT
1.Emoncms
2.ThingSpeak
ThingSpeak es una herramienta con la que se puede leer los datos recibidos a través del ESP8266. Estos datos aparecen en forma de tablas de tiempo.
Datos obtenidos de tensión
Datos obtenidos de corriente eléctrica.
Emoncms es una potente aplicación web de código abierto para procesamiento, registro y visualización de la energía, temperatura y otros datos ambientales.
Datos obtenidos de Temperatura
Página web alojada en el chip ESP8266 que toma datos por el puerto serie del ATmega328P y los envía a internet por MQTT y por Http.
EmonESP puede publicar datos en emoncms.org o en cualquier otro servidor de Emoncms (por ejemplo, emonPi) utilizando la API de Emoncms. EmonESP puede publicar datos en un servidor MQTT.
Los datos se pueden imputar a EmonESP a través de la API serie UART o HTTP
Visualizar los datos recibidos
MQTT son las siglas de Message Queue Telemetry Transport y tras ellas se encuentra un protocolo ideado por IBM y liberado para que cualquiera podamos usarlo enfocado a la conectividad Machine-to- Machine (M2M). Está enfocado al envío de datos en aplicaciones donde se requiere muy poco ancho de banda. Además, sus características le permiten presumir de tener un consumo realmente bajo así como precisar de muy pocos recursos para su funcionamiento.