TFG: Design and development of a reliable routing protocol for Wireless Sensor Networks

Wireless Sensor Networks, or WSN, is one of the most promising fields of research when talking about Information Technology, as its use and deployment is extended in developing projects related to Internet of Things.

WSN are composed by multiple wireless tiny sensor nodes called motes, which are equipped with a microcontroller and some sensors capable to measure physical data of the parameter to be monitored. They also feature one or several radio antennas, meant to share the gathered data with the rest of the sensor nodes in the network.

Many projects have been developed using WSN, all of them with the common characteristic of the need of sharing data among nodes. This is achieved by the implementation of a network protocol on the nodes.

Different research lines have been followed and scientific papers have been published related to the field of WSN network protocols, most of them focused on the creation of algorithms and theoretical work rather than on field implementation and actual deployment of the network protocol on physical nodes.

multihop
Multihop packet sending between nodes on WSN

The final objective of this thesis is the development of a realiable routing protocol for WSN, which is meant to establish routes among the nodes which later will be used as paths for sending and receiving data. It will be ready to use for stablishing networks on any project based on WSN developed by the B105 Electronic Systems Lab Research Group, regardless of its application or purpose. Multihop will be one of the main features on this routing protocol.

This protocol has been designed to be reliable, customizable and adaptable to the different needs a WSN developer may have. Its code is portable to different motes, and has been developed as a process running within the FreeRTOS operating system, which is node sensor oriented. Besides, the Contiki netstack, Rime, and its customized layer of communication services provided by the B105 Electronic Systems Lab, have been the main sources of primitive communication modules used on the development of this routing protocol.

Pruebas de detección de vehículos en la A-1 para el proyecto Easysafe

El paso día 26 fuimos a realizar pruebas para el proyecto Easysafe. La hubicación de las pruebas la autovía A-1 en el kilómetro 111. En él se realizaros varios test enfocados a la detección de vehículos, personas y fauna en la carretera. Esto se realizó por medio de varios tipos de acelerómetros y un magnetómetro sitiados fuera del asfalto. Como se puede apreciar en las fotografías, los sensores fueron colocados en el quitamiedos, a una distancia bastante lejana de loos vehículos y aun así las medidas han sido satisfactorias. A partir de ahora, el trabajo se centrará en el algoritmo para discriminar el tipo de vehículo, animales y personas.

easysafe

Heimdall y Cerberus, el nuevo dispositivo cognitivo de redes de sensores

En el B105 Electronic Systems Lab siempre estamos desarrollando nuevos dispositivos electrónicos, ya sea para redes de sensores inalámbricas, sistemas empotrados u otras aplicaciones. Esta vez el desarrollo ha sido enfocado a una red de sensores muy versátil, que pueda servir de base para distintos proyectos dentro de nuestro laboratorio. Así, el nodo de esta red está formado por dos PCBs: Heimdall y Cerberus.

Heimdall dispone del microcontrolador STM32, de sensores de temeperatura, dos acelerómtros, leds, pulsadores, conector micro USB y slot de tarjeta micro SD. La otra placa, llamada Cerberus, es la encargada de las comunicaciones inalámbricas. Dispone de tres transceptores radio, dos Spirit1 y un cc2500. De esta manera, el nodo dispone de una gran versatilidad de comunicaciones, pudiendo transmitir en tres bandas ISM (433 MHz, 868 MHz y 2400 MHz).

El objetivo de este desarrollo es que este nodo pueda ser utilizado para distintas aplicaciones de WSNs o radio cognitiva, pero también por los nuevos compañeros que se han unido al B105 para desarrollar sus TFGs o TFMs.

cerberus

heimdall

TFG: DESARROLLO DE UNA APLICACIÓN ANDROID PARA EL CONTROL Y GESTIÓN DE UNA RED INALÁMBRICA DE SENSORES

Las redes inalámbricas de sensores están experimentando un crecimiento en los últimos años, debido a la necesidad cada vez más frecuente de obtener datos de nuestro entorno. Estas redes, al estar enfocadas al bajo consumo, y por tanto muy limitadas en recursos, no tienen una forma sencilla de mostrar sus datos al usuario. Esto provoca la necesidad de una interfaz de usuario cómoda para el manejo de las redes de sensores.

