LoRaWan+NB-IOT

Med den nya firmware 2.3.1(150) kan LoRaWan, NB-IOT och andra externa sensorer nu också integreras.

Förutsättningen är dock att de lämnar över sina sensordata till en MQTT-mäklare, OpenSprinkler kan sedan prenumerera på detta som sensordata.

Sensorn är integrerad med sitt "ämne" och ett text/JSON-filter. Bevattningsregulatorn kan sedan använda detta värde.

anslutningsalternativ

Hur det fungerar:

  • LoRa WAN-sensorer placeras inom radien av ett LoRa WAN-nav, beroende på version, med en räckvidd på upp till 10 km. Du driver själv LoRa WAN-hubben, även kallad gateway, och ansluter den till ditt nätverk
  • NB-IoT-sensorer integreras via leverantörsportalen. Eftersom NB-IoT fungerar över mobilnätet kan sensorn placeras var som helst – förutsatt att det finns mottagning.
  • I gatewayen eller leverantörsportalen, aktivera MQTT-funktionen och använd den för att exportera sensordata. Beroende på version kan ytterligare implementering med ett IoT-hanteringsverktyg som ChirpStack vara nödvändigt, som omvandlar den "blotta" sensordatan till utvärderbar data.
  • In OpenSprinkler anslut detta via MQTT-alternativen och skapa sedan en ny sensor av typen "MQTT-abonnemang".
  • Ange abonnemangsinformationen och datafiltret i sensorn.
  • Komplett! Så snart data tas emot visas och sparas värdena.

Sensorkonfiguration i detalj

De två MQTT-sensorerna är rödmarkerade. De andra sensorerna är integrerade via det analoga sensorkortet

 

Analog sensor150 1

Redigera sensor

Genom att klicka på "Lägg till sensor" eller på namnet på en befintlig sensor får du följande editor:

Analog sensor150 2

Det här exemplet visar en CHIRPSTACK-integrering av MQTT-data. Strukturen definieras enligt följande:

Ansökan/ /enhet/ /händelse/upp

Det är bäst att titta på möjliga värden med hjälp av ett verktyg, som MQTT Explorer. Det är ofta förvirrande, särskilt för nybörjare, att ingenting visas i MQTT Explorer. Eftersom sensordata bara kommer var 10:e minut (beroende på konfigurationen) måste du helt enkelt lämna MQTT Explorer ett tag.

För fältet MQTT-filter anger du namnet på fältet som ska läsas. I CHIRPSTACK kan du se fälten utlästa under "Enhetsprofiler" / "Mätningar". Om inget visas här måste du först spara ett skript på fliken "CODEC", mallarna kan hjälpa till här eller så kan du fråga tillverkaren av sensorn.

Varför LoRaWAN eller NB-IoT och inte Wi-Fi eller Bluetooth?

Det största problemet med sensorer är att de kräver ström. Kan man dra en strömkabel så kan man oftast också dra en datakabel. Men om detta inte är möjligt, hur ansluter man dessa sensorer?

För att svara på denna fråga gjorde vi några experiment och presenterar resultaten här.

  • Bluetooth misslyckas, räckvidden är helt enkelt för kort.
  • WiFi kan användas, men strömförbrukningen är så hög att du antingen måste byta batterier var 4:e vecka eller så behöver du enorma batterier. Detta kan även förbättras med solceller, men då har du redan höga investeringskostnader per sensor. Dessutom finns det en viss risk för sakskador vid utomhusinstallation.
  • LoRaWAN är mer lämplig här eftersom batterierna håller länge och håller ofta upp till 10 år. Räckvidden utomhus kan vara upp till 10 km (öppet fält, tätort ca 2 km). Eftersom LoRaWAN kan drivas licensfritt tillkommer endast engångskostnader.
  • NB-IoT är också mycket lämpligt om det finns lämplig mobiltäckning. Detta innebär att räckvidden är praktiskt taget "oändlig" eftersom sensordata levereras till en molntjänst. Det finns dock löpande kostnader

