LoRaWan+NB-IOT+MQTT

Con el nuevo firmware 2.3.1(150), ahora también se pueden integrar LoRaWan, NB-IOT y otros sensores externos.

Sin embargo, el requisito previo es que entreguen los datos de sus sensores a un corredor MQTT; OpenSprinkler puede entonces suscribirse a estos como datos del sensor.

Der Sensor wird dabei mit seinem “Topic” und einem Text/JSON Filter eingebunden. Die Bewässerungssteuerung kann diesen Wert dann verwenden.

Opciones de conexión

Así es como funciona:

  • Los sensores LoRa WAN se colocan dentro del radio de un concentrador LoRa WAN, según la versión, con un alcance de hasta 10 km. Usted mismo opera el concentrador WAN LoRa, también llamado puerta de enlace, y lo conecta a su red.
  • Los sensores NB-IoT se integran a través del portal de proveedores. Dado que NB-IoT funciona a través de la red celular, el sensor puede ubicarse en cualquier lugar, siempre que haya recepción.
  • Im Gateway oder Anbieterportal aktivieren Sie die MQTT Funktion und exportieren damit die Sensordaten. Je nach Ausführung ist eventuell eine weitere Umsetzung mit einem IoT Verwaltungstool wie z.B. ChirpStack notwendig, welcher die “nackten” Sensordaten in auswertbare Daten konvertiert.
  • In OpenSprinkler verbinden Sie diesen über die MQTT Optionen und erstellen dann einen neuen Sensor vom Typ “MQTT Subscription”.
  • Ingrese la información de suscripción y el filtro de datos en el sensor.
  • ¡Completo! Tan pronto como se reciben los datos, los valores se muestran y guardan.

Configuración del sensor en detalle

Los dos sensores MQTT están marcados en rojo. Los demás sensores se integran a través de la placa de sensores analógicos.

 

Sensor analógico150 1

Editar sensor

Mit dem Klick auf “Sensor hinzufügen” bzw auf den Namen eines bestehenden Sensors kommt man folgenden Editor:

Sensor analógico150 2

Este ejemplo muestra una integración CHIRPSTACK de datos MQTT. La estructura se define de la siguiente manera:

aplicación/<id-aplicación>/dispositivo/<id-dispositivo>/event/up

Lo mejor es observar los valores posibles utilizando una herramienta, como MQTT Explorer. A menudo resulta confuso, especialmente para los principiantes, que no se muestre nada en el Explorador MQTT. Debido a que los datos del sensor solo llegan cada 10 minutos (dependiendo de la configuración), simplemente debes dejar el MQTT Explorer por un tiempo.

Für das Feld MQTT Filter geben Sie den Namen des Feldes an, welches ausgelesen werden soll. Im CHIRPSTACK kann man unter “Device Profiles” / “Measurements” die ausgelesenen Felder erkennen. Falls hier nichts erscheint, müssen Sie zuerst ein Script im Reiter “CODEC” hinterlegen, hier helfen die Vorlagen oder man fragt den Hersteller des Sensors.

¿Por qué LoRaWAN o NB-IoT y no Wi-Fi o Bluetooth?

El mayor problema de los sensores es que requieren energía. Si puede tender un cable de alimentación, normalmente también podrá tender un cable de datos. Pero si esto no es posible ¿cómo se conectan estos sensores?

Para responder a esta pregunta, hicimos algunos experimentos y presentamos los resultados aquí.

  • El Bluetooth falla, el alcance es simplemente demasiado corto (a menos, por supuesto, que las plantas se encuentren a menos de 10 m). ver aquí)
  • Se puede usar WiFi, pero el consumo de energía es tan alto que hay que cambiar las baterías cada 4 semanas o se necesitan baterías enormes. Esto también se puede mejorar con la energía fotovoltaica, pero entonces ya se generan elevados costes de inversión por sensor. Además, en caso de instalación en el exterior existe cierto riesgo de daños materiales.
  • LoRaWAN es más adecuado en este caso porque las baterías son duraderas y suelen durar hasta 10 años. El alcance al aire libre puede ser de hasta 10 km (campo abierto, áreas urbanas aproximadamente 2 km). Dado que LoRaWAN puede funcionar sin licencia, solo existen costes únicos.
  • NB-IoT ist ebenfalls sehr gut geeignet, wenn eine entsprechende Mobilfunkabdeckung besteht. Dadurch ist die Reichweite quasi “unendlich”, da die Sensordaten an einen Cloud-Dienst geliefert werden. Hierbei entstehen jedoch laufende Kosten

Realización y prueba

Para nuestra prueba utilizamos un Milesight UG65-868M como puerta de enlace LoRaWAN, así como un sensor de humedad del suelo Dragino LSE01 y un Milesight EM-500 SMTC. Dado que el UG65 también puede activar un broker MQTT con la última actualización (debe estar activado ChirpStack-common), se puede conectar como un servidor MQTT independiente.

