¿Cómo puedo interconectar una red LoraWan con MQTT?

8

He estado trabajando en un proyecto que implica crear una red LoraWan usando:

  • Dragino lg01 como una puerta de enlace.
  • Un escudo Arduino Uno y Dragino Lora con un simple sensor de temperatura LM35
  • En cuanto al servidor, he estado buscando algo de código abierto y compatible con LoraWan, he encontrado el servidor Wso2 IoT y he tenido algunos arranques, creo que necesito instalar Apache ActiveMQ JMS Provider con él y no lo hice. saber como.

Para enviar los datos desde la puerta de enlace al servidor, voy a usar MQTT.

En cuanto a la visualización de los datos, voy a crear una aplicación usando AngularJS.

Entonces, el problema que he tenido es que estaba confundido acerca de conectar el nodo al Servidor ya que encontré dos métodos (Activación por aire y Activación por personalización) y ¿afecta cómo se debe programar el Gateway y el servidor?

¿También voy a programar el Gateway para enviar datos al servidor con MQTT o toda la programación ocurre en el Nodo?

Mohamed Achref Dridi
fuente

Respuestas:

10

Imagine su red como un diagrama de Venn donde un conjunto es LoraWan y el otro es MQTT.

ingrese la descripción de la imagen aquí

Los elementos en los conjuntos solo deben saber sobre sus conjuntos.

  • Por lo tanto, los nodos que usan LoraWan (están en el conjunto LoraWan) no tienen que molestarse con MQTT o con el servidor. Simplemente envían / ​​reciben datos hacia / desde la puerta de enlace. El Gateway es el fin de su mundo.
  • El Gateway está en la intersección de los dos conjuntos, LoraWan y MQTT. La parte relacionada con MQTT debe alojarse aquí, ya que este elemento es parte de ambos conjuntos. Su tarea es reenviar los datos recopilados de los nodos de LoraWan al servidor mediante la publicación de los datos de nodo apropiados en un tema MQTT específico. La lógica que distribuye los datos entre los temas MQTT correctos debe implementarse aquí.

  • El servidor podría alojar el agente MQTT tal como está en el conjunto MQTT y no tiene nada que ver con LoraWan.


Si está buscando un servidor compatible con LoraWan y tiene nodos habilitados para LoraWan, entonces no entiendo dónde necesita su puerta de enlace. Se supone que el Gateway proporciona interoperabilidad entre dos redes diferentes. En su caso, entre una red LoraWan y una red TCP / IP o Internet.

Bence Kaulics
fuente
Gracias por el consejo, puedo ver más claramente cómo se va a conectar la red, y para ser sincero, no entendí exactamente qué tipo de servidor voy a usar, así que pensé que debería usar uno que sea compatible con Lorawan, pero Después de un poco de investigación, descubrí que wso2 iot puede funcionar con mqtt y, por lo tanto, puede programarse para recibir datos de la puerta de enlace. ¡Y gracias de nuevo por aclararme todo este asunto!
Mohamed Achref Dridi
1

Un enfoque adoptado por muchas personas es simplemente registrar el (los) nodo (s) y la (s) puerta (s) de entrada con el TTN gratuito ( The Things Network ). TTN hace todo lo necesario para aprovisionar su nodo con las claves LoRaWAN y ABP u OTAA, además de programar realmente el firmware del nodo (probablemente use el Arduino IDE o VSCode + PlatformIO para esto).

Entonces podrá (1) ver los mensajes de su nodo en su consola (así como el tráfico de la puerta de enlace), lo cual es muy útil para la depuración, y también puede (2) suscribirse a los mensajes en su agente MQTT.

El siguiente paso podría ser una instalación de bricolaje de Node-RED, Telegraf y Grafana que le proporcionará un potente banco de pruebas para procesar y también visualizar sus datos.

Por cierto, la puerta de enlace no habla MQTT con el servidor IIRC. Es una especie de JSON sobre UDP.

Todo esto está muy bien documentado en la web.

Stefan
fuente