LoRaWAN csomópont csatlakoztatása TTN-hez lépésről lépésre

Utolsó frissítés: 25 január 2026
  • A LoRaWAN-hoz megfelelően konfigurált átjáróra (frekvencia, IP-hálózat, szerver) és a TTN-nél való regisztrációra van szükség a csomópontok kommunikációjához.
  • A végberendezések regisztrálása a TTN alkalmazásokban a DevEUI, JoinEUI/AppEUI és AppKey (OTAA) vagy az NWKSKEY/APPSKEY/DEVADDR (ABP) használatával történik.
  • Kereskedelmi forgalomban kapható érzékelők (SenseCAP, Decentlab, Dragino, Tabs) vagy barkács csomópontok ESP32/Arduino és LMIC könyvtárral használhatók adatküldésre a TTN-be.
  • A TTN megkönnyíti a Node-RED és külső platformokkal való integrációt a LoRaWAN hálózat által gyűjtött IoT-adatok vizualizálásához és kiaknázásához.

LoRaWAN csomópont csatlakoztatása a TTN-hez

Ha idáig eljutottál, az azért van, mert szeretnéd tudni, hogyan kell egy LoRaWAN csomópontot a TTN-hez csatlakoztatni az elejétől a végéig , semmit sem kihagyva: átjárókat, csomópontokat, érzékelőket, könyvtárakat, kulcsokat és hálózati konfigurációt. A jó hír az, hogy nem kell telekommunikációs szakértőnek lenned; egy jól strukturált útmutatóval és egy kis türelemmel pillanatok alatt beállíthatod a saját működőképes LoRaWAN hálózatodat.

A következő sorokban lépésről lépésre bemutatjuk, hogyan állíthatsz be egy átjárót, hogyan regisztrálhatod a The Things Networkön, hogyan adhatsz hozzá alkalmazásokat és végberendezéseket, valamint hogyan programozhatsz LoRaWAN csomópontokat ESP32 vagy Arduino kártyákon alapulva, valamint kereskedelmi forgalomban kapható érzékelőkkel (SenseCAP, Decentlab, Dragino, Tabs Browan) készült példákat is bemutatunk. Emellett olyan gyakorlati részleteket is érintünk, amelyek nem mindig találhatók meg a kézikönyvekben: gyakori kulcsproblémák, frekvenciaválasztás, fizikai tűs csatlakozások, és trükkök annak ellenőrzésére, hogy minden valóban kommunikál-e a TTN-nel.

Mik a LoRa és a LoRaWAN, és miért érdemes használni a TTN-t?

A LoRa és a LoRaWAN két kapcsolódó fogalom, de nem ugyanaz . A LoRa egy nagy hatótávolságú, kis fogyasztású rádiófrekvenciás moduláció, amelyet a Semtech saját tulajdonú. A LoRaWAN egy hálózati protokoll, amely a LoRa-ra támaszkodik annak kezelésében, hogy a végberendezések (csomópontok) hogyan kommunikálnak az átjárókkal és a hálózati szerverrel.

Egy tipikus LoRaWAN hálózatban két fő összetevő található: az átjárók és a csomópontok . Az átjárók "hidakként" működnek a LoRa világ (rádió) és az IP világ (internet) között, csomagokat továbbítva a LoRaWAN szervernek. A csomópontok azok az érzékelők vagy beavatkozók, amelyek LoRa segítségével küldenek és fogadnak információkat ezekről az átjárókról.

Mindezek összekapcsolásához LoRaWAN szerverre van szükség. Fizethetsz egy privát szolgáltatásért (például Movistar, Vodafone szolgáltatók, vagy Loriot, Actility, Kerlink platformok), vagy választhatod a közösségi utat a The Things Network (TTN) segítségével, amely egy nyilvános, nyílt hálózat, amelyet a közösség tart fenn.

A TTN előnye, hogy tiszteletben tartja az adatkezelést, semleges, és lehetővé teszi az átjárók hálózathoz való hozzájárulását . Sok városban az emberek saját kezdeményezésükre telepítenek átjárókat, és bárki élvezheti ennek a lefedettségnek az előnyeit, a csomópontok hardverén kívül semmilyen költséggel nem.