Ambos sensores pueden medir no sólo la humedad del suelo, sino también la temperatura del suelo y la conductividad dieléctrica (permisividad). Este último valor es especialmente importante para el sector agrícola, ya que con él también se puede determinar el contenido de fertilizante en el suelo.

Img 20240318 183612

El Milesight UG65 tiene las conexiones de alimentación en la parte posterior y puede funcionar mediante POE. También dispone de WiFi e incluso puede servir como punto de acceso. También están disponibles como opciones otras antenas y un módulo LTE.

img 20240318 183633

El Milesight EM-500 SMTC es más que un simple sensor de humedad del suelo. Puede medir la temperatura del suelo y la permitividad. Consta de dos componentes que están conectados con un cable. La superficie es el transmisor, el subsuelo es el sensor real. Se incluye un soporte para mástil.

Lse01 10

El Dragino LSE01 es similar al EM500, también puede medir la humedad, la temperatura y la permitividad del suelo. Todos los sensores Dragino parecen similares, todos los productos tienen el mismo transmisor.

Pila de chirridos

Bei der Einrichtung von Chirpstack ist es wichtig, dass man erst einmal Profile für die Sensoren einrichtet (Punkt “Device Profiles”). Hier erfasst man die Sensoren mit ihren allgemeinen Gerätedaten. Mit der Funktion “Select device-profile template” kann man die Vorgaben auswählen. Diese ganze Konfiguration ist notwendig, damit eben die binären Sensordaten in lesbare Werte umgewandelt werden können. Daher ist die Funktion “Codec” auch die wichtigste Funktion hier.

Sin embargo, me tomó un tiempo darme cuenta de que estas especificaciones de códec estaban desactualizadas. Los códecs actuales se pueden encontrar aquí:

Vista de millas: https://github.com/Milesight-IoT/SensorDecoders

dragino: https://github.com/dragino/dragino-end-node-decoder

Para hacer esto, simplemente seleccione el sensor correcto, descargue el archivo de ChirpStack, ábralo con un editor y péguelo en el campo del códec.

Als nächstes erstellt man eine “Application” und trägt die Sensoren unter “Devices” ein. Hier ist nun auch wichtig, die JOIN-Daten der Sensoren zu kennen, diese befinden sich meistens auf den Geräten aufgedruckt, auf dem Typenschild, im Geräte selber oder in den Begleitpapieren.

Wenn jetzt alles eingerichtet ist, so muss man das JOIN an den Sensoren auslösen. Dieser Vorgang verbindet erst den Sensor mit ihrem Gateway – sonst könnte ja jeder ihre Sensoren steuern. Entweder geht das mit einer APP (bei Milesight gibt es die “Toolbox” APP) oder man öffnet das Gerät und drückt eine spezielle JOIN Taste. Manchmal muss auch nur die Batterie kurz abziehen und anstecken, dann wird auch der JOIN Vorgang ausgelöst.

Chirpstack de Dragino

Los datos ahora deberían llegar a ChirpStack. Pero tenga paciencia, los sensores solo envían una señal cada 10 minutos, por lo que esto puede llevar tiempo.

MQTT

Chirpstack hat einen eigenen MQTT Broker, alternativ kann man aber auch einen eigenen MQTT verwenden. Damit dieser die Daten des Chirpstack MQTT broker erhält, habe ich eine MQTT bridge eingerichtet und alles weitergeleitet. Das notwendige Programm dafür hat den Namen “Mosquitto”

El forwarder.conf en la carpeta /etc/mosquitto/conf.d se ve así para mí:

connection bridge-01
address 192.168.0.50:1884
topic # out 0
topic # in 0

donde 192.168.0.50:1884 es la IP y el puerto del broker Chirpstack MQTT

Una vez que todo esté configurado, los valores deberían aparecer automáticamente en OpenSprinkler como se muestra arriba. Configure ahora un ajuste de programa para este sensor, p. como esto:

Ajuste del programa1

Esto mantiene el riego entre un 10% y un 20% de humedad del suelo. El ajuste del riego es de 0 a 200%.

 

5 comentarios de “LoRaWan+NB-IOT+MQTT

    • Administración dados:

      Por supuesto, esto también funciona con otras puertas de enlace LoRaWAN. Dado que la integración se realiza a través de MQTT, se puede utilizar cualquier dispositivo compatible.

  1. andrea dados:

    Leider fehlt bei der Firmware 2.3.1 (164) bei Auswahl von “MQTT Subscription” die Felder MQTT Topic/MQTT Filter/Unit 🙁
    Incluso cambiar el navegador no cambió nada. ¿Es este un error conocido?

Deja una respuesta

La dirección del cable electrónico no es pública. Los campos obligatorios están marcados con *

Este es el Akismet de EE. UU. para reducir el spam. Después podrás proceder a los datos de los comentarios.