En un anterior proyecto, aplicado a la red de sensores de Prometeo (proyecto finalizado hace varios años, que ayuda a la prevención de incendios forestales) se solucionó este problema desarrollando una pasarela de comunicaciones entre la red y un smartphone. Esta fue una buena solución, ya que la mayoría de las personas llevan un móvil encima, y la red de sensores de Prometeo utiliza radiofrecuencia en sus telecomunicaciones, no accesible por los teléfonos móviles. La pasarela se podía comunicar con la red de sensores por radiofrecuencia, además de disponer de un puerto USB para la comunicación con un dispositivo Android.

Este proyecto parte de las limitaciones que presenta el anterior: la aplicación utilizada era algo inestable e implementaba un protocolo antiguo de la red de Prometeo. Se desarrolla en este proyecto una nueva aplicación Android con un diseño fuertemente modular y flexible para su posible uso en otras redes de sensores. Además, se ha rediseñado la anterior pasarela para que permita una comunicación Bluetooth Low Energy (BLE) en vez de USB.

El desarrollo de este proyecto, después del estudio de las tecnologías a usar, ha tenido lugar a través de los siguientes pasos generales:

  • Diseño y desarrollo de una aplicación Android que permita una conexión USB implementando el nuevo protocolo de Prometeo.
  • Desarrollo de un emulador de la pasarela del anterior proyecto, para que implemente el nuevo protocolo de Prometeo y permita probar la aplicación.
  • Rediseño de la anterior pasarela para que implemente BLE, con su posterior soldadura de componentes y programación del microcontrolador.
  • Dotación de la aplicación Android con la posibilidad de conectarse mediante BLE con la nueva pasarela diseñada.

TFG: DESARROLLO DE UN SISTEMA ELECTRÓNICO E IMPLEMENTACIÓN DE SERVICIOS INTERACTIVOS PARA UN TABLÓN EXPOSITOR SOBRE UNA RED DE SENSORES INALÁMBRICA

En el pasillo del laboratorio del Grupo de Investigación B105 Electronic Systems Lab se encuentra un tablón expositor que cuenta con un sistema de iluminación LED (Light-Emitting Diode). El objetivo de este Trabajo de Fin de Grado es diseñar e implementar un sistema electrónico que ofrezca funcionalidades interactivas para dicho tablón, de forma que los usuarios puedan interactuar con el mismo a través de un conjunto de pulsadores.

Los LEDs del tablón son controlados por los drivers TLC5940 de Texas Instruments. Además, para enviar los datos a estos drivers se emplea un sistema empotrado, el cual se ha decidido que sea una Raspberry Pi 3. Para poder implementar las distintas funcionalidades se ha diseñado una red de sensores inalámbrica (WSN, Wireless Sensor Network) que se comunique con dicho sistema de control.

La WSN está formada por cuatro nodos. Dos de ellos disponen de tres pulsadores de distintos colores, que serán el medio de interacción entre los usuarios y los LEDs. Otro de los nodos dispone de un sensor de presencia para avisar al sistema de que hay alguien cerca del tablón y el nodo restante es el encargado de recibir los mensajes que envían el resto de nodos y comunicarse con la Raspberry Pi 3.

Las tareas realizadas para la consecución del objetivo de este proyecto se detallan a continuación:

  • Se ha diseñado e implementado la WSN, para lo cual se ha realizado tanto el diseño hardware como software de los nodos. En la imagen de la cabecera se muestra uno de estos nodos.
  • Se ha establecido la comunicación entre la red de sensores y el sistema de control mediante UART (Universal Asynchronous Receiver-Transmitter), de forma que cuando al nodo que recibe los datos le llega un mensaje, lo envía a la Raspberry, la cual procesa la información para configurar de forma adecuada los LEDs.
  • Se han programado las distintas funcionalidades interactivas. Concretamente se han desarrollado cuatro: una funcionalidad asociada a la detección de presencia frente al tablón para captar la atención del posible usuario y tres minijuegos, dos de ellos de dos jugadores y uno de un solo jugador.
  • Para facilitar la interacción del usuario con el tablón, se han diseñado unas cajas para almacenar los nodos que disponen de los pulsadores. El resultado final de las mismas se muestra en las siguientes imágenes:
cajaimpresa1
Botonera para el control del tablón LED
cajaimpresa3
Botonera para el control del tablón LED

 

 

 

 

 

 

 

Una vez realizadas todas estas tareas, el sistema se ha puesto en funcionamiento y se encuentra operativo para poder hacer uso de él.