LoRaWAN frekvenciák, csatornák és korlátozások

Mielőtt bármilyen eszközt vásárolna, kulcsfontosságú ellenőrizni, hogy a LoRa frekvencia kompatibilis-e az Ön régiójával . Európában dolgozni nem ugyanaz, mint az Egyesült Államokban vagy Ázsiában; ha rossz sávot választ, az eszköz használhatatlanná vagy akár illegálissá is válhat.

Európában elsősorban a 868 MHz-es sávot (EU868) használják . Az Egyesült Államokban a tipikus sáv a 915 MHz (US915). A kínai kiskereskedők széles választékban kínálnak 433 MHz-es modulokat, ami áruk miatt csábító lehet, de nem mindig kompatibilisek a LoRaWAN-nal vagy az adott ország operációs rendszerével.

A frekvencia mellett a LoRaWAN csatornákra, szórási tényezőre (SF) és frekvenciatervekre van osztva . Az SF határozza meg a sebességet és a hatótávolságot: a magasabb SF nagyobb hatótávolságot, de több időt is jelent a levegőben, ami több energiát fogyaszt és több csatornaterületet foglal el.

Európában a jól ismert „1%-os szabály” érvényes : minden eszköz csak az idő egy kis százalékában, jellemzően 1% körül foglalhatja el a rádiócsatornát. Ez korlátozza az adatok küldésének gyakoriságát, és ez az egyik oka annak, hogy a LoRaWAN érzékelők általában néhány percenként, nem pedig néhány másodpercenként küldenek.

Átjáró és csomópontok hardverének előkészítése és kiválasztása

Egy praktikus hálózat kiépítéséhez legalább egy LoRaWAN átjáróra és egy vagy több csomópontra (érzékelőre) lesz szükség . Különböző gyártók hardvereit kombinálhatja, amennyiben azok megfelelnek a LoRaWAN szabványnak és ugyanazon a frekvenciasávon működnek.

Egy népszerű beltéri átjáró modell a Dragino LPS8 , amely egy SX1308 koncentrátort integrál, és akár 10 párhuzamos csatornát is támogat. Országtól függően különböző frekvenciatervekkel előre konfigurálva érkezik, Európában pedig 868 MHz-en működik. 5 V-os tápellátást kap USB-C-n keresztül, és RJ-45 vagy Wi-Fi-n keresztül csatlakozik az IP hálózathoz.

A TTN-nel jól működő átjárók további példái közé tartozik az RAK7289 (kültéri, strapabíró és LTE/4G opcióval) vagy a hivatalos TTN-GW-868 MHz-es átjárók, amelyeket városi lefedettség kiépítésére vagy intelligens városi projektekre terveztek. Az is lehetséges, hogy egycellás átjárót építsünk egy ESP32 panellel és egy SX1262 LoRa modullal , ahogyan azt a Wio-SX1262 készlettel és egy Xiaomi ESP32S3-mal tették.

Csomópontként két lehetőség közül választhat: használhat LoRaWAN-ra már alkalmas kereskedelmi forgalomban kapható érzékelőket (SenseCAP S210x, Tabs Browan TBHH100, Dragino TrackerD, Decentlab stb.), vagy építhet saját csomópontokat fejlesztőkártyákkal, például TTGO LoRa32 V2.0, ESP32 + RMF95, Arduino + LoRa modul stb.

Konfiguráljon egy LoRaWAN átjárót, és csatlakoztassa a TTN-hez

A projekt első jelentős lépése az átjáró üzembe helyezése és a „Connected” felirat megjelenése a TTN-en . Bár minden gyártónak saját irányítópultja van, a koncepcionális lépések nagyon hasonlóak.

Egy Dragino LPS8-cal például SSH-n vagy HTTP-n keresztül is kezelheted . Ha RJ-45 kábellel csatlakoztatod, akkor meg kell találnod a DHCP-kiszolgáló által rendelt IP-címet (IP-szkennerrel vagy a routereden keresztül). Ha a kezdeti beállítást Wi-Fi-n keresztül szeretnéd végezni, az LPS8 létrehozza a saját hálózatát egy SSID-vel, például „dragino-xxxxx”, és egy alapértelmezett jelszóval, például „dragino+dragino”. A 10.130.1.1 IP-cím elérése a webes panelre visz, ahol a kezdeti felhasználónév és jelszó általában „admin/dragino”.

