¿Cómo integrar un gateway LoRA con la plataforma ?

Introducción

La tecnología LoRA es una tecnología de comunicación de área amplia y baja potencia, que opera en la banda de 868 MHz en Europa.

Gracias a un esquema de espectro ensanchado, ofrece una fuerte resistencia y la capacidad de ser decodificada incluso cuando la potencia de la señal es más débil que el nivel de ruido. LoRaWAN es una opción popular de tecnología de red implementada sobre LoRa y tiene una fuerte presencia como tecnología de comunicación habilitadora del IoT.

¿Cómo usar LoRA con Plataforma?

La Plataforma está preparada para recibir mensajes entrantes desde un Gateway LoRA.

En este ejemplo de integración hemos usado un gateway Multitech Conduit Gateway respaldada por Ethernet. Este gateway despliega una red de trabajo completa a su alrededor.

Después de montar correctamente la pasarela siguiendo las instrucciones de Multitech, es necesario estar conectado a la misma red local a la que está conectada la pasarela para acceder a su configuración basada en web. Navegando a la IP del gateway, aparecerá una página web con un login (admin:admin).

 

Navegamos entonces por el menú "APPs" de la izquierda de la pantalla para lanzar node-red:

Configuramos el flujo de node-red para obtener los mensajes del dispositivo y enviarlos a Onesait Platform. Hay tres nodos principales:

  • El nodo "Lora" encapsula una interfaz que recibe datos de los dispositivos LoRaWAN cercanos.

  • Añadimos un nodo de función (llamado "Sofia4C API web encoder") que añade cierta información a la carga útil de los dispositivos y configura el esqueleto requerido por Onesait Platform.

  • Los datos se envían a través de una petición HTTP, como se define en el nodo "HTTP POST".

En este punto, estás pasando a Onesait Platform, en el ejemplo usamos el entorno CloudLab https://lab.onesaitplatform.com/controlpanel/login y accedemos con un usuario con rol de DESARROLLADOR.

La integración necesita que crees los elementos necesarios en la plataforma para acomodar correctamente los datos entrantes de LoRaWAN. Estos elementos son los mínimos necesarios para lograr esta integración:

  1. Una ontología que se ajuste a un modelo de datos común.

  2. Una API que actúe como punto final de los datos entrantes.

Para el proceso de creación de la ontología, navega hasta el menú de modelado de datos y construye la ontología basada en EmptyBase. La llamamos LoRaWAN_RAW (recuerda que en un mismo entorno no puede haber dos ontologías con el mismo nombre, así que, si estás siguiendo el tutorial en el CloudLab, puede que tengas que usar otro nombre o añadir tus iniciales al final):

Para el proceso de creación de la API, navega hasta el menú del gestor de APIs (API Manager) y crea una nueva API, usando al menos una operación INSERT:

 


Después de estos pasos, todos los requisitos mínimos están establecidos. Vuelve a Node-red y establece el nodo de función "Sofia4C API web encoder" y los nodos "HTTP POST".

  • El nodo de función genera la plantilla de mensaje requerida. Este nodo añade el nombre de la ontología a la carga útil (payload) para cumplir con el esquema JSON. También añade dos cabeceras necesarias, "content type" (application/json) y "x-sofia2-apikey" (token de seguridad de los tokens del API Manager).

  • El nodo "HTTP POST" se configura con los datos de la API creada. Debería tener el siguiente aspecto:

Ahora que todo está configurado, podemos comprobar los nuevos datos componiendo una consulta sencilla sobre la ontología LoRaWAN_RAW:


Con la integración hecha, se pueden aprovechar los datos utilizando las herramientas de la plataforma. En esta ocasión, vamos a configurar un Dashboard con un gráfico de líneas para mostrar el RSSI. Éstos son los pasos a seguir:

  • Crear una fuentes de datos (Datasource) consultando la Ontología LoRaWAN_RAW.

  • Configura un gráfico de líneas utilizando la fuente de datos anterior.