LoRaWan+NB-IOT

Met de nieuwe firmware 2.3.1(150) kunnen nu ook LoRaWan, NB-IOT en andere externe sensoren worden geïntegreerd.

Voorwaarde is echter dat zij hun sensordata overdragen aan een MQTT-makelaar, OpenSprinkler kunnen deze vervolgens abonneren als sensordata.

De sensor is geïntegreerd met zijn “onderwerp” en een tekst/JSON-filter. De watergeefcontroller kan deze waarde vervolgens gebruiken.

aansluitmogelijkheden

Hoe het werkt:

  • LoRa WAN-sensoren worden, afhankelijk van de versie, binnen de straal van een LoRa WAN-hub geplaatst met een bereik tot 10 km. Je bedient de LoRa WAN hub, ook wel gateway genoemd, zelf en sluit hem aan op je netwerk
  • NB-IoT-sensoren worden geïntegreerd via het providerportaal. Omdat NB-IoT via het mobiele netwerk werkt, kan de sensor overal worden geplaatst – op voorwaarde dat er ontvangst is.
  • Activeer in het gateway- of providerportaal de MQTT-functie en gebruik deze om de sensorgegevens te exporteren. Afhankelijk van de versie kan een verdere implementatie met een IoT-managementtool zoals ChirpStack nodig zijn, die de ‘kale’ sensorgegevens omzet in evalueerbare gegevens.
  • In OpenSprinkler sluit deze aan via de MQTT opties en maak vervolgens een nieuwe sensor aan van het type “MQTT Subscription”.
  • Voer de abonnementsgegevens en het gegevensfilter in de sensor in.
  • Compleet! Zodra gegevens worden ontvangen, worden de waarden weergegeven en opgeslagen.

Sensorconfiguratie in detail

De twee MQTT-sensoren zijn rood gemarkeerd. De overige sensoren zijn geïntegreerd via het analoge sensorbord

 

Analoge sensor150 1

Sensor bewerken

Door op “Sensor toevoegen” of op de naam van een bestaande sensor te klikken, krijgt u de volgende editor:

Analoge sensor150 2

Dit voorbeeld toont een CHIRPSTACK-integratie van MQTT-gegevens. De structuur is als volgt gedefinieerd:

sollicitatie/ /apparaat/ /evenement/omhoog

Je kunt de mogelijke waarden het beste bekijken met behulp van een tool, zoals MQTT Explorer. Het is vaak verwarrend, vooral voor beginners, dat er niets wordt weergegeven in de MQTT Explorer. Omdat de sensordata slechts elke 10 minuten binnenkomt (afhankelijk van de configuratie), hoef je de MQTT Explorer simpelweg even te verlaten.

Voer bij het veld MQTT-filter de naam in van het veld dat moet worden gelezen. In CHIRPSTACK kun je de velden zien uitlezen onder “Apparaatprofielen” / “Metingen”. Als hier niets verschijnt, moet u eerst een script opslaan in het tabblad “CODEC”, de sjablonen kunnen hier helpen of u kunt dit aan de sensorfabrikant vragen.

Waarom LoRaWAN of NB-IoT en geen Wi-Fi of Bluetooth?

Het grootste probleem met sensoren is dat ze stroom nodig hebben. Als je een stroomkabel kunt leggen, kun je meestal ook een datakabel leggen. Maar als dit niet mogelijk is, hoe sluit je deze sensoren dan aan?

Om deze vraag te beantwoorden, hebben we enkele experimenten uitgevoerd en de resultaten hier gepresenteerd.

  • Bluetooth valt uit, het bereik is simpelweg te kort.
  • Er kan gebruik worden gemaakt van WiFi, maar het stroomverbruik is zo hoog dat je ofwel elke 4 weken de batterijen moet vervangen, ofwel enorme batterijen nodig hebt. Met fotovoltaïsche energie kan dit ook verbeterd worden, maar dan heb je al hoge investeringskosten per sensor. Bovendien bestaat er bij montage buitenshuis een zeker risico op materiële schade.
  • LoRaWAN is hier geschikter omdat de batterijen lang meegaan en vaak wel 10 jaar meegaan. Het bereik buitenshuis kan maximaal 10 km bedragen (open veld, stedelijke gebieden ca. 2 km). Omdat LoRaWAN licentievrij kan worden gebruikt, zijn er slechts eenmalige kosten.
  • NB-IoT is ook zeer geschikt als er voldoende mobiele telefoondekking is. Dit betekent dat het bereik vrijwel ‘oneindig’ is, omdat de sensorgegevens worden aangeleverd aan een clouddienst. Er zijn echter doorlopende kosten