Belépéskor egy több részből álló menü jelenik meg, és egyes opcióknál piros kereszt jelezheti, hogy hiányzik a konfiguráció . Az első lépés a megfelelő frekvenciaterv kiválasztása a LoRa lapon; Európában ez az EU868 (körülbelül 868 MHz).

  5G M2M kapcsolat: a határtalan környezetek alapja

Ezután koppintson a LoRaWAN vagy a Hálózati szerver fülre . Itt adhatja meg, hogy az átjáró melyik LoRaWAN szerverhez csatlakozzon. A TTN esetében válassza a „TTN” lehetőséget szolgáltatóként, és adja meg az európai szerver címét (például eu1.cloud.thethings.network), megtartva az UDP portokat (általában 1700 mind a feltöltéshez, mind a letöltéshez). Ugyanebben a részben láthatja az átjáró azonosítóját (EUI), amelyre később szükségünk lesz a TTN-ben.

A Hálózat részben konfigurálhatja, hogyan csatlakozik az átjáró az internethez : LAN, WAN vagy Wi-Fi WAN. A WAN interfészhez választhat statikus IP-címet vagy DHCP-t; amikor csak lehetséges, a vezetékes kapcsolaton keresztüli statikus IP-cím ajánlott a stabilabb kapcsolat és a könnyebb kezelés érdekében. A LAN részt jellemzően az átjáró belső hozzáférési pont hálózatához használják; ezt a beállítást nem szabad megváltoztatni anélkül, hogy teljesen megértené, mit csinál, mivel életmentő lehet, ha valami rosszul sül el.

A WiFi részben beállíthatja mind az átjáró által generált hozzáférési pontot, mind a külső WiFi hálózathoz való csatlakozását . Biztonsági okokból ajánlott módosítani a gyárilag beállított hozzáférési pont SSID-jét és jelszavát.

Az RAK7289 átjárókon a folyamat hasonló: nyisd meg a webes panelt, konfiguráld az IP-címet (statikus vagy DHCP) a Hálózat → WAN interfész menüpontban , majd a LoRa hálózat → Hálózati beállítások → Csomagtovábbító menüpontban add meg a TTN-kiszolgáló adatait, és jegyezd fel az átjáró EUI-ját, hogy később regisztrálhasd a TTN-nél. Ha egy DHCP-t biztosító router mögött vagy, az átjáró IP-címét a bérleti táblázatban (gazdanév alapján, például "RAK7289") vagy olyan eszközök segítségével találhatod meg, mint az nmap.

Átjáró regisztráció a The Things Networkön

