22.11.2024

D2000 a IoT

 

Štandardy

 

V súčasnosti existujú dva najrozšírenejšie štandardy pre nízkoenergetické prenosy občasných dát: LoRaWAN a Sigfox. Skúsme si stručne predstaviť obidva.

 

Protokoly triedy LPWAN  

Oba protokoly patria medzi LPWAN (Low-Power Wide Area Networks) protokoly -  v skutočnosti sa nejedná iba o definíciu protokolu, ale aj fyzických a linkových vrstiev a ďalších parametrov zabezpečujúcich požadované vlastnosti.

Tieto protokoly sú určené na občasný, energeticky efektívny bezdrôtový prenos malého množstva dát nazývaných payload (typicky niekoľko bajtov) na dlhé vzdialenosti (v otvorenom priestore aj viac ako 10 km) medzi prepojenými objektami  (typicky senzory napájané batériou) a gatewayom (tento smer sa volá uplink). Pokiaľ senzory posielajú iba niekoľko málo správ denne, môže im batéria vydržať aj niekoľko rokov. Podporovaný je aj opačný kanál (dowlink) – v krátkom čase po vyslaní správy je možné (voliteľne) do zariadenia dáta odoslať, keďže je (môže byť) na príjme. 

Protokol LoRaWAN 

Protokol LoRaWAN bol vyvinutý francúzskou firmou Cycleo, ktorú neskôr získala kalifornská firma Semtech. Protokol samotný je proprietárny. Zariadenia (v terminológii protokolu mote) posielajú dáta asynchróne, podľa potreby.Maximálna veľkosť payloadu je 255 bajtov. Dáta môže prijať jeden alebo viacero gatewayov a zvyčajne sú posielané do cloudu, odkiaľ sú následne sťahované spotrebiteľmi.

 

Prečo píšem zvyčajne? Nič Vám nebráni si jeden alebo viac takých gatewayov kúpiť, nakonfigurovať a získavať z nich dáta. Vybudovať si vlastnú sieť a nebyť závislý na infraštruktúre nejakého cloudového poskytovateľa. Pri implementácii LoRaWAN do D2000 sme podporili aj túto možnosť. Vyskúšali sme vlastný gateway - IoT Station 868 od firmy Kerlink. Cena takéhoto gatewaya je okolo tisíc Eur. Po umiestnení antény na výťahovej šachte 6-poschodovej budovy, v ktorej sídlime, sme boli schopní prijímať správy testovacieho zariadenia až z Tepličky. 

Alternatívou – výhodnou najmä, ak potrebujete pokryť väčšiu oblasť, ktorá by si vyžadovala viacero gatewayov a teda vyššie investície – je využiť služby cloudu a zdieľať náklady s ďalšími užívateľmi. Na Slovensku sme vyskúšali cloudy Slovanet, Loriot a TheThings.network. Z týchto cloudov sme dáta získavali protokolom MQTT (Message Queuing Telemetry Transport), čo je otvorený protokol na výmenu (zväčša) telemetrických dát. Zaujímavosť: implementácia MQTT ako samostatného protokolu v D2000 bola vedľajším produktom implementácie IoT komunikácie.

 

Protokol Sigfox 

Protokol Sigfox je podobne uzavretý ako LoRaWAN. Aj tento vyvinula francúzska firma – tentokrát Sigfox

Protokol Sigfox umožňuje preniesť v správe maximálne 12 bajtov payloadu, pričom jedno zariadenie smie vyslať najviac 140 správ denne (t.j. približne jedna správa za desať minút). Opačným smerom je možné prijať maximálne štyri správy denne s veľkosť každej do 8 bajtov. 

Firma Sigfox so svojimi partnermi vytvorila sieť prijímačov s celosvetovým pokrytím – na Slovensku je jej partnerom firma SimpleCell (mapa pokrytia Slovenska je priamo na ich webe). Na rozdiel od LoRaWAN teda nemáte možnosť vytvorenia vlastnej infraštruktúry, ale dáta z Vašich senzorov sťahujete z cloudu backend.sigfox.com pomocou REST API.

 

Implementácia v D2000 

