Podporované typy a verzie zariadení
Konfigurácia komunikačnej linky
Parametre protokolu linky
Konfigurácia komunikačnej stanice
Parametre protokolu stanice
Konfigurácia meraných bodov
Literatúra
Revízie dokumentu
Podporované typy a verzie zariadení...
Protokol umožňuje komunikáciu so zariadeniami komunikujúcimi pomocou protokolov LoRaWAN - protokolua Sigfox.
Protokol LoRaWAN je protokol 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 medzi prepojenými objektami - v terminológii LoRaWAN nazývanými
mote (typicky senzory napájané batériou) a LoRaWAN gatewayom.
Gateway následne môže komunikovať priamo s D2000 KOM procesom alebo posielať payload na sieťové servery resp. do cloudu, kde sa vykoná spracovanie údajov (deduplikácia, filtrácia) a následne sú údaje poslané procesu D2000 KOM. V každom prípade je payload zabalený do
obálky (napr. ako pole v JSON správe alebo v CSV súbore) a prenesený až do procesu D2000 KOM. Tam je payload dekódovaný (používa sa napr. Base64 kódovanie alebo Base64 + Base16 kódovanie) a spracovaný.
Spracovanie payloadu je závislé od typu zariadenia (definovaného v parametri protokolu
Device Type).
Komunikácia bola testovaná medzi senzormi a LoRaWAN gatewayom Kerlink IoT Station 868. Ten v závislosti od inštalovaného firmware:
- posielal údaje priamo D2000 KOM procesu (JSON správy v UDP packetoch)
- posielal údaje do cloudu TheThings.Network, odkiaľ ich D2000 KOM proces čítal (JSON správy v MQTT protokole cez TCP spojenie)
- posielal údaje do cloudu Loriot.io, ktorý ich preposielal protokolom MQTT do iot.eclipse.org, odkiaľ ich D2000 KOM proces čítal (JSON správy v MQTT protokole cez TCP spojenie)
...
- posielal údaje do cloudu Slovanet (loralink.slovanet.sk), odkiaľ ich D2000 KOM proces čítal (JSON správy v MQTT protokole cez TCP spojenie)
Protokol Sigfox má podobné vlastnosti ako LoRaWAN, akurát využíva iné frekvenčné pásma. Používa infraštruktúru vybudovanú firmou Sigfox a jej partnermi a správy (s maximálnou veľkosťou payloadu 12 bajtov, maximálne 140 správ denne) sú prenášané do cloudu (backend.sigfox.com), odkiaľ je možné ich získať cez REST API.
Komunikácia bola testovaná medzi senzormi a Sigfox cloudom s použitím utility curl na získanie dát cez https.
Kotva |
---|
| komunikacna_linka |
---|
| komunikacna_linka |
---|
|
Konfigurácia komunikačnej linky...
Konfigurácia pre LoRaWAN protokol:
- Kategória komunikačnej linky: SerialOverUDP Device Redundant, TCP/IP-TCP.
- Konfigurácia linky SerialOverUDP Device Redundant:
- Lokálny port: port na ktorom D2000 KOM proces prijíma UDP pakety
- Primárne/záložné zariadenia: IP adresa LoRaWAN gatewaya
(pre Connection Type=Kerlink IoT Station SPN) - Port: port na ktorom LoRaWAN gateway prijíma pakety (v súčasnosti nevyužité, keďže nie je implementovaný zápis)
- Konfigurácia linky TCP/IP-TCP:
- Kategória komunikačnej linky: SerialOverUDP Device Redundant, TCP/IP-TCP.
- Konfigurácia linky SerialOverUDP Device Redundant:
- Lokálny port: port na ktorom D2000 KOM proces prijíma UDP pakety
- Primárne/záložné zariadenia: IP adresa LoRaWAN gatewaya
(pre Connection Type=Kerlink IoT Station SPN) - Port: port na ktorom LoRaWAN gateway prijíma pakety (v súčasnosti nevyužité, keďže nie je implementovaný zápis)
- Konfigurácia linky TCP/IP-TCP:
- Host: IP adresa servera, ku ktorému sa D2000 KOM proces pripája, prípadne redundantné adresy oddelené čiarkou alebo bodkočiarkou
(pre Connection Type=MQTT client) - Port: port servera, ku ktorému sa D2000 KOM proces pripája
...
Konfigurácia pre Sigfox protokol:
- Konfigurácia linky File I/O:
- Vstupný súbor: cesta k adresáru, kde budú umiestnené dáta (JSON súbory) stiahnuté zo Sigfox cloudu. Môže byť použitá symbolická konštanta #APPDIR#, ktorá udáva aplikačný adresár, napr. #APPDIR#/Sigfox_input
(platná syntax pre Windows aj Linux). - Archívny adresár: cesta k adresáru, kde budú umiestnené súbory po spracovaní. KOM proces dátové súbory po spracovaní presunie do podadresárov tohto adresára, ktoré budú mať názov podľa názvu stanice (napr. B.Sigfox_1) a k menu súboru pridá časovú značku udávajúcu čas spracovania (napr. zo súboru msg_21FDA7.txt spraví súbor msg_21FDA7_2018-10-26-06-26-08.txt).
Podobne ako pre vstupný súbor môže byť použitá symbolická konštanta #APPDIR#, napr. #APPDIR#/Sigfox_archiv
Pozn 1: chybné súbory alebo súbory, pre ktoré nebola identifikovaná žiadna stanica, budú po spracovaní presunuté do podadresára BAD.
Pozn 2: pokiaľ archívny adresár nie je zadaný, všetky súbory budú po spracovaní vymazané.
Kotva |
---|
| linka_parametre |
---|
| linka_parametre |
---|
|
Parametre protokolu linky...
Dialóg konfigurácia linky - záložka Parametre protokolu.
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu linky:
Tab. č. 1
Parameter | Popis | Jednotka / rozmer | Náhradná hodnota |
---|
| Typ spojenia medzi D2000 KOM procesom a druhou stranou (LoRaWAN gateway, sieťový server, cloud). Aktuálne podporené sú:- Kerlink IoT Station SPN (JSON via UDP packets): komunikácia s Kerlink IoT Station s firmware SPN (Small Private Network). Linka musí byť typu SerialOverUDP Device Redundant.
- MQTT Client (JSON via MQTT): komunikácia so sieťovým serverom alebo cloudom pomocou MQTT protokolu. Linka musí byť typu TCP/IP-TCP
- Sigfox Client (JSON via HTTPS): komunikácia s cloudom Sigfox
| - | Kerlink IoT Station SPN |
| Názov poľa s identifikátorom LoRaWAN zariadenia (mote). Pozn: Pre JSON správy, ktoré môžu byť štruktúrované, je podporená syntax level1.level2.level3 ..., napr. rx.moteeui a pokiaľ obsahujú polia (indexované od 1) tak aj level1[index1].level2[index2].level3 ..., napr. rx.gwrx[1].time. Príklady viď popis meraných bodov typu Envelope. Pozn: Pre dátové súbory Sigfox, ktoré môžu obsahovať aj viacero hodnôt (historických) je možné použiť aj index 0 resp. prázdny index (napr. data[].device). Toto vyjadruje, že sa majú spracovať všetky prvky poľa. | - | rx.moteeui |
| Názov poľa s payloadom. Viď poznámky |
Dialóg konfigurácia linky - záložka Parametre protokolu.
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu linky:
Tab. č. 1
Parameter | Popis | Jednotka / rozmer | Náhradná hodnota |
---|
Kotva |
---|
ct | ct | Connection TypeTyp spojenia medzi D2000 KOM procesom a druhou stranou (LoRaWAN gateway, sieťový server, cloud). Aktuálne podporené sú: - Kerlink IoT Station SPN (JSON via UDP packets): komunikácia s Kerlink IoT Station s firmware SPN (Small Private Network). Linka musí byť typu SerialOverUDP Device Redundant.
- MQTT Client (JSON via MQTT): komunikácia so sieťovým serverom alebo cloudom pomocou MQTT protokolu. Linka musí byť typu TCP/IP-TCP
| - | Kerlink IoT Station SPN | Kotva |
---|
mf | mf | Mote Field NameNázov poľa s identifikátorom LoRaWAN zariadenia (mote). Pozn: Pre JSON správy, ktoré môžu byť štruktúrované, je podporená syntax level1.level2.level3 ..., napr. rx.moteeui a pokiaľ obsahujú polia (indexované od 1) tak aj level1[index1].level2[index2].level3 ..., napr. rx.gwrx[1].time. Príklady viď popis meraných bodov typu Envelope. | - | rx.moteeui | Kotva |
---|
pf | pf | Payload Field NameNázov poľa s payloadom. Viď poznámku pri parametri Mote Field Name. | - | rx.userdata.payload | Kotva |
---|
pe | pe | Payload EncodingSpôsob kódovania payloadu v správe. Podporené kódovania: | - | Base16 + Base64 encoding | Kotva |
---|
tf | tf | Time Field NameNázov poľa s časovou značkou. Ak pole nie je nájdené, hodnotám je priradený aktuálny čas. Viď poznámku gwrx[1].timetmtmTime MaskMaska pre parsovanie hodnoty v poli s časovou značkou. Pozn: od nastavení časových parametrov stanice závisí, či je čas interpretovaný ako lokálny alebo UTC s nakonfigurovaným offsetom. Špeciálne masky sú: - UNIX - číselná hodnota vyjadruje počet sekúnd od epochy 00:00:00 01.01.1970 UTC.
- UNIXMS - číselná hodnota vyjadruje počet milisekúnd od epochy 00:00:00.000 01.01.1970 UTC.
| - | yyyy-mm-dd hh:mi:ss | Payload Encoding | Spôsob kódovania payloadu v správe. Podporené kódovania:- Base16 + Base64 encoding (Kerlink SPN) - pre Connection Type=Kerlink IoT Station SPN
- Base64 encoding (TheThings.network) - pre Connection Type=MQTT Client pri komunikácii s cloudom TheThings.network
- Base16 encoding (Loriot, Slovanet, Sigfox) - pre Connection Type=MQTT Client pri komunikácii s cloudami LoRaWan (Loriot, Slovanet) a Sigfox
- None - správa obsahuje priamo payload - zatiaľ nevyužité
| - | Base16 + Base64 encoding |
| Názov poľa s časovou značkou. Ak pole nie je nájdené, hodnotám je priradený aktuálny čas. Viď poznámky pri parametri Mote Field Name. | - | rx.gwrx[1].time |
| Maska pre parsovanie hodnoty v poli s časovou značkou. Pozn: od nastavení časových parametrov stanice závisí, či je čas interpretovaný ako lokálny alebo UTC s nakonfigurovaným offsetom. Špeciálne masky sú:- UNIX - číselná hodnota vyjadruje počet sekúnd od epochy 00:00:00 01.01.1970 UTC.
- UNIXMS - číselná hodnota vyjadruje počet milisekúnd od epochy 00:00:00.000 01.01.1970 UTC.
| - | yyyy-mm-dd hh:mi:ss |
| Názov poľa, ktoré označuje typ správy. Ak je hodnota prázdna, typ správy sa nerozlišuje. (Napr. cloud Loriot posiela správy rozličného typu.) | - |
|
Frame Type Field Required Value | Ak je rozlišovanie typu správy aktívne (vyplnený parameter Frame Type Field Name), typ správy musí byť zhodný s uvedenou hodnotou. Inak je správa ignorovaná. | - |
|
| Zapnutie podrobných výpisov o posielaní a prijímaní hodnôt. | YES/NO | NO |
Parametre špecifické pre Connection Type=MQTT Client. |
| Viď popis parametra User Name |
Kotva |
---|
ftf | ftf | Frame Type Field NameNázov poľa, ktoré označuje typ správy. Ak je hodnota prázdna, typ správy sa nerozlišuje. (Napr. cloud Loriot posiela správy rozličného typu.) | - | | Kotva |
---|
ftv | ftv | Frame Type Field Required ValueAk je rozlišovanie typu správy aktívne (vyplnený parameter Frame Type Field Name), typ správy musí byť zhodný s uvedenou hodnotou. Inak je správa ignorovaná. | - | | Kotva |
---|
fd | fd | Full DebugZapnutie podrobných výpisov o posielaní a prijímaní hodnôt. | YES/NO | NO | Parametre špecifické pre Connection Type=MQTT Client. |
Kotva |
---|
un | un | MQTT User NameViď popis parametra User Name v dokumentácii MQTT protokolu. | Kotva |
---|
pw | pw | MQTT PasswordViď popis parametra Password v dokumentácii MQTT protokolu. | Kotva |
---|
tc | tc | MQTT Topic FilterViď popis parametra Topic Filter v dokumentácii MQTT protokolu. | +/+/+/up | Kotva |
---|
pq | pq | MQTT Subscribe QoSViď popis parametra Subscribe QoS v dokumentácii MQTT protokolu. | Kotva |
---|
ci | ci | MQTT Client IDViď popis parametra Client ID v dokumentácii MQTT protokolu. | Kotva |
---|
cs | cs | MQTT Clean Session FlagViď popis parametra Clean Session Flag mpmp Publish FormatFormát JSON správy použitej pri zápise hodnoty. Obsah meraného bodu typu Write bude zakódovaný (v závislosti od parametra Payload Encoding) a vložený do tejto správy, kde nahradí reťazec #PAY#. Náhradná hodnota "{"port":1, "confirmed":false, "payload_raw":#PAY#} bola vyskúšaná pri posielaní údajov do cloudu TheThings.Network. | - | "{"port":1, "confirmed":false, "payload_raw":#PAY#} | Kotva |
---|
pq | pq | MQTT Publish QoSViď popis parametra Publish QoS v dokumentácii MQTT protokolu. | Kotva |
---|
pi | pi | MQTT Ping IntervalViď popis parametra Ping Interval rtrt Reply TimeoutClient ID | Viď popis parametra |
Reply Timeout wtwt Wait TimeoutClean Session Flag | Viď popis parametra |
Wait Timeout mwrmwr Max. Wait RetryViď popis parametra Max. Wait Retry v dokumentácii MQTT protokolu. | Parametre linky otestované pre Connection Type=Kerlink IoT Station SPN voči Kerlink IoT Station 868 s firmware SPN
...
Parametre linky otestované pre Connection Type=MQTT client voči TheThings.network
...
Parametre linky otestované pre Connection Type=Kerlink IoT Station SPN voči Kerlink IoT Station 868 s firmware SPN:
Parameter | Hodnota |
---|
Connection Type | Kerlink IoT Station SPN |
Mote Field Name | rx.moteeui |
Payload Field Name | rx.userdata.payload |
Payload Encoding | Base16 + Base64 encoding |
Time Field Name | rx.gwrx[1].time |
Time Mask | yyyy-mm-dd hh:mi:ss |
Frame Type Field Name |
|
Frame Type Field Required Value |
|
Parametre linky otestované pre Connection Type=MQTT client voči TheThings.network:
Parameter | Hodnota |
---|
Connection Type | MQTT client |
Mote Field Name | dev_id alebo hardware_serial |
Payload Field Name | payload_raw |
Payload Encoding | Base64 encoding |
Time Field Name | metadata.time |
Time Mask | yyyy-mm-dd hh:mi:ss.mss |
Frame Type Field Name |
|
Frame Type Field Required Value |
|
MQTT User Name | ipesoft-test |
MQTT Password | *** |
MQTT Topic Filter | +/+/+/up |
MQTT Client ID | D2000kom |
MQTT Clean Session Flag | NO |
MQTT Publish Format | {"port":1, "confirmed":false, "payload_raw":#PAY#} |
MQTT Publish QoS | QoS_0, QoS_1, QoS_2 |
MQTT Ping Interval | 60 |
MQTT Reply Timeout | 20 |
MQTT Wait Timeout | 00.100 |
MQTT Max. Wait Retry | 3 |
Parametre linky otestované pre Connection Type=MQTT client voči Loriot.io s nastavením:
- Výstup protokolom MQTT
- MQTT broker: iot.eclipse.org
- MQTT topic: com/ipesoft/iot
Parametre linky otestované pre Connection Type=MQTT client voči Loriot.io s nastavením:
- Výstup protokolom MQTT
- MQTT broker: iot.eclipse.org
- MQTT topic: com/ipesoft/iot
Parameter | Hodnota |
---|
Connection Type | MQTT client |
Mote Field Name | EUI |
Payload Field Name | data |
Payload Encoding | Base16 encoding |
Time Field Name | ts |
Time Mask | UNIXMS |
Frame Type Field Name | cmd |
Frame Type Field Required Value | rx |
MQTT User Name | MQTT Password | MQTT Topic Filter | com/ipesoft/iot |
Parameter | Hodnota |
---|
Connection Type | MQTT client |
Mote Field Name | EUI |
Payload Field Name | data |
Payload Encoding | Base16 encoding |
Time Field Name | ts |
Time Mask | UNIXMS |
Frame Type Field Name | cmd |
Frame Type Field Required Value | rx |
MQTT User Name |
|
MQTT Password |
|
MQTT Topic Filter | com/ipesoft/iot |
MQTT Client ID | D2000kom |
MQTT Clean Session Flag | NO |
MQTT Publish Format |
|
MQTT Publish QoS | QoS_1 |
MQTT Ping Interval | 60 |
MQTT Reply Timeout | 20 |
MQTT Wait Timeout | 00.100 |
MQTT Max. Wait Retry | 3 |
Parametre linky otestované pre Connection Type=MQTT client voči LoraLINK Slovanet:
Parameter | Hodnota |
---|
Connection Type | MQTT client |
Mote Field Name | devEUI |
Payload Field Name | dataHex |
Payload Encoding | Base16 encoding |
Time Field Name | timeStamp |
Time Mask * | yyyy-mm-ddThh:mi:ss.mss |
Frame Type Field Name |
|
Frame Type Field Required Value |
|
MQTT User Name | (podľa AppEUI) |
MQTT Password | *** |
MQTT Topic Filter | app/(appEUI)/node/+/rxdata |
MQTT Client ID | D2000kom |
MQTT Clean Session Flag | YES |
MQTT Publish Format | {"reference":"","confirmed":true,"fPort":3,"dataHex":#PAY#} |
MQTT Publish QoS | QoS_0 |
MQTT Ping Interval | 60 |
MQTT Reply Timeout | 20 |
MQTT Wait Timeout | 00.100 |
MQTT Max. Wait Retry | 3 |
* Pozn.: Odoslaná hodnota je v lokálnom čase, je potrebné podľa toho nastaviť časové parametre príslušných staníc.
...
Parametre linky otestované pre Connection Type=Sigfox Client (JSON via HTTPS) voči Sigfox cloudu:
Parameter | Hodnota |
---|
Connection Type | Sigfox Client (JSON via HTTPS) |
Mote Field Name | data[].device |
Payload Field Name | data[].data |
Payload Encoding | Base16 encoding (Slovanet, Loriot, Sigfox) |
Time Field Name | data[].time |
Time Mask | UNIX |
Frame Type Field Name |
|
Frame Type Field Required Value |
|
Kotva |
---|
| komunikacna_stanica |
---|
| komunikacna_stanica |
---|
|
Konfigurácia komunikačnej stanice...
- Komunikačný protokol "IoT over LoRaWAN/Sigfox".
- Adresa stanice: adresa stanice je identifikátor konkrétneho zariadenia (mote), ktorý sa nachádza v poli Mote Field Name.
- Komunikačný protokol "IoT over LoRaWAN".
- Adresa stanice: adresa stanice je identifikátor konkrétneho zariadenia (mote), ktorý sa nachádza v poli Mote Field Name.
- pre Connection Type=Kerlink IoT Station SPN je adresa textová reprezentácia 8-bajtovej LoRaWAN adresy (napr. 00-00-00-00-21-1a-e3-c8)
- Pre Connection Type=MQTT Client môže byť adresa textová reprezentácia 8-bajtovej LoRaWAN adresy (napr. 0018B2000000147D) alebo symbolická adresa definovaná v rámci MQTT servera (napr. fieldtestdevice)
...
Dialóg konfigurácia stanice - pole Parameter protokolu.
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu stanice:
Tab. č. 2
...
- 00-00-00-00-21-1a-e3-c8)
- Pre Connection Type=MQTT Client môže byť adresa textová reprezentácia 8-bajtovej LoRaWAN adresy (napr. 0018B2000000147D) alebo symbolická adresa definovaná v rámci MQTT servera (napr. fieldtestdevice)
- pre Connection Type=Sigfox Client (JSON via HTTPS) je adresa identifikátor zariadenia (napr. 21FDA5)
Kotva |
---|
| stanica_parametre |
---|
| stanica_parametre |
---|
|
Parametre protokolu staniceDialóg konfigurácia stanice - pole Parameter protokolu.
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu stanice:
Tab. č. 2
Parameter | Popis | Jednotka | Náhradná hodnota |
| Typ zariadenia. Každý typ zariadenia môže mať vlastnú štruktúru prenášaných dát (payload). Zoznam podporovaných zariadení bude postupne narastať. Aktuálne podporené zariadenia sú:- None - žiadne zariadenie
- OEM device - parsovanie payloadu je vykonávané externou dll knižnicou
- Adeunis RF Field Test Device - testovacie zariadenie posielajúce GPS údaje o polohe a údaje o teplote
- SolidusTech IndoorUNI Sensor - bytový merač teploty a vlhkosti
- SolidusTech miniUNI DS18B20 Sensor - merač teploty pre vonkajšie prostredie
- Adeunis RF LoRaWAN TEMP (ARF8180BA) - exteriérový merač teploty s dvomi nezávislými čidlami.
- Codea WZU-SG (Landis+Gyr Ultraheat T550) - rádiomodul WZU-SG firmy Codea pre merače tepla Landis+Gyr UH50/UC50/T550
- Moire Labs P1AP/P1AT devices - snímače teploty a tlaku firmy Moire Labs (https://iotransducer.com)
| - | None |
| Názov externej DLL knižnice s kódom pre parsovanie payloadu pre Device Type=OEM device. | - |
|
| Timeout, po ktorom stanica prejde do chybového stavu, ak neboli prijaté žiadne dáta. | hh:mi:ss | 01:00:00 |
| Topic použitý pri zápise hodnoty (pre Connection Type=MQTT client). Pozn: pre užívateľa ipesoft-test a zariadenie fieldtestdevice bol otestovaný voči TheThings.network zápis s MQTT_TOPIC=ipesoft-test/devices/fieldtestdevice/down. | - |
|
Sigfox Download Command File | Pre Sigfox: cesta k súboru pre sťahovanie dát z cloudu Sigfox do vstupného adresára (daného parametrom Vstupný súbor linky typu File I/O) aj s prípadnými parametrami. Cesta môže obsahovať (podobne ako parameter Vstupný súbor) symbolickú konštantu #APPDIR# (aplikačný adresár) a navyše aj #ADDR# (adresa stanice), aby bolo možné použiť jediný súbor na obsluhu viacerých staníc. Príklad pre Windows: #APPDIR#/Sigfox_cmd/get.bat #ADDR# Príklad pre Linux: /bin/sh #APPDIR#/Sigfox_cmd/get.sh #ADDR# Pozn: tento parameter nie je potrebné zadávať, pokiaľ sa o sťahovanie dát stará nezávislý mechanizmus. Samotné sťahovanie môže využívať utilitu curl na vykonanie HTTPS GET dotazu voči web serveru Sigfox.
Príklad súboru get.bat pre platformu Windows (sťahuje sa cez proxy server, vypína sa overovanie identity servera, xxx:yyy je meno a heslo užívateľa v cloude Sigfox): rem default count=1, possible to download upto 100 values set count=1 rem ID of device is 1st parameter set id=%1 c:\utils\curl.exe --proxy http://proxy:3128 --insecure -u xxx:yyy -o msg_%id%.txt https://backend.sigfox.com/api/devices/%id%/messages?limit=%count%
Príklad súboru get.sh pre platformu Linux (je nutné explicitne zadať, že súbory sa sťahujú napr. do adresára Sigfox_input): #/bin/sh # default count=1, possible to download upto 100 values count=1 base=$(dirname "$0") #ID of device is 1st parameter id=$1 #name of downloaded data file (including directory) datafile=$base/../Sigfox_input/msg_$id.txt /usr/bin/curl --proxy http://proxy:3128 --insecure -u xxx:yyy -o $datafile https://backend.sigfox.com/api/devices/$id/messages?limit=$count Pozn: pred spustením KOM procesu je možné príkazové súbory upraviť a zväčšiť parameter count až na hodnotu 100, čo spôsobí, že bude načítaná nielen najnovšia hodnota, ale aj predchádzajúce (až 99) historické hodnoty. Potom, po prvom stiahnutí, je možné parameter count zmenšiť na 1. |
|
|
| Pre Sigfox: timeout na sťahovanie dát príkazom Sigfox Download Command File. Pokiaľ sťahovanie trvá dlhšie, stanica prejde do chybového stavu. | sec | 30 |
Konfigurácia meraných bodov...
Možné typy hodnôt meraných bodov: Ai, Di, Ci, TxtI, Qi, TxtO.
Typ hodnoty | Address (typ adresy) | Popis |
---|
Ai, Di, Ci, Qi, TxtI | | Merané body parsované z payloadu. Adresa (Address) závisí od typu zariadenia (parameter Device Type). Adresa nie je citlivá na malé/veľké písmená. Špeciálnym prípadom je nevyplnená adresa - takýto meraný bod bude obsahovať celý payload (po príslušnom dekódovaní v závislosti od parametra Payload Encoding). Nasledujúce tabuľky udávajú adresy pre jednotlivé typy zariadení:
Adresy payloadu pre typ zariadenia OEM Device adresa záleží od konkrétnej implementácie (dll knižnice).
Adresy payloadu pre typ zariadenia Adeunis RF Field Test Device
Address | Popis |
---|
Status | Stavový bajt zariadenia. | TriggerAccelerometer | Hodnota True znamená, že poslanie správy bolo iniciované akcelerometrom. | TriggerButton | Hodnota True znamená, že poslanie správy bolo iniciované tlačidlom. | Temperature | Nameraná teplota (-128 °C .. 127°C). | GpsLatitude | Zemepisná šírka (0-90 stupňov) z GPS snímača. Pozn: GPS údaje môžu chýbať, ak zariadenie nemá žiaden GPS signál. | HemisphereSouth | Hodnota True znamená, že zemepisná šírka je južná (zariadenie je na južnej pologuli). | GpsLongitude | Zemepisná dĺžka (0-180 stupňov) z GPS snímača. | HemisphereWest | Hodnota True znamená, že zemepisná dĺžka je západná (zariadenie je na západnej pologuli). | GpsQualityReception | Kvalita príjmu GPS signálu: 1 Good, 2 Average, 3 Poor | QpsQualitySatellites | Počet viditeľných GPS satelitov. | UplinkCounter | Počítadlo uplink paketov (paketov poslaných zo zariadenia na LoRaWAN gateway). | DownlinkCounter | Počítadlo downlink paketov (paketov poslaných zariadeniu z LoRaWAN gatewaya). | BatteryLevel | Napätie batérie v mV. | RSSI | Indikátor sily prijatého signálu (Received Signal Strength Indicator ) - hodnota 0-255. Payload obsahuje toto pole iba ak predtým došlo k zápisu do zariadenia (poslaniu dát z LoRaWAN gatewaya do zariadenia). | SNR | Signal Noise Ratio v dB (-128 .. 127). Payload obsahuje toto pole iba ak predtým došlo k zápisu do zariadenia (poslaniu dát z LoRaWAN gatewaya do zariadenia). |
Adresy payloadu pre typ zariadenia SolidusTech IndoorUNI Sensor
Address | Popis |
---|
ADR | Adaptive Data Rate (optimalizácia rýchlosti prenosu dát a spotreby energie). Hodnota True znamená, že ADR je zapnutý. | DataRate | Data Rate (rýchlosť vysielania dát) 0-5. | SNR | Signal Noise Ratio v dB (-128 .. 128). | BatteryLevel | Napätie batérie v mV. | Temperature | Teplota (-125.99°C .. 125.99°C) s rozlíšením 0.1°C. | Humidity | Relatívna vlhkost (0.0%-100%) s rozlíšením 0.1%. | PowerAdapter | Hodnota True znamená, že je zariadenie pripojené na napájací adaptér, hodnota False, že je napájané batériou (vždy False pre verziu firmware FW 0.2.2 a nižší). | Contact | Hodnota True znamená, že je zopnutý pomocný kontakt (vždy False pre verziu firmware FW 0.2.2 a nižší). |
Adresy payloadu pre typ zariadenia SolidusTech miniUNI DS18B20 Sensor
Address | Popis |
---|
BatteryLevel | Napätie batérie v mV. | SNR | Signal Noise Ratio predchádzajúceho payloadu v dB. Platí po prijatí ACK. Hodnota 127 znamená nedefinovanú hodnotu (nebol prijatý ACK alebo downlink paket od LoRaWAN gatewaya). | Temperature | Teplota (-25°C .. 85°C) s rozlíšením 0.1°C. |
Adresy payloadu pre typ zariadenia Adeunis RF LoRaWAN TEMP (ARF8180BA)
Address | Popis |
---|
FrameCounter | Interné počítadlo správ nadobúdajúce hodnoty 0 .. 7. | BatteryLow | Indikátor slabej batérie. Nadobúda hodnoty True alebo False. | HWError | Indikátor hardvérovej chyby v zariadení (chyba teplotného čidla a pod.). | InternalTemp | Hodnota teplotného čidla umiestneného v puzdre zariadenia s rozlíšením 0.1 °C. | ExternalTemp | Hodnota teplotného čidla umiestneného na vyvedenom vodiči s rozlíšením 0.1 °C. |
Adresy payloadu pre typ zariadenia Codea WZU-SG (Landis+Gyr Ultraheat T550). Podporený je formát správy "A" (aktuálne hodnoty posielané raz denne). Address | Popis |
---|
Energy | Aktuálne prepravené množstvo tepla (v stotinách GJ) | Volume | Aktuálne prepravený objem vody (v desatinách m3) | ErrorFlag | Chybový príznak | MissingTime | Počet poruchových hodín (v hod) | Status | Status modulu-dôvod odoslania správy: 0x00 - Ok 0x10 - Chyba čítania merača (zlý formát dát E,V..) 0x20 - Install 0x30 - JMP 0x40 - Porucha merača |
Adresy payloadu pre typ zariadenia Moire Labs P1AP/P1AT devices Address | Popis |
---|
Unit | Jednotka (0-°C, 1-Pa, 2-kPa, 3-MPa) | MinValueRaw | Minimálna hodnota teploty/tlaku (číslo z komunikácie) | MaxValueRaw | Maximálna hodnota teploty/tlaku (číslo z komunikácie) | AvgValueRaw | Priemerná hodnota teploty/tlaku (číslo z komunikácie) | LastValueRaw | Posledná hodnota teploty/tlaku (číslo z komunikácie) | MinValue | Minimálna hodnota teploty/tlaku (v prípade tlaku číslo prerátané na Pa) | MaxValue | Maximálna hodnota teploty/tlaku (v prípade tlaku číslo prerátané na Pa) | AvgValue | Priemerná hodnota teploty/tlaku (v prípade tlaku číslo prerátané na Pa) | LastValue | Posledná hodnota teploty/tlaku (v prípade tlaku číslo prerátané na Pa) | Boot | Hodnota sa nastaví po prídení správy, ktorú merač posiela po štarte Pozn: v záložke Filter je nutné nastaviť Nová hodnota pri zmene času. | Battery | Úroveň nabitia batérie (0-255). |
|
...
- None - žiadne zariadenie
- OEM device - parsovanie payloadu je vykonávané externou dll knižnicou
- Adeunis RF Field Test Device - testovacie zariadenie posielajúce GPS údaje o polohe a údaje o teplote
- SolidusTech IndoorUNI Sensor - bytový merač teploty a vlhkosti
- SolidusTech miniUNI DS18B20 Sensor - merač teploty pre vonkajšie prostredie
- Adeunis RF LoRaWAN TEMP (ARF8180BA) - exteriérový merač teploty s dvomi nezávislými čidlami.
...
Možné typy hodnôt meraných bodov: Ai, Di, Ci, TxtI, Qi, TxtO.
Typ hodnoty | Address (typ adresy) | Popis |
---|
Ai, Di, Ci, Qi, TxtI | Kotva |
---|
pt_payload | pt_payload | PayloadMerané body parsované z payloadu. Adresa (Address) závisí od typu zariadenia (parameter Device Type). Adresa nie je citlivá na malé/veľké písmená. Špeciálnym prípadom je nevyplnená adresa - takýto meraný bod bude obsahovať celý payload (po príslušnom dekódovaní v závislosti od parametra Payload Encoding). Nasledujúce tabuľky udávajú adresy pre jednotlivé typy zariadení: Adresy payloadu pre typ zariadenia OEM Device adresa záleží od konkrétnej implementácie (dll knižnice). Adresy payloadu pre typ zariadenia Adeunis RF Field Test DeviceAddress | Popis |
---|
Status | Stavový bajt zariadenia. |
TriggerAccelerometer | Hodnota True znamená, že poslanie správy bolo iniciované akcelerometrom. |
TriggerButton | Hodnota True znamená, že poslanie správy bolo iniciované tlačidlom. |
Temperature | Nameraná teplota (-128 °C .. 127°C). |
GpsLatitude | Zemepisná šírka (0-90 stupňov) z GPS snímača. Pozn: GPS údaje môžu chýbať, ak zariadenie nemá žiaden GPS signál. |
HemisphereSouth | Hodnota True znamená, že zemepisná šírka je južná (zariadenie je na južnej pologuli). |
GpsLongitude | Zemepisná dĺžka (0-180 stupňov) z GPS snímača. |
HemisphereWest | Hodnota True znamená, že zemepisná dĺžka je západná (zariadenie je na západnej pologuli). |
GpsQualityReception | Kvalita príjmu GPS signálu: 1 Good, 2 Average, 3 Poor |
QpsQualitySatellites | Počet viditeľných GPS satelitov. |
UplinkCounter | Počítadlo uplink paketov (paketov poslaných zo zariadenia na LoRaWAN gateway). |
DownlinkCounter | Počítadlo downlink paketov (paketov poslaných zariadeniu z LoRaWAN gatewaya). |
BatteryLevel | Napätie batérie v mV. |
RSSI | Indikátor sily prijatého signálu (Received Signal Strength Indicator ) - hodnota 0-255. Payload obsahuje toto pole iba ak predtým došlo k zápisu do zariadenia (poslaniu dát z LoRaWAN gatewaya do zariadenia). |
SNR | Signal Noise Ratio v dB (-128 .. 127). Payload obsahuje toto pole iba ak predtým došlo k zápisu do zariadenia (poslaniu dát z LoRaWAN gatewaya do zariadenia). |
Adresy payloadu pre typ zariadenia SolidusTech IndoorUNI SensorAddress | Popis |
---|
ADR | Adaptive Data Rate (optimalizácia rýchlosti prenosu dát a spotreby energie). Hodnota True znamená, že ADR je zapnutý. |
DataRate | Data Rate (rýchlosť vysielania dát) 0-5. |
SNR | Signal Noise Ratio v dB (-128 .. 128). |
BatteryLevel | Napätie batérie v mV. |
Temperature | Teplota (-125.99°C .. 125.99°C) s rozlíšením 0.1°C. |
Humidity | Relatívna vlhkost (0.0%-100%) s rozlíšením 0.1%. |
PowerAdapter | Hodnota True znamená, že je zariadenie pripojené na napájací adaptér, hodnota False, že je napájané batériou (vždy False pre verziu firmware FW 0.2.2 a nižší). |
Contact | Hodnota True znamená, že je zopnutý pomocný kontakt (vždy False pre verziu firmware FW 0.2.2 a nižší). |
Adresy payloadu pre typ zariadenia SolidusTech miniUNI DS18B20 SensorAddress | Popis |
---|
BatteryLevel | Napätie batérie v mV. |
SNR | Signal Noise Ratio predchádzajúceho payloadu v dB. Platí po prijatí ACK. Hodnota 127 znamená nedefinovanú hodnotu (nebol prijatý ACK alebo downlink paket od LoRaWAN gatewaya). |
Temperature | Teplota (-25°C .. 85°C) s rozlíšením 0.1°C. |
Adresy payloadu pre typ zariadenia Adeunis RF LoRaWAN TEMP (ARF8180BA)Address | Popis |
---|
FrameCounter | Interné počítadlo správ nadobúdajúce hodnoty 0 .. 7. |
BatteryLow | Indikátor slabej batérie. Nadobúda hodnoty True alebo False. |
HWError | Indikátor hardvérovej chyby v zariadení (chyba teplotného čidla a pod.). |
InternalTemp | Hodnota teplotného čidla umiestneného v puzdre zariadenia s rozlíšením 0.1 °C. |
ExternalTemp | Hodnota teplotného čidla umiestneného na vyvedenom vodiči s rozlíšením 0.1 °C.
|
Ai, Di, Ci, Qi, TxtI | | Meraný bod parsovaný z obálky správy. Adresa je názov poľa v obálke správy. Pozn: Pre JSON správy, ktoré môžu byť štruktúrované, je podporená syntax level1.level2.level3 ..., napr. rx.moteeui a pokiaľ obsahujú polia (indexované od 1) tak aj level1[index1].level2[index2].level3 ..., napr. rx.gwrx[1].time. Keďže niektoré JSON správy samotné môžu byť polia, je možné začať aj indexom, napr.
Príklad JSON správy pre Connection Type=Kerlink IoT Station SPN (doplnené medzery a zarovanie kvôli lepšej čitateľnosti): |
{
"rx": {
"moteeui": "00-00-00-00-00-1e-fc-1d",
"userdata": {
"seqno": 77,
"port": 1,
"payload": "NzM3RjAwZTgwMA==",
"motetx": {
"freq": 868500000,
"modu": "LoRa",
"datr": "SF7BW125",
"codr": "4/5"
}
},
"gwrx": [
{
"time": "2017-07-05 16:06:52",
"chan": 2,
"rfch": 0,
"rssi": -33,
"lsnr": 7.5
}
]
}
}
Merané body obálky môžu mať adresy napr. rx.moteeui, rx.userdata.seqno, rx.userdata.motetx.freq, rx.gwrx[1].time.
Príklad JSON správy pre Connection Type=MQTT Client (JSON via MQTT) (doplnené medzery a zarovanie kvôli lepšej čitateľnosti): |
{
"app_id":"ipesoft-test",
"dev_id":"fieldtestdevice",
"hardware_serial":"0018B2000000147D",
"port":2,
"counter":549,
"payload_raw":"niNJElVwAYQ5UBYfBBBN",
"metadata":{
"time":"2017-08-10T08:12:26.06860368Z",
"frequency":867.5,
"modulation":"LORA",
"data_rate":"SF7BW125",
"coding_rate":"4/5",
"gateways":[
{
"gtw_id":"eui-000000000003080b",
"timestamp":705621508,
"time":"2017-08-10T08:12:26.434682Z",
"channel":5,
"rssi":-34,
"snr":7.8,
"latitude":49.20927,
"longitude":18.73184,
"altitude":359
}
]
}
}
Merané body obálky môžu mať adresy napr. dev_id, metadata.time, metadata.gateways[1].latitude. |
TxtI | | Meraný bod, ktorý bude obsahovať kompletnú prijatú správu - celú obálku (napr. JSON správu). Tento bod je určený na ladiace účely a pre prípadné spracovanie celej správy v skripte. |
TxtO | Kotva |
---|
| pt_write_mqtt |
---|
| pt_write_mqtt |
---|
| Write (MQTT) | Meraný bod na zápis. V súčasnosti implementované iba pre Connection Type=MQTT client a vyskúšané voči cloudu TheThings.Network. Hodnota meraného bodu je považovaná za payload, ktorý bude zakódovaný (v závislosti od parametra Payload Encoding) a vložený do šablóny správy definovanej parametrom MQTT Publish Format, kde nahradí reťazec #PAY#. Výsledná správa bude poslaná MQTT serveru. |
Literatúra...
Odkazy
Oficiálna stránka LoRaWAN aliancie https://www.lora-alliance.org/technology
Oficiálna stránka MQTT protokolu http://mqtt.org
Špecifikácie a štandardy
MQTT 3.1.1 špecifikácia http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.html
ISO/IEC 20922:2016 http://www.iso.org/standard/69499.html
Popisy dátových formátov a API
www.loriot.io - Application API Data Format https://www.loriot.io/home/documentation.html#docu/app-data-format
www.thethingsnetwork.org - API Reference https://www.thethingsnetwork.org/docs/applications/mqtt/api.html
Info |
---|
|
O protokoloch LoRaWAN/Sigfox si môžete prečítať blog D2000 a IoT. |
Revízie dokumentu...
- Ver. 1.0 - 10. august 2017 - vytvorenie dokumentu.
- Ver. 1.1 - 25. august 2017 - doplnená konfigurácia linky (Frame Type, Time Mask - UNIX, UNIXMS, PayloadEncoding - Base16), podpora zariadenia AdeunisRF LoRaWAN TEMP a komunikácie s Loriot.io.
- Ver. 1.2 - 26. október 2018 - doplnená podpore pre Sigfox.
...