TFG: Diseño, desarrollo e implementación de un sistema de adquisición, almacenamiento y presentación de los datos obtenidos de una red de sensores inalámbricos

800px-Imagen1

El objetivo de este Trabajo Fin de Grado es el diseño e implementación un sistema que adquiera, procese y almacene los datos obtenidos de la WSN y los presente a través de un servidor Web que permita consultar datos en tiempo real y en un histórico, así como envío de parámetros de control, con los que configurar la WSN.

El proyecto se basará en una red de sensores inalámbricos desarrollada de forma simultanea en otro Trabajo Fin de Grado, compuesta por dos tipos de nodos, Prometheus y Boucherot. Los nodos Prometheus se encargarán de medir valores como presencia y temperatura, además de estado de sus baterías, mientras que los Boucherot monitorizarán el consumo de todo dispositivo conectado a ellos. Asimismo, los nodos Boucherot también implementan una serie de actuadores que permiten el encendido y apagado de los aparatos conectados a los mismos. Esta red presenta además una serie de comandos que permiten configurar ciertos parámetros de medida de la red y del estado de sus nodos.

Para la implementación del sistema se ha recurrido a distintas herramientas:

  • Desarrollo de script en Python para adquisición, procesado y almacenamiento en base de datos. Así como el envío de comandos de control a la red inalámbrica. Se han empleado los módulos serial, sqlite3 y pynotify.
  • Desarrollo del servidor Web en Node.js, que sirve paginas con información de la red, información de las medidas en tiempo real y en un histórico, con módulos: socket.io, sqlite3, http-auth entre otros.
  • Diseño de las paginas web que se muestran en el cliente basadas en distintos frameworks como: Bootstrap 3, graficas de HighCharts, y tablas con Datatables y jQuery.

A continuación se muestra una breve descripción de la interfaz del sistema con el usuario, que se realiza a través de una serie de paginas web:

DOMOLabo B105_TrealPágina que muestra dinámicamente las medidas en Tiempo Real tomadas por la WSN

DOMOLabo B105_Hist

Página que muestra Histórico de las medidas tomadas por la WSN

Ambas páginas, constan de una serie de gráficas que muestran las medidas tomadas por la WSN. Cada gráfica agrupa a todos los sensores de un tipo y permite seleccionar los nodos que se desean visualizar en la leyenda. Además permite hacer zoom en la gráfica, bien seleccionando sobre ella o bien pulsando alguno de los botones de la esquina superior izquierda de la gráfica. También es posible exportar datos en distintos formatos, .pdf, .png, .svg, etc. gracias al botón situado en la esquina superior derecha.

DOMOLabo B105_Sensores

Página que muestra información y permite el control de la WSN

Esta pagina consta de una tabla principal donde se muestra información de todos los nodos de la red (identificadores, tipos de sensores presentes, localización del sensor y estado de la batería y de sus actuadores). En la parte inferior de la tabla se encuentra un formulario que permite añadir nuevos sensores al sistema.

En la parte superior de la tabla se presenta un conjunto de botones que permiten el envío de una serie de comandos de control a la red (Relé, Configurar el tiempo que un nodo permanece dormido y en estado activo, actuar sobre el relé y/o los leds, etc.). Estos comandos se envían al nodo AP de la red que se encarga de enviarlos al nodo que corresponda.

También se ha implementado una autenticación de usuarios, para el control de acceso a funciones de configuración de la red y del sistema. Para los usuarios no administradores el aspecto es ligeramente diferente al presentado, ya que las funciones de control están desactivadas y no se permite la incorporación de nuevos sensores al sistema. Sin embargo la tabla es visible y se permite como en el caso anterior consultar e imprimir el estado de la red.

Se ha tenido especial interés en implementar un sistema modular, en el cual la caída de un modulo no imposibilite el normal funcionamiento del resto. Escalable, donde se puedan gestionar múltiples peticiones simultaneas de usuarios con distintos dispositivos y necesidades de consulta. Primando también la versatilidad del sistema respecto a la red de la que se adquieran los datos.