Miután az átjáró internet-hozzáféréssel rendelkezik, regisztrálnia kell a TTN-nél . Ha még nincs fiókja, először regisztráljon a The Things Network webhelyén, majd nyissa meg a konzolt a megfelelő régióban (például: https://eu1.cloud.thethings.network/).

A konzolon belül válaszd ki az Átjárók részt, és kattints az „Átjáró regisztrálása” gombra . A TTN kérni fog egy átjáró azonosítót (egy egyedi nevet a fiókodon belül), és az átjáró típusától függően az átjáró EUI-ját. A klasszikus csomagtovábbítót használó Dragino LPS8 átjárók esetén a „A régi csomagtovábbítót használom” lehetőséget kell kiválasztanod.

Ezenkívül meg kell adnia a frekvenciatervet (EU868 Európában) , a megfelelő régiót vagy routert, és opcionálisan a helyet (koordináták, beltéri/kültéri stb.). Az olyan átjárókon, mint az egycellás XIAO ESP32S3 és Wio-SX1262, maga a firmware is megjelenítheti az átjáró azonosítóját a soros porton keresztül indításkor; egyszerűen másolja ki, és használja a regisztrációs űrlapon.

Miután kitöltötte ezeket az információkat és regisztrálta az átjárót, a TTN megjelenít egy állapotellenőrzőt („Csatlakoztatva” vagy „Leválasztva”) és egy „Forgalom” részt, ahol valós időben tekintheti meg a csomagok áramlását. Ha minden helyesen van konfigurálva mind az átjárón, mind a TTN-en, akkor egy-két percen belül „Csatlakoztatva” állapotra kell váltania, és a forgalomnak meg kell jelennie, amikor a csomópontok továbbítanak.

Ez azt jelenti, hogy az infrastruktúra (átjáró + szerver) most már működőképes . Innentől kezdve az alkalmazások és a végberendezések konfigurációja következik.

Alkalmazás létrehozása és csomópont regisztrációja a TTN-ben

A TTN-ben az eszközök nem közvetlenül a fiók gyökerénél, hanem az alkalmazásokon belül regisztrálódnak . Egy alkalmazás egy vagy több csomópontot csoportosít, amelyek kapcsolódó adatokat küldenek, például egy épület összes környezeti érzékelőjét, vagy több GPS-követőt egy oktatási projektben.

A TTN konzolban lépjen az Alkalmazások részre, és hozzon létre egy új alkalmazást . Adjon meg neki egy egyedi azonosítót, opcionálisan egy leírást, és válassza ki a megfelelő régiót. Az alkalmazáson belül regisztrálja az egyes LoRaWAN csomópontokat a hitelesítő adataival (DevEUI, JoinEUI/AppEUI és AppKey vagy más kulcsok az aktiválási módtól függően).

A Browan TBHH100-868 hőmérséklet- és páratartalom-érzékelőkhöz hasonló kereskedelmi forgalomban kapható érzékelőkhöz általában egy DevEUI, AppEUI és AppKey címkét csatolnak. Ezek jellemzően az OTAA (Over-The-Air Activation) módszert használják, amely minden hálózati csatlakozáskor kulcskapcsolatot generál, így biztonságosabb, mint az ABP.

Az OTAA használatával a TTN-ben kiválaszthatod egy új végberendezés regisztrálását, megadhatod a JoinEUI (AppEUI), DevEUI és AppKey értékeket , ellenőrizheted az adatokat, majd megerősítheted a műveletet. A mentés után, ha a csomópont megfelelően van konfigurálva és egy átjáró hatókörén belül van, akkor látni fogja a hálózati jeladókat, végrehajtja a csatlakozási eljárást, és a konzolon elkezdődnek a fellink üzenetek és a mérések.

Ugyanez vonatkozik az olyan érzékelőkre is, mint a Decentlab szint- és hőmérséklet- érzékelők : a gyártó megadja az azonosítót, a DevEUI-t, az AppEUI-t és az AppKey-t, de nem tudja előre, hogy melyik szervert fogod használni. A te felelősséged, hogy regisztráld ezeket az információkat a TTN-en (vagy egy másik szerveren), hogy az érzékelő regisztrálható legyen. Sok Decentlab eszköz előre regisztrálva van a TTN-en, ha kéred, ami tovább leegyszerűsíti a folyamatot.

Kereskedelmi LoRaWAN érzékelők konfigurálása

Nézzünk néhány konkrét példát arra, hogyan készíthetünk elő és regisztrálhatunk kereskedelmi LoRaWAN érzékelőket , amelyek aztán az átjárón keresztül kommunikálnak a TTN-nel.

A SenseCAP S210x termékcsaládban (például környezeti érzékelők esetén) a tipikus munkafolyamat a gyártó SenseCraft alkalmazásának használata . Először letölti az alkalmazást, bekapcsolja az érzékelőt egy gombbal (néhány másodpercig lenyomva tartva, amíg a LED másodpercenként fel nem villan), majd az alkalmazásban a „Szkennelés” lehetőség kiválasztásával beolvashatja az eszköz QR-kódját.

Az alkalmazáson belül van egy „Speciális konfiguráció” mód, ahol a „The Things Network” platformot kell kiválasztani . Ugyanazt a frekvenciatervet kell kiválasztani, mint az átjárót (például EU868), és ellenőrizni kell, hogy a csatlakozási mód OTAA-e. Az alkalmazás megjeleníti az eszköz EUI-ját, az AppEUI-ját (JoinEUI) és az AppKey-t; érdemes ezeket feljegyezni, mert az eszköz regisztrálásakor be kell majd írni őket a TTN-be.

A Tabs Browan TBHH100-868 érzékelő esetében a gombok gyárilag előre konfiguráltak. Az érzékelő méri a hőmérsékletet és a páratartalmat, egy 3,6 V-os elemmel működik, és a következő szabályok szerint továbbítja az adatokat: 60 percenként, ha nincs változás, vagy hamarabb, ha a hőmérséklet ±2°C-kal, a páratartalom pedig ±5%-kal változik. A regisztráláshoz egyszerűen írja be a gyártó által biztosított APPKey, APPEUI és DevEUI értékeket a LoRaWAN szerverébe (például TTN). Előfordulhat, hogy probléma van a formátummal vagy a bájtsorrenddel (msb/lsb), ezért fontos ezt ellenőrizni, ha elsőre nem csatlakozik.

  Teljes útmutató a Pi-hole Dockerrel történő telepítéséhez

A Dragino TrackerD eszközöket GPS nyomkövetőként használják pánikgombbal. Minden egységnek saját LoRaWAN kulcskészlete van. A TTN-ben ezeket jellemzően ugyanabban az alkalmazásban regisztrálják (pl. "pályakövetés"), és az eszközt szükség esetén soros porton (USB) keresztül AT parancsokkal konfigurálják. A dokumentáció részletezi az átviteli sebesség, a riasztási viselkedés stb. beállítására szolgáló parancsokat. Fontos: Sok Dragino firmware megköveteli, hogy az AT parancsokat teljes egészében beillesszék a terminálba, ne pedig karakterenként begépeljék.

Az olyan érzékelőkben, mint a Decentlab szint-, nyomás- vagy környezeti érzékelői , a filozófia hasonló: a DevEUI, az AppEUI és az AppKey segítségével csatlakoztathatók a TTN-hez (vagy más hálózathoz). A Decentlab jellemzően 10 perces átviteli intervallumot állít be, mert ez egy bizonyítottan kompromisszum az adatfelhasználás és a felbontás között, bár ez kérésre vagy konfiguráción keresztül módosítható. A felhasználók megtekinthetik az adatokat a gyártó saját felhőplatformján, vagy integrálhatják az eszközt harmadik féltől származó platformokba (MyDevices, ResIoT, WMW stb.) a megfelelő hasznos adatdekóder hozzáadásával.

Építsd fel saját LoRaWAN csomópontodat nyílt forráskódú hardverrel

Ha szeretsz barkácsolni, a legnagyobb móka gyakran a saját LoRaWAN csomópontod építése és programozása . Egy nagyon népszerű kombináció egy ESP32 alapú, integrált LoRa-val ellátott kártya, például a TTGO LoRa32 V2.0 868 MHz használata, és egy egyszerű érzékelő, például egy DS18B20 hőmérséklet-érzékelő hozzáadása.

Ez a megközelítés négy alkatrészt igényel: a vezérlőpanelt (ESP32, Arduino stb.), a LoRa rádiómodult (például egy RFM95 típusú SX1276/78), a mérni kívánt érzékelőt , és opcionálisan perifériákat, például egy OLED kijelzőt a helyi adatok megjelenítéséhez.

A TTGO LoRa32 V2.0 integrált LoRa adó-vevővel és verziótól függően egy kis OLED kijelzővel rendelkezik. Az ESP32-re épülve WiFi-t és Bluetooth-t biztosít, és sok esetben tökéletes egycsatornás mini átjáró kiépítéséhez is, ha az internethez csatlakozik. Ezen és a hasonló paneleken azonban a LoRa modul egyes jelei (DIO1, DIO2) nincsenek előre bekötve a mikrovezérlőbe , így azokat Önnek kell bekötnie.

Például a TTGO LoRa32 V2.0 jellemzően a következő lábkiosztást használja a LoRa-hoz: SCK a GPIO5-ön, MISO a GPIO19-en, MOSI a GPIO27-en, CS a GPIO18-on, RESET a GPIO14-en és DIO0 a GPIO26-on . A DIO1 és DIO2 általában fizikailag a GPIO33-hoz, illetve a GPIO32-höz csatlakozik, amelyek közvetlenül egymással szemben, az ellenkező sorban helyezkednek el, így nagyon egyszerű a közvetlen jumper használata.

Három tipikus módja van ezeknek a csatlakozásoknak: a vezetékek közvetlen forrasztásával a csatlakozótüskékre (a végső összeszereléshez), áthidaló vezetékek használatával, ha a panel próbapanelen van , vagy a csatlakozások átvezetésével egy erre a célra szolgáló NYÁK-ra, amelyre a TTGO-t csatlakoztatják. Az áthidaló opció általában a legkényelmesebb a teszteléshez.

Csomópont szoftver: LMIC könyvtár, frekvencia és TTN kulcsok

Egy LoRaWAN csomópont Arduino/ESP32-n történő programozásához széles körben használják az MCCI LoRaWAN LMIC könyvtárat , amely megvalósítja a LoRaWAN stacket, és mindent kezel, ami a csatornákkal, csatlakozásokkal, újrapróbálkozásokkal, fogadási ablakokkal stb. kapcsolatos.

Először telepítsd a könyvtárat az Arduino IDE Könyvtárkezelőjéből az „LMIC” kifejezésre keresve, majd az „MCCI LoRaWAN LMIC könyvtár” kiválasztásával. A telepítés után van egy fontos részlet: alapértelmezés szerint az US915 (Egyesült Államok) szabványra van konfigurálva, tehát ha Európában tartózkodsz, akkor EU868-ra kell állítanod.

Ehhez keresd meg az lmic_project_config.h fájlt a könyvtár mappájában (például /Arduino/libraries/MCCI_LoRaWAN_LMIC_library/project_config/), és szerkeszd a definíciókat. Kommenteld ki a CFG_us915 ​​​​fájlt, és engedélyezd a CFG_eu868 fájlt, ügyelve arra is, hogy a megfelelő rádiótípus legyen engedélyezve (például CFG_sx1276_radio az SX1276/78 modulokhoz). Ez egy egyszeri módosítás, amely az összes LMIC projektedre vonatkozik.

Ezután megnyitsz egyet a mellékelt példák közül, például a ttn-abp fájlt , amely rendszeresen küld egy „Hello, world!” üzenetet hasznos adatként. Ez a példa szolgál alapul a tábládhoz és a TTN hitelesítő adataidhoz való adaptáláshoz.

A kódban egy lmic_pinmap struktúrát fogsz látni, amely meghatározza az NSS (CS), RST és DIO lábakat . Alapértelmezés szerint ez általában a Feather M0 LoRa-hoz van leképezve, tehát ha TTGO LoRa32 V2.0-t használsz, akkor ezt a struktúrát úgy kell módosítanod, hogy .nss = 18, .rst = 14 és .dio = {26, 33, 32} értékeket használjon (feltételezve, hogy a DIO1-et a GPIO33-hoz, a DIO2-t pedig a GPIO32-höz kötötted). Ha a hardvered eltér, akkor a dokumentációjában kell keresned, vagy egy konkrét példát kell keresned.

Miután a csatlakozókiosztás helyes, itt az ideje konfigurálni a TTN-ben a csomópontot azonosító kulcsokat . A ttn-abp példában az NWKSKEY, APPSKEY és DEVADDR változók a FILLMEIN szóval jelennek meg, így kitöltheted őket a saját értékekkel.

Ezeket az adatokat a TTN konzolról szerzed be, amikor ABP aktiválással rendelkező eszközt hozol létre. A TTN biztosítja a hálózati munkamenetkulcsot (NWKSKEY), az alkalmazásmunkamenetkulcsot (APPSKEY) és az eszközcímet (DEVADDR) . A felületen a kulcsok biztonsági okokból rejtve vannak, de láthatóvá teheted őket, és ami még hasznosabb, közvetlenül C tömbként másolhatod az értéket (a "<>" gombbal) a megfelelő bájtsorrenddel (msb). A másolás ikonra kattintva a tömb a vágólapra másolódik, és egyszerűen beillesztheted a kódodba, ahol az egyes FILLMEIN elemek találhatók.

Az NWKSKEY és az APPSKEY esetében a TTN által biztosított bájttömb formátumot kell használni , míg a DEVADDR esetében a hexadecimális értéket egyetlen u4_t típusú egész számként kell beállítani, például `static const u4_t DEVADDR = 0x26011111;`. Ezzel a csomópont képes lesz hitelesíteni és a csomagokat a TTN alkalmazáshoz irányítani.

Szenzorok integrálása a csomópont kódjába

Miután a LoRaWAN váz működik, itt az ideje, hogy a tipikus „Hello, world!” üzenetet valódi érzékelőadatokkal helyettesítsük . A TTGO LoRa32 és egy DS18B20 példájánál folytatva, a OneWire buszt és a DallasTemperature könyvtárat használjuk.

  Teljes útmutató a Google Cloud fejlesztői bővítményhez mesterséges intelligencia ügynökök számára

A vázlat elejére írd be a fejléceket és definiáld a busz lábát: `#include <OneWire.h>`, `#include <DallasTemperature.h>`, és `#define ONE_WIRE_BUS X` , ahol X a GPIO láb, amelyhez az érzékelőt csatlakoztattad. Hozd létre a `OneWire` objektumot: `oneWire(ONE_WIRE_BUS)` és a `DallasTemperature` objektumot: `sensor(&oneWire). Ha nincs telepítve a DS18B20 könyvtár, akkor add hozzá a könyvtárkezelőből.

A setup() függvényben inicializáld az érzékelőt a sensor.begin() függvénnyel, és ha szeretnéd, beállíthatod a felbontást (például sensor.setResolution(11)) . Innentől kezdve az érzékelő készen áll a hőmérséklet leolvasására, amikor szükséged van rá.

Az LMIC kulcsfüggvénye az adatok küldéséhez a `do_send(osjob_t* j)`. Belül egy folyamatban lévő átvitel ellenőrzését látod (`OP_TXRXPEND`). Ha nincs ilyen, akkor meghívod a `sensor.requestTemperatures()` függvényt, a `sensor.getTempCByIndex(0)` segítségével lekéred az értéket, és a `mydata` tömbben tárolod. Például használhatod a `mydata[0] = (uint8_t)sensor.getTempCByIndex(0);` függvényt, hogy csak az egész részt küldd el.

Ezután meghívjuk az LMIC_setTxData2(1, mydata, sizeof(mydata), 0) függvényt , ahol az első paraméter a LoRaWAN port (ebben az esetben 1), a második a puffer, a harmadik a méret, az utolsó pedig azt jelzi, hogy az üzenet nyugtázva van-e (1) vagy nem nyugtázva (0). A függvénykönyvtár ezután a következő elérhető időrésbe ütemezi az átvitelt.

Számos lehetséges fejlesztés létezik: a hasznos adat bővítése decimális adatokkal, további érzékelők hozzáadása, adatok hatékony bináris formátumba csomagolása stb. De még ebben az egyszerű verzióban is van egy csomópont, amely rendszeresen valós idejű méréseket küld a TTN-nek, látható a konzolon, és készen áll a más rendszerekkel való integrációra.

OTAA aktiválás, biztonság és gyakorlati tapasztalat

Eddig főként az ABP-t tárgyaltuk kódpéldák céljából, de éles környezetben erősen ajánlott az OTAA (Over-The-Air Activation) használata . Az OTAA-t például a Decentlab érzékelők és számos SenseCAP érzékelő használja, mivel fokozza a biztonságot.

Az OTAA használatával a LoRaWAN munkamenetet minden alkalommal „közvetlenül” egyeztetik, amikor az eszköz csatlakozik a hálózathoz . Amikor a csomópont kikapcsol, újraindul, vagy elveszíti a kapcsolatot, új munkamenetkulcsok generálódnak a következő csatlakozáskor, ami megnehezíti az eszköz klónozását egyszerűen statikus kulcsok másolásával.

A TTN konzolban, amikor az OTAA-t választod egy eszközhöz, a statikus NWKSKEY és APPSKEY helyett DevEUI, JoinEUI/AppEUI és AppKey értékek jelennek meg . A munkamenet-kulcsok minden alkalommal ezekből az értékekből és a szerverrel folytatott adatcseréből jönnek létre, és csak a származtatott kulcsokat fogod látni a munkamenet időtartama alatt.

A gyakorlatban a LoRaWAN-nal a nulláról kezdő felhasználók azt tapasztalták, hogy egy TTN-en regisztrált átjáróval és egy megfelelően konfigurált OTAA érzékelővel a regisztrációs folyamat nagyon egyszerű lehet : hozzon létre egy fiókot a TTN-en, aktiválja az átjárót, regisztrálja az érzékelőt a gyártó által biztosított kulcsokkal, és néhány percen belül megtekintheti az adatokat egy webes platformon (legyen az a Decentlab sajátja, a SenseCAP vagy harmadik féltől származó irányítópultok).

Az olyan tényezők, mint az érzékelő LoRa dobozának elhelyezkedése (legjobb függőleges helyzetben, ami a belső antenna sugárzási mintázatát kedvez) , a rádiós környezet és az átjáró magassága nagyban befolyásolják a tényleges lefedettséget, de a beállítási folyamat meglehetősen mechanikus, ha megértjük.

A TTN-től az alkalmazásaiig: integrációk és vizualizáció

Mivel a csomópontok most már feltöltik az adatokat a TTN-be, a következő lépés az, hogy ezeket az információkat beépítsd a saját alkalmazásaidba, irányítópultjaidba vagy automatizálási munkafolyamataidba . A TTN ehhez hatékony integrációkat és API-t biztosít.

Egy nagyon gyakori megközelítés a Node-RED használata az adatok TTN-től történő fogadására és szükség szerinti feldolgozására . Konfigurálsz egy MQTT vagy HTTP kapcsolatot a TTN alkalmazásod hitelesítő adataival, dekódolod a hasznos adatot (a szenzorok formátuma szerint), és onnan gyakorlatilag bármit megtehetsz: adatbázisokba menthetsz, grafikonokat jeleníthetsz meg, riasztásokat indíthatsz el stb.

Egy másik lehetőség olyan harmadik féltől származó platformok használata , amelyek már integrálódnak a TTN-nel , mint például a Datacake, a MyDevices, a ResIoT, a WMW és mások. Ezen platformok közül soknak már vannak speciális sablonjai olyan eszközökhöz, mint a Decentlab érzékelők vagy egyes Dragino modellek, így csak ki kell választania az eszköztípust, össze kell kapcsolnia a TTN alkalmazással, és máris elkezdheti megtekinteni az adatokat a felhasználóbarát irányítópultokon.

Oktatási projektekben például a TTN-t RAK7289 átjárókkal és Dragino TrackerD nyomkövetőkkel együtt használták személyek vagy járművek helymeghatározására. A munkafolyamat a következő: az átjáró regisztrálása, a nyomkövetők regisztrálása a TTN-ben, az adatok megtekintése a konzolon, majd valós időben megjelenítés egy nyilvános Datacake irányítópulton, térképekkel és grafikonokkal, amelyek mutatják a pozíciót, az akkumulátor töltöttségi szintjét stb.

A fontos megérteni, hogy a TTN LoRaWAN hálózati rétegként és adatútválasztóként működik ; az alkalmazási és vizualizációs réteget te döntöd el: egy API-t felhasználó Python szkripttől egészen egy ipari IoT adatplatformig.

Röviden, egy LoRaWAN csomópont TTN-hez való csatlakoztatása több lépésből áll (helyes frekvencia, megfelelően konfigurált átjáró, TTN regisztráció, csomópontkulcsok, OTAA vagy ABP aktiválás, eszközszoftver, és szükség esetén további integrációk), de minden rész előzetes tapasztalat nélkül is kezelhető, ha a megfelelő irányelveket követik. A kezdeti beállítás befejezése után további csomópontok vagy átjárók telepítése egy rendkívül megismételhető és skálázható folyamattá válik, amely tökéletes nagyméretű érzékelőprojektekhez, intelligens város kezdeményezésekhez, vagy egyszerűen a nagy hatótávolságú IoT-vel való tanuláshoz és kísérletezéshez.