Realisering och testning

För vårt test använde vi en Milesight UG65-868M som en LoRaWAN-gateway, samt en Dragino LSE01 och en Milesight EM-500 SMTC jordfuktighetssensorer. Eftersom UG65 även kan aktivera en MQTT-mäklare med den senaste uppdateringen (ChirpStack-common måste aktiveras) kan den anslutas som en oberoende MQTT-server.

Båda sensorerna kan mäta inte bara markfuktighet, utan även marktemperatur och dielektrisk konduktivitet (permittivitet). Särskilt det sista värdet är mycket viktigt för jordbrukssektorn, eftersom det också kan användas för att bestämma gödselhalten i jorden.

Bild 20240318 183612

Milesight UG65 har strömanslutningarna på baksidan och kan manövreras via POE. Den har även WiFi och kan till och med fungera som en åtkomstpunkt. Andra antenner och en LTE-modul finns också som tillval.

Bild 20240318 183633

Milesight EM-500 SMTC är mer än bara en jordfuktighetssensor. Den kan mäta jordtemperatur och permittivitet. Den består av två komponenter som är anslutna med en kabel. Ovan jord är sändaren, underjorden är själva sensorn. En masthållare medföljer.

Lse01 10

Dragino LSE01 liknar EM500, den kan även mäta markfuktighet, temperatur och permittivitet. Alla Dragino-sensorer verkar vara lika, alla produkter har samma sändare.

ChirpStack

När du ställer in Chirpstack är det viktigt att först ställa in profiler för sensorerna ("Enhetsprofiler"). Här registrerar du sensorerna med deras allmänna enhetsdata. Du kan välja standardinställningarna med funktionen "Välj enhetsprofilmall". Hela denna konfiguration är nödvändig för att binära sensordata ska kunna omvandlas till läsbara värden. Därför är "Codec"-funktionen också den viktigaste funktionen här.

Det tog mig dock ett tag att inse att dessa codec-specifikationer var föråldrade. De aktuella codecsna finns här:

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

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

För att göra detta, välj helt enkelt rätt sensor, ladda ner filen för ChirpStack, öppna den med en editor och klistra in den i codec-fältet.

Skapa sedan en "Applikation" och skriv in sensorerna under "Enheter". Det är också viktigt att känna till JOIN-data för sensorerna, dessa är vanligtvis tryckta på enheterna, på märkskylten, i själva enheten eller i de medföljande dokumenten.

Nu när allt är inställt måste du trigga JOIN på sensorerna. Denna process kopplar först sensorn till din gateway - annars kan alla styra dina sensorer. Du kan antingen göra detta med en APP (Milesight har "Toolbox" APP) eller så öppnar du enheten och trycker på en speciell JOIN-knapp. Ibland behöver du bara kort ta bort batteriet och koppla in det, sedan utlöses JOIN-processen.

Dragino Chirpstack

Data bör nu komma till ChirpStack. Men ha tålamod, sensorerna skickar bara en signal var 10:e minut, så detta kan ta tid.

MQTT

Chirpstack har sin egen MQTT-mäklare, men du kan också använda din egen MQTT. Så att den tar emot data från Chirpstack MQTT-mäklaren, satte jag upp en MQTT-brygga och vidarebefordrade allt. Det nödvändiga programmet för detta kallas "Mosquitto"

Forwarder.conf i mappen /etc/mosquitto/conf.d ser ut så här för mig:

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

där 192.168.0.50:1884 är IP och port för Chirpstack MQTT-mäklaren

 

 

Mer information kommer snart. Firmware tillgänglig från april 2024. TESTER SÖKES!

Schreibe einen Kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med * märkt

Den här webbplatsen använder Akismet för att minska spam. Läs mer om hur din kommentardata behandlas.