El sistema se ha dimensionado ampliamente para soportar una red con mas de 100 sensores y almacenar datos durante varias décadas, con tiempos de medida de 1 minuto para los sensores.

 

TFG: Implementación de un servicio para entornos inteligentes sobre una red de sensores inalámbricos

Distribucion Nodos

El objetivo de este Trabajo Fin de Grado es desplegar una red de sensores inalámbricos para monitorizar múltiples parámetros en los espacios B104 y B105. Ésto ofrecerá una serie de funcionalidades a los usuarios de los laboratorios, como conocer la ocupación de ciertos puestos de trabajo, el consumo de determinados dispositivos y la temperatura en cada una de sus salas.

El proyecto se basará en una red de sensores inalámbricos previamente desarrollada en el Laboratorio B105, compuesta por dos tipos de nodos, Prometheus y Boucherot. Los nodos Prometheus se encargarán de medir valores como presencia y temperatura, además de estado de sus baterías, mientras que los Boucherot monitorizarán el consumo de todo dispositivo conectado a ellos. Asimismo, los nodos Boucherot también implementan una serie de actuadores que permiten el encendido y apagado de los aparatos conectados a los mismos.

Por otro lado, todas las versiones de Firmware creadas para los nodos se basa en el protocolo de comunicaciones Simpliciti, desarrollado por Texas Instruments. Gracias a este protocolo, el desarrollo del código se simplifica al abstraer todo lo correspondiente a las comunicaciones inalámbricas. Cabe destacar, que uno de los nodos Prometheus implementará una versión de código diferente, ésta tendrá como misión gestionar al resto de los nodos, además de ejecutar los  comandos de gestión de red que pueda recibir.

Plataforma Previa

Los nodos Boucherot son los nodos más voluminosos, al trabajar con altos niveles de potencia.

La red de nodos se ha revisado en profundidad, tanto a nivel software como hardware, modificando al mismo tiempo las carcasas de los nodos Prometheus para facilitar su instalación. Se ha  modelado un brazo de giro que permitirá un ajuste más preciso del haz de cobertura de los sensores de presencia, para optimizar el espacio monitorizado por estos. Además, se ha implementado una hendidura para posibilitar su amarre a la pared gracias a un único tornillo. Se han empleado los programas Tinkercad, para el modelado de las carcasas, y Cura, para la obtención del formato adecuado para su impresión en 3D.

Caja Prometheus Vista 2

Caja Prometheus, Vista 1

Caja Prometheus Vista 1

Caja Prometheus, Vista 2

Asimismo, se ha creado una tapa direccional, la cual se instalará en un número reducido de nodos, que permite monitorizar la presencia en espacios físicos mucho más reducidos. Para ello, se ha creado una estructura cónica que consigue focalizar el haz de detección del sensor de presencia, y de esta forma, cubrir espacios tan acotados como podría ser el puesto de soldadura del laboratorio B105.

Tapa Direccional

Tapa Direccional para nodos Prometheus

Se ha tenido especial interés en intentar que la red sea capaz de autogestionarse. Es decir, que ante un fallo de cobertura , interferencia, o reinicialización de alguno de los nodos, la red sea capaz de reconfigurarse y seguir ofreciendo sus servicios de una forma autónoma.

En base a la naturaleza de las muestras, la red se ha red se ha configurado para que todo nodo tome una muestra por minuto. Ajustando al mismo tiempo, los periodos de bajo consumo de los nodos Prometheus para asegurar una vida útil de más de medio año, antes de tener que recargar o sustituir las baterías de los mismos.

Finalmente, cabe destacar que las tarea de procesar, almacenar y representar gráficamente las muestras obtenidas, además de posibilitar la configuración de la red de forma remota, serán implementados en otro Trabajo Fin de Grado.