Už D2000 verzia 11 obsahovala protokol IoT over LoRaWAN. Je dostupný v oboch stabilných a  podporovaných produkčných releasoch 11.0.53 aj 11.2.57. Komunikácia bola odskúšaná:

  • priamo voči gatewayu Kerlink IoT Station 868 (komunikácia využíva UDP správy)
  • voči cloudu TheThings.Network, do ktorého náš gateway správy posielal a odkiaľ ich D2000 KOM proces čítal (komunikácia cez TCP spojenie s použitím JSON správ v MQTT protokole)
  • voči cloudu Loriot.io, ktorý ich preposielal protokolom MQTT do iot.eclipse.org, odkiaľ ich D2000 KOM proces čítal komunikácia opäť cez TCP spojenie s použitím JSON správ v MQTT protokole)
  • voči cloudu Slovanet – až na konfiguračné detaily rovnaký princíp ako dva predchádzajúce cloudy

Všetky cloudy používajúce MQTT protokol a JSON správy sa líšia štruktúrou JSON správy a názvami jednotlivých polí. Samotné dáta (payload) sa raz nachádzajú v poli dataHex, raz v poli data, inokedy payload_raw.

 

Novinky v D2000 verzie 12 

V D2000 verzii 12 sme implementovali aj získavanie dát z cloudu Sigfox. A teraz dobrá správa pre nerozhodných (a šetrných): aby ste nemuseli pri kúpe licencie D2000 rozmýšľať , či ísť cestou LoRaWAN alebo Sigfox, implementovali sme Sigfox komunikáciu do toho istého protokolu (a rozhodnutie môžete odložiť na neskôr, prípadne v čase zmeniť)! Zároveň sa tento protokol premenoval na „IoT over LoRaWAN/Sigfox”.

 

IoT1
Obr. 1 – konfigurácia linkových parametrov protokolu vo verzii 12. Všimnite si indexovanie bez zadania indexu (nultý index) hovoriaci o tom, že sa majú spracovať všetky prvky v poli data


Cloud Sigfox podporuje prístup k ich REST API cez HTTPS protokol. Najjednoduchšie a najflexibilnejšie bolo podporiť sťahovanie dát cez externú utilitu (použili sme voľne dostupný curl) – aby nebolo nutné riešiť napr. všetky možné komplikácie spojené s autentifikáciou, proxy servermi a pod. 

Zároveň cloud Sigfox podporuje nielen stiahnutie aktuálnej hodnoty payloadu, ale aj histórie (v rámci jedného dotazu až 100 hodnôt). Aj túto vlastnosť sme podporili – takže napr. po dlhšom vypnutí KOM procesu je možné upraviť dávkový súbor na sťahovanie nielen aktuálnej hodnoty, ale aj viacerých hodnôt z histórie. Po úvodnom stiahnutí dát zo všetkých zariadení stačí súbor upraviť na pôvodný stav so sťahovaním jednej hodnoty.

 

IoT2
Obr. 2 – konfigurácia stanice – výber typu zariadenia a nastavenie príkazu na sťahovanie dát. Zo syntaxe je zrejmé, že KOM proces je spustený na Linuxe. Príkaz obsahuje symbolické konštanty pre aplikačný adresár (#APPDIR#) a adresu stanice (#ADDR#). 

Payload

Protokoly LoRaWAN aj Sigfox majú spoločné to, že neriešia štruktúru payloadu – z ich pohľadu sú to binárne dáta. Ich parsovanie je nutné implementovať v KOM procese pre každé zariadenie zvlášť a preto aj adresácia meraných bodov je závislá od zariadenia. Na druhej strane, analýza payloadu každého z doteraz podporených zariadení  je jednoduchá procedúra na niekoľko desiatok riadkov. A v prípade záujmu je možné pridať podporu nových zariadení  do už vydaných verzií. 

Záverw 

Protokoly triedy LPWAN dávajú možnosť prenásať dáta zo vzdialených zariadení (merače plynu, vody a pod) energeticky nenáročne a s využitím zdieľanej infraštruktúry. Už teraz je jasné, že si popri riešeniach postavených na mobilných sieťach nájdu svojich zákazníkov, ktorých zaujmú technickými možnosťami aj cenou.

 

19.11.2018, Ing. Peter Humaj, www.ipesoft.comSpolupracuje D2000-ka s  Internet of Things? Akým spôsobom sa dajú dáta z rôznych snímačov dostať do Vašeho systému? A pripravujeme do D2000 verzie 12 nejaké novinky?  O tom si povieme v dnešnom blogu.

Iné blogy