Realisatie en testen

Voor onze test hebben we een Milesight UG65-868M als LoRaWAN-gateway gebruikt, evenals een Dragino LSE01 en een Milesight EM-500 SMTC bodemvochtsensoren. Omdat de UG65 met de laatste update ook een MQTT-broker kan activeren (ChirpStack-common moet geactiveerd zijn), kan deze als onafhankelijke MQTT-server worden aangesloten.

Beide sensoren kunnen niet alleen bodemvocht meten, maar ook bodemtemperatuur en diëlektrische geleidbaarheid (permittiviteit). Vooral deze laatste waarde is voor de agrarische sector van groot belang, omdat deze ook gebruikt kan worden om het mestgehalte van de bodem te bepalen.

Img 20240318 183612

De Milesight UG65 heeft de stroomaansluitingen aan de achterkant en is te bedienen via POE. Ook beschikt hij over WiFi en kan hij zelfs als access point dienen. Andere antennes en een LTE-module zijn ook als optie verkrijgbaar.

Img 20240318 183633

De Milesight EM-500 SMTC is meer dan alleen een bodemvochtsensor. Het kan de bodemtemperatuur en permittiviteit meten. Het bestaat uit twee componenten die met een kabel met elkaar zijn verbonden. De bovengrond is de zender, de ondergrond is de eigenlijke sensor. Er wordt een masthouder meegeleverd.

Lse01 10

De Dragino LSE01 is vergelijkbaar met de EM500, maar kan ook bodemvocht, temperatuur en permittiviteit meten. Alle Dragino-sensoren lijken op elkaar, alle producten hebben dezelfde zender.

TjilpStack

Bij het instellen van Chirpstack is het belangrijk om eerst profielen voor de sensoren in te stellen (“Device Profiles”). Hier registreert u de sensoren met hun algemene apparaatgegevens. U kunt de standaardinstellingen selecteren met de functie “Selecteer apparaatprofielsjabloon”. Deze gehele configuratie is nodig zodat de binaire sensorgegevens kunnen worden omgezet in leesbare waarden. Daarom is de functie “Codec” ook hier de belangrijkste functie.

Het duurde echter een tijdje voordat ik besefte dat deze codecspecificaties verouderd waren. De huidige codecs zijn hier te vinden:

Milesight: https://github.com/Milesight-IoT/SensorDecoders

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

Om dit te doen, selecteert u eenvoudig de juiste sensor, downloadt u het bestand voor ChirpStack, opent u het met een editor en plakt u het in het codecveld.

Maak vervolgens een “Applicatie” aan en voer de sensoren in onder “Apparaten”. Ook is het belangrijk om de JOIN-gegevens van de sensoren te kennen; deze staan ​​meestal afgedrukt op de apparaten, op het typeplaatje, in het apparaat zelf of in de bijbehorende documenten.

Nu alles is ingesteld, moet je de JOIN op de sensoren activeren. Dit proces verbindt eerst de sensor met uw gateway - anders zou iedereen uw sensoren kunnen bedienen. U kunt dit doen met een APP (Milesight heeft de “Toolbox” APP) of u opent het apparaat en drukt op een speciale JOIN-knop. Soms hoeft u alleen maar even de batterij te verwijderen en aan te sluiten, waarna het JOIN-proces wordt geactiveerd.

Dragino Chirpstack

De gegevens zouden nu in ChirpStack moeten aankomen. Maar wees geduldig, de sensoren zenden slechts elke 10 minuten een signaal uit, dus dit kan enige tijd duren.

MQTT

Chirpstack heeft een eigen MQTT-broker, maar u kunt ook uw eigen MQTT gebruiken. Om de gegevens van de Chirpstack MQTT-makelaar te ontvangen, heb ik een MQTT-bridge opgezet en alles doorgestuurd. Het benodigde programma hiervoor heet “Mosquitto”

De forwarder.conf in de map /etc/mosquitto/conf.d ziet er voor mij als volgt uit:

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

waarbij 192.168.0.50:1884 het IP-adres en de poort van de Chirpstack MQTT-makelaar is

 

 

Binnenkort meer details. Firmware beschikbaar vanaf april 2024. TESTER GEZOCHT!

Laat een bericht achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met * markiert

Deze website gebruikt Akismet om spam te verminderen. Meer informatie over hoe uw reactiegegevens worden verwerkt.