DISEÑO Y DESPLIEGUE DE UNA RED INALÁMBRICA DE SENSORES COGNITIVA, ROBUSTA Y ESCALABLE

network

Durante los últimos años se ha observado un notable incremento en la penetración de las redes inalámbricas en nuestra sociedad, teniendo previsiones de crecimiento bastante elevadas con la irrupción de Internet de las Cosas (IoT). Sin embargo, esta interconexión masiva desemboca en la aparición de problemas como son principalmente la saturación del espectro radioeléctrico o las interferencias provocadas entre sistemas, lo que repercute en la calidad del servicio y por lo tanto supone un problema para la conexión de elementos.

El B105 lab tiene como una de sus líneas principales de investigación el desarrollo de redes inalámbricas de sensores cognitivas (CWSN, Cognitive Wireless Sensor Networks), es decir, redes compuestas por dispositivos con la capacidad de modificar sus parámetros de comunicación dinámicamente, seleccionando las zonas del espectro con menos ruido e interferencias y por consiguiente, capaces de optimizar las prestaciones globales de la red.

Proyectos anteriores se centraron en el estudio de estos dispositivos, desarrollando la plataforma cNGD (cognitive New Generation Device). Se trata de un nodo que incluye la torre de protocolos de Microchip, que fue modificada para poder albergar tres transceptores radio, consiguiendo trabajar simultáneamente en las bandas de libre acceso de 434, 868 y 2400 MHz.

Plataforma cNGD sobre la que se ha trabajado
Plataforma cNGD sobre la que se ha trabajado

Este Trabajo Fin de Grado los adopta como base y se centra en diseñar e implementar distintas funcionalidades en la actual pila de protocolos, con el objetivo de conseguir interconectar varios cNGDs bajo un modelo de red de tipo malla fiable, robusto y escalable. Estos mecanismos se deben adaptar al tipo de dispositivo, el orden de su llegada a la red y a la frecuencia de trabajo.  Los principales requisitos que se han impuesto en el diseño de la red son:

  • Aceptar a todos los dispositivos que deseen incorporarse mientras la red disponga de capacidad para registrarlos.
  • Garantizar la unicidad en la asignación de la direcciones de red,  para posteriormente, poder realizar correctamente el encaminamiento de paquetes.
  • Que los coordinadores de red sepan reaccionar ante variaciones en la estructura de la red (principalmente conexión y desconexión de coordinadores).
  • Asegurar un máximo de 4 saltos en el encaminamiento de paquetes hasta alcanzar al destinatario.
  • Otros: Inclusión de mecanismos de fiabilidad en las transmisiones de mensajes, no inundar la red con la emisión de paquetes broadcast o informar a las capas superiores del éxito o fracaso en la realización de las operaciones.

Tras la etapa de implementación, modificación y adaptación del software del cNGD, se ha procedido a desplegar la red, midiendo y analizando los resultados obtenidos. Efectivamente, se han cumplido los requisitos impuestos, es decir, se ha conseguido la interconexión de varios cNGDs bajo un modelo de red robusto y fiable, que puede servir de soporte para futuras líneas de trabajo que se centren en las capas de aplicación o en la capa cognitiva del cNGD.

 

TFG: DESARROLLO DE UNA INTERFAZ INALÁMBRICA IEEE 802.11 PARA LA IMPLEMENTACIÓN DE FUNCIONALIDADES DE UN NODO PASARELA PARA UNA RED INALÁMBRICA DE SENSORES COGNITIVA

wifiPCBWEB

Las redes cognitivas de sensores, CWSN por sus siglas en inglés (Cognitive Wireless Sensor Network) son capaces de modificar sus parámetros de transmisión y recepción, adaptándose a las variaciones del entorno, permitiendo optimizar la comunicación. Estas redes son capaces, por ejemplo, de modificar la modulación, la velocidad de transmisión o la frecuencia de emisión, recurriendo a las bandas menos saturadas y por tanto, optimizando la comunicación. Estas redes además, suelen contar con numerosos sensores, algunos de ellos usados para obtener información del entorno y otros empleados en la propia optimización de la comunicación.

Como indica el título del proyecto, durante el mismo se ha trabajo en la mejora del banco de pruebas para redes inalámbricas de sensores cognitivas del B105, conocido como TestBed cNGD, donde cNGD  son las siglas de cognitive New Generation Device, nombre que reciben los nodos que conforman esta red cognitiva.

cNGD

Fotografía de un nodo cNGD

El proyecto se ha centrado en el diseño de un nodo pasarela, que permite una comunicación sencilla entre un ordenador y la CWSN, pudiendo obtener información de ésta. El diseño de este nodo se ha basado en el estándar IEEE 802.11 ya que está muy extendido y existen numerosos dispositivos que lo implementan.

Para diseñar este nodo pasarela, se ha recurrido a las cabeceras de expansión del cNGD, que permiten la colocación de distintos módulos que aumentan sus funcionalidades. Se ha creado, por tanto, un nuevo módulo Wi-Fi compatible con dichos pines. Durante este proyecto se ha realizado tanto el diseño del mismo como la implementación en circuito impreso.

Para que este módulo de expansión sea capaz de funcionar en los nodos, ha sido necesario crear software nuevo propio para el módulo, así como modificar el software del cNGD, añadiendo nuevas funciones, modificando las ya existentes y eliminado las que se han quedado obsoletas.

A día de hoy, aún faltan por realizar algunas pruebas, ¡¡pero la implementación parece ser todo un éxito!!

El módulo de expansión Wi-Fi es el que aparece al principio de esta publicación.

Para dotar a este nodo, y en general, a cualquier nodo de mayor movilidad, se ha realizado también el diseño e implementación de un sistema de carga de baterías de litio. Este módulo de expansión permite actualizar la antigua alimentación a pilas, a una basada en baterías de litio recargables, más cómoda y eficiente. Este sistema de carga, igual que ocurre con el módulo Wi-Fi, hace uso de los pines de expansión con los que cuenta el nodo. El módulo, es capaz de cargar la batería desde diferentes fuentes de alimentación y permite simultáneamente alimentación y carga. Este módulo se puede usar en cualquier nodo de la red sin que sean necesarias modificaciones.

Las pruebas para este módulo sí que se han realizado ya y se ha comportado según lo esperado, por lo que se puede dar por finalizado el mismo y realizar el montaje para que todos los nodos de la red dispongan de un cargador.


ChargerPCB

Módulo de expansión cargador de baterías

 

TFG: Diseño, desarrollo e implementación de una red de sensores inalámbrica orientada a la monitorización de un futbolín

Futbolin

El futbolín del B105 Electronic Systems Laboratory dispone de una Raspberry Pi que incluye un sistema desarrollado por Nicanor Romero (más información aquí). La interacción con dicho sistema es completamente manual, siendo el usuario el que tiene que introducir todos los eventos generados durante la partida a través de una pantalla táctil. Por lo tanto, se requiere un nuevo sistema capaz de interactuar con el anterior para monitorizar el futbolín y automatizar ciertas tareas.

Aquí es donde entra en juego el presente TFG, en el que se ha desarrollado una red de sensores inalámbrica orientada al bajo consumo y a la flexibilidad. Cada nodo de la red se comunica vía radio con la Raspberry Pi, que actúa como nodo central de la red, recibe las notificaciones y actúa en consecuencia.

Dichos nodos incluyen varios sensores y actuadores que permiten ofrecer al usuario una serie de nuevas funcionalidades que se describen a continuación:

  • Detección automática de goles durante la partida. Se han desarrollado sensores de infrarrojos para su colocación en los carriles por donde bajan las bolas en el interior del futbolín.
  • Identificación biométrica. Se ha incluido un lector de huellas dactilares para la identificación automática  de los usuarios en el sistema.
  • Iluminación de las porterías. Se iluminan por medio de unas tiras de LEDs RGB, variando su color en función del resultado del marcador en cada momento.
  • Liberación automática de bolas. Cuando los sensores infrarrojos detecten que se han acabado las bolas del cajón, un servomotor tirará de la palanca para permitir su liberación.

Además para proteger a los nodos del polvo en el interior del futbolín así como para permitir una correcta sujeción de los sensores y evitar posibles medidas erróneas, se han diseñado los siguientes modelos para su impresión en 3D:

caja-nodos sensor-goles sensor-bolas

Finalmente se desarrolló una aplicación para Windows 10 para comprobar el correcto funcionamiento del sistema y demostrar la portabilidad del mismo. La siguiente imagen muestra la interfaz gráfica de la aplicación:

App Windows 10

 

Se ha desarrollado un sistema flexible, modular, orientado al bajo consumo y  en el que se pueden introducir mejoras fácilmente. De esta forma se podrá aumentar cada vez más la experiencia de juego de los usuarios del futbolín.

 

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.

TFG: Diseño e implementación de una pasarela de comunicaciones entre un teléfono móvil inteligente y una red de sensores inalámbricos

IMG_8399

El objetivo de este Trabajo Fin de Grado es el diseño e implementación de una pasarela de comunicaciones entre un teléfono móvil inteligente y una WSN. Esta pasarela de comunicaciones, llamada Portable Gateway Node (PGN), permitirá la conexión con un teléfono móvil a través de USB y la conexión con una WSN a través de una interfaz de RF.

Tras el diseño del PGN, el layout de la PCB de este sistema ha sido desarrollado utilizando la herramienta Altium Designer. Posteriormente, los componentes seleccionados fueron soldados y se realizaron las pruebas necesarias al HW de este sistema. Además, una caja impresa en 3D ha sido desarrollada utilizando la herramienta online Tinkercad.

Por otra parte, una aplicación para el S.O. Android ha sido desarrollada para permitir la comunicación con el PGN, y de esta manera, con la WSN. Esta aplicación permitirá conectarse a un dispositivo USB, el PGN en nuestro escenario, y posteriormente permitirá al usuario enviar y recibir mensajes de dicho dispositivo. Esta aplicación, llamada PGN Network Manager, ha sido desarrollada en Java utilizando la herramienta Android Studio.

Para realizar las pruebas al sistema desarrollado se han utilizado los nodos Prometeo, una WSN desarrollada en el B105 para un proyecto anterior y que han sido utilizados para poder testear nuestro sistema. Tanto el PGN como los nodos Prometeo han sido programados para utilizar el protocolo de red SimpliciTI. Dicho protocolo es un protocolo de red sencillo y enfocado a WSN de bajo consumo desarrollado y ofrecido por Texas Instruments.

El escenario de test ha demostrado que el proyecto ha sido un éxito, permitiendo la conexión a una WSN de forma remota a través de un smartphone.

IMG_20150706_152310