Kā soli pa solim savienot LoRaWAN mezglu ar TTN

Pēdējā atjaunošana: 25 janvāris 2026
  • LoRaWAN ir nepieciešama pareizi konfigurēta vārteja (frekvence, IP tīkls, serveris) un reģistrēta TTN, lai mezgli varētu sazināties.
  • Gala ierīces tiek reģistrētas TTN lietojumprogrammās, izmantojot DevEUI, JoinEUI/AppEUI un AppKey (OTAA) vai NWKSKEY/APPSKEY/DEVADDR (ABP).
  • Datu nosūtīšanai uz TTN ir iespējams izmantot komerciālus sensorus (SenseCAP, Decentlab, Dragino, Tabs) vai pašrocīgi ražotus mezglus ar ESP32/Arduino un LMIC bibliotēku.
  • TTN atvieglo integrāciju ar Node-RED un ārējām platformām, lai vizualizētu un izmantotu LoRaWAN tīkla apkopotos IoT datus.

LoRaWAN mezgla savienošana ar TTN

Ja esat ticis tik tālu, tas ir tāpēc, ka vēlaties uzzināt, kā savienot LoRaWAN mezglu ar TTN no sākuma līdz beigām , neizlaižot neko: vārtejas, mezglus, sensorus, bibliotēkas, atslēgas un tīkla konfigurāciju. Labā ziņa ir tā, ka jums nav jābūt telekomunikāciju ekspertam; ar labi strukturētu rokasgrāmatu un nedaudz pacietības jūs varat izveidot savu funkcionējošu LoRaWAN tīklu acumirklī.

Turpmākajās rindās soli pa solim redzēsiet, kā iestatīt vārteju, reģistrēt to The Things Network tīklā, pievienot lietojumprogrammas un gala ierīces un programmēt LoRaWAN mezglus, kuru pamatā ir ESP32 vai Arduino plates, kā arī piemērus ar komerciāliem sensoriem (SenseCAP, Decentlab, Dragino, Tabs Browan). Mēs apskatīsim arī praktiskas detaļas, kas ne vienmēr ir atrodamas rokasgrāmatās: bieži sastopamas atslēgu problēmas, frekvences izvēle, fiziskie kontaktu savienojumi un triki, lai pārbaudītu, vai viss patiešām sazinās ar TTN.

Kas ir LoRa un LoRaWAN, un kāpēc lietot TTN?

LoRa un LoRaWAN ir divi saistīti jēdzieni, taču tie nav viens un tas pats . LoRa ir Semtech patentēta tāla darbības rādiusa, mazjaudas radiofrekvenču modulācija. LoRaWAN ir tīkla protokols, kas paļaujas uz LoRa, lai pārvaldītu gala ierīču (mezglu) saziņu ar vārtejām un tīkla serveri.

Tipiskā LoRaWAN tīklā ir divas galvenās sastāvdaļas: vārtejas un mezgli . Vārtejas darbojas kā "tilti" starp LoRa pasauli (radio) un IP pasauli (internetu), pārsūtot paketes uz LoRaWAN serveri. Mezgli ir sensori vai izpildmehānismi, kas, izmantojot LoRa, nosūta un saņem informāciju uz šīm vārtejām un no tām.

Lai to visu savienotu, nepieciešams LoRaWAN serveris. Varat maksāt par privātu pakalpojumu (operatori, piemēram, Movistar, Vodafone, vai platformas, piemēram, Loriot, Actility, Kerlink), vai arī izvēlēties kopienas ceļu, izmantojot The Things Network (TTN), kas ir publisks, atvērts tīkls, ko uztur kopiena.

TTN priekšrocība ir datu pārvaldības ievērošana, neitralitāte un iespēja pievienot tīklam vārtejas . Daudzās pilsētās cilvēki paši uzstāda vārtejas, un ikviens var gūt labumu no šī pārklājuma bez maksas, izņemot mezglu aparatūras iegādi.

LoRaWAN frekvences, kanāli un ierobežojumi

Pirms jebkuras ierīces iegādes ir svarīgi pārliecināties, ka LoRa frekvence ir saderīga ar jūsu reģionu . Darbs Eiropā nav tas pats, kas darbs Amerikas Savienotajās Valstīs vai Āzijā; ja izvēlaties nepareizu joslu, ierīce var būt nelietojama vai pat nelegāla.

Eiropā galvenokārt tiek izmantota 868 MHz josla (EU868) . Amerikas Savienotajās Valstīs tipiskā josla ir 915 MHz (US915). Ķīnas mazumtirgotāji piedāvā plašu 433 MHz moduļu klāstu, kas var šķist vilinoši to cenas dēļ, taču tie ne vienmēr ir saderīgi ar LoRaWAN vai jūsu valsts operētājsistēmu.

Papildus frekvencei LoRaWAN ir organizēts kanālos, izkliedes koeficientā (SF) un frekvenču plānos . SF nosaka ātrumu un diapazonu: lielāks SF nozīmē lielāku diapazonu, bet arī ilgāku laiku ēterā, kas patērē vairāk enerģijas un aizņem vairāk kanāla vietas.

Eiropā darbojas labi zināmais "1% noteikums" : katra ierīce var aizņemt radio kanālu tikai nelielu daļu laika, parasti aptuveni 1%. Tas ierobežo datu sūtīšanas biežumu un ir viens no iemesliem, kāpēc LoRaWAN sensori parasti pārraida ik pēc dažām minūtēm, nevis ik pēc dažām sekundēm.

Vārteju un mezglu aparatūras sagatavošana un izvēle

Lai izveidotu praktisku tīklu, jums būs nepieciešams vismaz viens LoRaWAN vārteja un viens vai vairāki mezgli (sensori) . Varat kombinēt dažādu ražotāju aparatūru, ja vien tā atbilst LoRaWAN standartam un darbojas vienā frekvenču joslā.

Viens populārs iekštelpu vārteju modelis ir Dragino LPS8 , kas integrē SX1308 koncentratoru un atbalsta līdz pat 10 paralēliem kanāliem. Tas ir iepriekš konfigurēts ar dažādiem frekvenču plāniem atkarībā no valsts, un Eiropā tas darbojas ar 868 MHz frekvenci. To darbina 5 V spriegums, izmantojot USB-C, un tas izveido savienojumu ar IP tīklu, izmantojot RJ-45 vai Wi-Fi.

Citi vārteju piemēri, kas labi darbojas ar TTN, ir RAK7289 (ārtelpu, izturīgs un ar LTE/4G opciju) vai oficiālie TTN-GW-868 MHz vārteji, kas paredzēti pārklājuma izvietošanai pilsētās vai viedpilsētu projektos. Ir iespējams arī izveidot vienas šūnas vārteju ar ESP32 plati un SX1262 LoRa moduli , kā tas ir darīts ar Wio-SX1262 komplektu un Xiaomi ESP32S3.

Kā mezgliem jums ir divas iespējas: izmantot komerciāli pieejamus sensorus, kas jau ir gatavi LoRaWAN (SenseCAP S210x, Tabs Browan TBHH100, Dragino TrackerD, Decentlab utt.), vai arī veidot savus mezglus ar izstrādes platēm, piemēram, TTGO LoRa32 V2.0, ESP32 + RMF95, Arduino + LoRa moduli utt.

Konfigurējiet LoRaWAN vārteju un pievienojiet to TTN tīklam

Pirmais svarīgais projekta solis ir vārtejas palaišana un ziņojuma “Connected” parādīšana TTN platformā . Lai gan katram ražotājam ir savs informācijas panelis, konceptuālie soļi ir ļoti līdzīgi.

Piemēram, Dragino LPS8 var pārvaldīt, izmantojot SSH vai HTTP . Ja pievienojat to, izmantojot RJ-45 kabeli, jums būs jānoskaidro DHCP servera piešķirtā IP adrese (izmantojot IP skeneri vai maršrutētāju). Ja vēlaties veikt sākotnējo iestatīšanu, izmantojot Wi-Fi, LPS8 izveido savu tīklu ar SSID, piemēram, “dragino-xxxxx”, un noklusējuma paroli, piemēram, “dragino+dragino”. Piekļūstot IP adresei 10.130.1.1, jūs tiksiet novirzīts uz tīmekļa paneli, kur sākotnējais lietotājvārds un parole parasti ir “admin/dragino”.

Ieejot, jūs redzēsiet izvēlni ar vairākām sadaļām, un dažām opcijām var būt sarkans krusts, kas norāda, ka trūkst konfigurācijas . Pirmais solis ir LoRa cilnē atlasīt pareizo frekvenču plānu jūsu reģionam; Eiropā tas ir EU868 (aptuveni 868 MHz).

  Mākoņdatošana: moderno tehnoloģiju pārveide

Pēc tam pieskarieties cilnei LoRaWAN vai Tīkla serveris . Tur jūs nosakāt, ar kuru LoRaWAN serveri vārteja izveidos savienojumu. TTN gadījumā kā pakalpojumu sniedzēju izvēlieties "TTN" un ievadiet Eiropas servera adresi (piemēram, eu1.cloud.thethings.network), saglabājot UDP portus (parasti 1700 gan augšupielādei, gan lejupielādei). Tajā pašā sadaļā redzēsiet vārtejas ID jeb EUI, kas mums būs nepieciešams vēlāk TTN.

Sadaļā “Tīkls” varat konfigurēt, kā vārteja izveido savienojumu ar internetu : LAN, WAN vai Wi-Fi WAN. WAN saskarnei varat izvēlēties statisku IP adresi vai DHCP; ja vien iespējams, ieteicams izmantot statisku IP adresi vadu savienojumā, lai nodrošinātu stabilāku savienojumu un vienkāršāku pārvaldības piekļuvi. LAN sadaļa parasti tiek izmantota vārtejas iekšējam piekļuves punkta tīklam; vislabāk nav mainīt šo iestatījumu, pilnībā neizprotot, ko darāt, jo tas varētu būt glābiņš, ja kaut kas noiet greizi.

Wi-Fi sadaļā varat pielāgot gan vārtejas paša ģenerēto piekļuves punktu, gan tās savienojumu ar ārēju Wi-Fi tīklu . Drošības apsvērumu dēļ ieteicams mainīt rūpnīcas iestatīto piekļuves punkta noklusējuma SSID un paroli.

RAK7289 vārtejās process ir līdzīgs: piekļūstiet tīmekļa panelim, konfigurējiet IP adresi (statisko vai DHCP), izmantojot Tīkls → WAN saskarne , un pēc tam sadaļā LoRa tīkls → Tīkla iestatījumi → Pakešu pārsūtītājs ievadiet TTN servera informāciju un pierakstiet vārtejas EUI, lai vēlāk to reģistrētu TTN. Ja atrodaties aiz maršrutētāja, kas nodrošina DHCP, vārtejas IP adresi varat atrast, aplūkojot nomas tabulu (pēc resursdatora nosaukuma, piemēram, "RAK7289") vai izmantojot tādus rīkus kā nmap.

Vārtejas reģistrācija tīklā The Things Network

Kad vārtejai ir piekļuve internetam, tā jāreģistrē TTN . Ja jums nav konta, vispirms reģistrējieties vietnē The Things Network un pēc tam piekļūstiet konsolei atbilstošajā reģionā (piemēram, https://eu1.cloud.thethings.network/).

Konsolē atlasiet sadaļu Vārtejas un noklikšķiniet uz “Reģistrēt vārteju” . TTN pieprasīs vārtejas ID (unikālu nosaukumu jūsu kontā) un, atkarībā no vārtejas veida, vārtejas EUI. Dragino LPS8 vārtejām, kas izmanto klasisko pakešu pāradresatoru, jāizvēlas opcija “Es izmantoju mantoto pakešu pāradresatoru”.

Turklāt jūs norādīsiet frekvenču plānu (EU868 Eiropai) , atbilstošo reģionu vai maršrutētāju un pēc izvēles atrašanās vietu (koordinātas, iekštelpās/ārā utt.). Vārtejos, piemēram, vienšūnas vārtejā ar XIAO ESP32S3 un Wio-SX1262, pati programmaparatūra startēšanas laikā var parādīt vārtejas ID, izmantojot seriālo portu; vienkārši nokopējiet to un izmantojiet reģistrācijas veidlapā.

Pēc šīs informācijas aizpildīšanas un vārtejas reģistrēšanas TTN parādīs statusa pārbaudītāju (“Savienots” vai “Atvienots”) un sadaļu “Satiksme”, kur reāllaikā varēsiet skatīt pakešu plūsmu. Ja viss ir pareizi konfigurēts gan vārtejā, gan TTN, minūtes vai divu laikā tam vajadzētu mainīties uz “Savienots” un sākt redzēt datplūsmu, kad mezgli pārraida.

Tas nozīmē, ka infrastruktūra (vārteja + serveris) tagad ir darbspējīga . No šī brīža sākas lietojumprogrammu un gala ierīču konfigurācija.

Lietojumprogrammas izveide un mezgla reģistrēšana TTN

TTN ierīcēs ierīces netiek reģistrētas tieši konta saknē, bet gan lietojumprogrammās . Lietojumprogramma grupē vienu vai vairākus mezglus, kas nosūta saistītus datus, piemēram, visus vides sensorus ēkā vai vairākus GPS izsekotājus izglītības projektā.

TTN konsolē dodieties uz sadaļu Lietojumprogrammas un izveidojiet jaunu lietojumprogrammu . Piešķiriet tai unikālu ID, pēc izvēles aprakstu un izvēlieties atbilstošo reģionu. Šajā lietojumprogrammā jūs reģistrēsiet katru LoRaWAN mezglu ar tā akreditācijas datiem (DevEUI, JoinEUI/AppEUI un AppKey vai citām atslēgām atkarībā no aktivizācijas metodes).

Komerciāliem sensoriem, piemēram, Browan TBHH100-868 temperatūras un mitruma sensoriem, parasti tiek pievienota etiķete ar DevEUI, AppEUI un AppKey. Tie parasti izmanto OTAA (Over-The-Air Activation — aktivizēšana pa ēteri) metodi, kas ģenerē atslēgas sesijas ar katru tīkla pievienošanos, padarot to drošāku nekā ABP.

Izmantojot OTAA, TTN jūs izvēlaties reģistrēt jaunu gala ierīci, ievadāt JoinEUI (AppEUI), DevEUI un AppKey , pārbaudāt datus un apstipriniet tos. Pēc saglabāšanas, ja mezgls ir pareizi konfigurēts un atrodas vārtejas diapazonā, tas redzēs tīkla bākus, veiks pievienošanās procedūru un konsolē sāksiet redzēt augšupsaites ziņojumus ar to mērījumiem.

Tas pats attiecas uz sensoriem, piemēram, Decentlab līmeņa un temperatūras sensoriem : ražotājs sniedz ID, DevEUI, AppEUI un AppKey, bet iepriekš nezina, kuru serveri jūs izmantosiet. Jūs esat atbildīgs par šīs informācijas reģistrēšanu TTN (vai citā serverī), lai sensoru varētu reģistrēt. Daudzas Decentlab ierīces tiek iepriekš reģistrētas TTN, ja to pieprasāt, kas vēl vairāk vienkāršo procesu.

Komerciālo LoRaWAN sensoru konfigurēšana

Apskatīsim dažus konkrētus piemērus, kā sagatavot un reģistrēt komerciālus LoRaWAN sensorus , kas pēc tam sazināsies ar TTN caur jūsu vārteju.

SenseCAP S210x klāstā (piemēram, vides sensoriem) tipiska darbplūsma ir ražotāja SenseCraft lietotnes izmantošana . Vispirms lejupielādējiet lietotni, ieslēdziet sensoru ar pogu (turot to nospiestu dažas sekundes, līdz gaismas diode mirgo ik sekundi), un pēc tam lietotnē atlasiet “Skenēt”, lai nolasītu ierīces QR kodu.

Lietotnē ir režīms “Papildu konfigurācija”, kurā kā platformu atlasāt “The Things Network” . Jums jāizvēlas tāds pats frekvenču plāns kā jūsu vārtejai (piemēram, EU868) un jāpārliecinās, ka pievienošanās režīms ir OTAA. Lietotnē tiks parādīts ierīces EUI, AppEUI (JoinEUI) un AppKey; ieteicams tos pierakstīt, jo tie būs jāievada TTN, reģistrējot ierīci.

Tabs Browan TBHH100-868 sensora gadījumā taustiņi tiek piegādāti rūpnīcā iepriekš konfigurēti. Sensors mēra temperatūru un mitrumu, to darbina 3,6 V akumulators un tas pārraida datus saskaņā ar šādiem noteikumiem: ik pēc 60 minūtēm, ja nav izmaiņu, vai ātrāk, ja temperatūra mainās par ±2 °C vai mitrums par ±5 %. Lai to reģistrētu, vienkārši ievadiet ražotāja nodrošinātos APPKey, APPEUI un DevEUI savā LoRaWAN serverī (piemēram, TTN). Dažreiz var rasties problēmas ar formātu vai baitu secību (msb/lsb), tāpēc ir svarīgi to pārbaudīt, ja savienojums neizdodas pirmajā reizē.

  Pilnīgs ceļvedis par decentralizētu mākoņkrātuvi

Dragino TrackerD ierīces tiek izmantotas kā GPS izsekotāji ar panikas pogu. Katrai ierīcei ir savs LoRaWAN atslēgu komplekts. TTN sistēmā tās parasti tiek reģistrētas vienā un tajā pašā lietojumprogrammā (piemēram, "kursa izsekošana"), un ierīce, ja nepieciešams, tiek konfigurēta, izmantojot AT komandas, izmantojot seriālo portu (USB). Dokumentācijā ir detalizēti aprakstītas komandas pārraides ātruma, trauksmes darbības u. c. regulēšanai. Svarīgi: Daudzām Dragino programmaparatūrām ir nepieciešams, lai AT komandas terminālī tiktu ielīmētas pilnībā, nevis rakstītas pa rakstzīmei.

Sensoros, piemēram, Decentlab līmeņa, spiediena vai vides sensoros , filozofija ir līdzīga: DevEUI, AppEUI un AppKey tiek izmantoti, lai tos savienotu ar TTN (vai citu tīklu). Decentlab parasti nosaka 10 minūšu pārraides intervālu, jo tas ir pārbaudīts kompromiss starp datu patēriņu un izšķirtspēju, lai gan to var mainīt pēc pieprasījuma vai izmantojot konfigurāciju. Lietotāji var skatīt datus ražotāja mākoņplatformā vai integrēt ierīci trešo pušu platformās (MyDevices, ResIoT, WMW utt.), pievienojot atbilstošu lietderīgās slodzes dekoderu.

Izveidojiet savu LoRaWAN mezglu, izmantojot atvērtā koda aparatūru

Ja jums patīk eksperimentēt, visjautrāk bieži vien sagādā sava LoRaWAN mezgla izveide un programmēšana . Ļoti populāra kombinācija ir izmantot uz ESP32 bāzes veidotu plati ar integrētu LoRa, piemēram, TTGO LoRa32 V2.0 868 MHz, un pievienot vienkāršu sensoru, piemēram, DS18B20 temperatūras sensoru.

Šai pieejai ir nepieciešamas četras daļas: vadības plate (ESP32, Arduino utt.), LoRa radio modulis (piemēram, RFM95 tips SX1276/78), sensors, kuru vēlaties izmērīt , un pēc izvēles perifērijas ierīces, piemēram, OLED displejs, lai lokāli parādītu datus.

TTGO LoRa32 V2.0 ir aprīkots ar integrētu LoRa raidītāju-uztvērēju un, atkarībā no versijas, nelielu OLED displeju. Balstoties uz ESP32, tas nodrošina Wi-Fi un Bluetooth, un daudzos gadījumos tas ir arī lieliski piemērots viena kanāla mini vārtejas izveidei, kad ir izveidots savienojums ar internetu. Tomēr šajā un līdzīgās platēs daži LoRa moduļa signāli (DIO1, DIO2) nav iepriekš pieslēgti mikrokontrollerim , un tie būs jāpieslēdz pašam.

Piemēram, TTGO LoRa32 V2.0 LoRa parasti izmanto šādu pieslēgvietu izvietojumu: SCK uz GPIO5, MISO uz GPIO19, MOSI uz GPIO27, CS uz GPIO18, RESET uz GPIO14 un DIO0 uz GPIO26 . DIO1 un DIO2 parasti ir fiziski savienoti attiecīgi ar GPIO33 un GPIO32, kas atrodas tieši viens otram pretī pretējā rindā, tāpēc ir ļoti viegli izmantot tiešo tiltslēgu.

Šos savienojumus var izveidot trīs tipiskos veidos: vadu lodēšana tieši pie tapām (galīgai montāžai), savienotājvadu izmantošana, ja plate atrodas uz maketplates , vai savienojumu novilkšana uz speciālas shēmas plates, kurai ir pievienots TTGO. Savienotājvada opcija parasti ir ērtākā testēšanai.

Mezglu programmatūra: LMIC bibliotēka, frekvence un TTN atslēgas

Lai programmētu LoRaWAN mezglu Arduino/ESP32, plaši tiek izmantota MCCI LoRaWAN LMIC bibliotēka , kas ievieš LoRaWAN steku un pārvalda visu, kas saistīts ar kanāliem, pievienošanos, atkārtotiem mēģinājumiem, saņemšanas logiem utt.

Vispirms instalējiet bibliotēku no Arduino IDE bibliotēkas pārvaldnieka , meklējot "LMIC" un atlasot "MCCI LoRaWAN LMIC bibliotēka". Pēc instalēšanas ir jāņem vērā viena svarīga detaļa: pēc noklusējuma tā ir konfigurēta US915 (Amerikas Savienotās Valstis), tāpēc, ja atrodaties Eiropā, tā jāmaina uz EU868.

Lai to izdarītu, bibliotēkas mapē atrodiet failu lmic_project_config.h (piemēram, /Arduino/libraries/MCCI_LoRaWAN_LMIC_library/project_config/) un rediģējiet definīcijas. Izkomentējiet CFG_us915 ​​​​un iespējojiet CFG_eu868, kā arī pārliecinieties, vai ir iespējots pareizais radio tips (piemēram, CFG_sx1276_radio SX1276/78 moduļiem). Šīs ir vienreizējas izmaiņas, kas attiecas uz visiem jūsu LMIC projektiem.

Pēc tam atveriet vienu no iekļautajiem piemēriem, piemēram , ttn-abp , kas periodiski nosūta ziņojumu “Hello, world!” kā lietderīgo slodzi. Šis piemērs kalpo par pamatu tā pielāgošanai jūsu tāfelei un jūsu TTN akreditācijas datiem.

Kodā redzēsiet lmic_pinmap struktūru, kas norāda NSS (CS), RST un DIO pieslēgvietas . Pēc noklusējuma tā parasti ir kartēta Feather M0 LoRa, tāpēc, ja izmantojat TTGO LoRa32 V2.0, šī struktūra ir jāmaina, lai izmantotu .nss = 18, .rst = 14 un .dio = {26, 33, 32} (pieņemot, ka DIO1 ir savienots ar GPIO33 un DIO2 ar GPIO32). Ja jūsu aparatūra atšķiras, jums būs jāiepazīstas ar tās dokumentāciju vai jāatrod konkrēts piemērs.

Kad pieslēgvietu izvietojums ir pareizs, ir pienācis laiks konfigurēt atslēgas, kas identificē jūsu mezglu TTN . Ttn-abp piemērā mainīgie NWKSKEY, APPSKEY un DEVADDR parādās ar vārdu FILLMEIN, lai jūs varētu tos aizpildīt ar savām vērtībām.

Šos datus iegūstat no TTN konsoles, veidojot ierīci ar ABP aktivizāciju. TTN nodrošina tīkla sesijas atslēgu (NWKSKEY), lietotnes sesijas atslēgu (APPSKEY) un ierīces adresi (DEVADDR) . Saskarnē atslēgas drošības apsvērumu dēļ ir paslēptas, taču tās var padarīt redzamas un, vēl lietderīgāk, kopēt vērtību tieši kā C masīvu (izmantojot pogu "<>") ar pareizo baitu secību (msb). Noklikšķinot uz kopēšanas ikonas, masīvs tiek kopēts starpliktuvē, un to var vienkārši ielīmēt kodā, kur atrodas katrs FILLMEIN.

NWKSKEY un APPSKEY gadījumā jāizmanto TTN nodrošinātais baitu masīva formāts , savukārt DEVADDR gadījumā heksadecimālā vērtība jāiestata kā viens vesels skaitlis ar tipu u4_t, piemēram, `static const u4_t DEVADDR = 0x26011111;`. Tādējādi jūsu mezgls varēs autentificēt un maršrutēt savas paketes uz jūsu TTN lietojumprogrammu.

Integrējiet sensorus mezgla kodā

Kad LoRaWAN skelets darbojas, ir pienācis laiks aizstāt tipisko "Sveika, pasaule!" ar reāliem sensoru datiem . Turpinot TTGO LoRa32 un DS18B20 piemēru, jūs izmantojat OneWire kopni un DallasTemperature bibliotēku.

  Vai ir vērts maksāt par VPN? Pilnīgs un godīgs ceļvedis

Skices sākumā iekļaujiet galvenes un definējiet kopnes pieslēgvietu: `#include <OneWire.h>`, `#include <DallasTemperature.h>` un `#define ONE_WIRE_BUS X` , kur X ir GPIO pieslēgvieta, kurai esat pievienojis sensoru. Izveidojiet `OneWire` objektu `oneWire(ONE_WIRE_BUS)` un `DallasTemperature` objektu `sensor(&oneWire). Ja jums nav instalēta DS18B20 bibliotēka, pievienojiet to no bibliotēkas pārvaldnieka.

Funkcijā setup() jūs inicializējat sensoru ar sensor.begin() un, ja vēlaties, iestatāt izšķirtspēju (piemēram, sensor.setResolution(11)) . Pēc tam sensors ir gatavs nolasīt temperatūru, kad tas ir nepieciešams.

LMIC galvenā funkcija datu nosūtīšanai ir `do_send(osjob_t* j)`. Tajā redzēsiet notiekošas pārraides pārbaudi (`OP_TXRXPEND`). Ja tādas nav, izsauciet `sensor.requestTemperatures()`, iegūstiet vērtību ar `sensor.getTempCByIndex(0)` un saglabājiet to masīvā `mydata`. Piemēram, varat izmantot `mydata[0] = (uint8_t)sensor.getTempCByIndex(0);`, lai nosūtītu tikai veselo skaitli.

Pēc tam izsauciet LMIC_setTxData2(1, mydata, sizeof(mydata), 0) , kur pirmais parametrs ir LoRaWAN ports (šajā gadījumā 1), otrais ir buferis, trešais ir izmērs un pēdējais norāda, vai ziņojums ir apstiprināts (1) vai neapstiprināts (0). Pēc tam bibliotēka ieplāno pārraidi nākamajā pieejamajā slotā.

Ir daudz iespējamu uzlabojumu: paplašināt lietderīgo slodzi, iekļaujot decimāldatus, pievienot citus sensorus, iepakot datus efektīvā binārā formātā utt. Bet pat šajā vienkāršajā versijā jums jau ir mezgls, kas periodiski nosūta reāllaika mērījumus uz TTN, ir redzams konsolē un ir gatavs integrācijai ar citām sistēmām.

OTAA aktivizēšana, drošība un praktiska pieredze

Līdz šim mēs galvenokārt esam apsprieduši ABP koda piemēros, bet ražošanas vidē ir ļoti ieteicams izmantot OTAA (Over-The-Air Activation — aktivizēšana pa ēteri) . OTAA ir metode, ko izmanto, piemēram, Decentlab sensori un daudzi SenseCAP sensori, jo tā uzlabo drošību.

Izmantojot OTAA, LoRaWAN sesija tiek saskaņota "ēterā" katru reizi, kad ierīce pievienojas tīklam . Kad mezgls tiek izslēgts, restartēts vai zaudē savienojumu, nākamajā pievienošanās reizē tiek ģenerētas jaunas sesijas atslēgas, apgrūtinot ierīces klonēšanu, vienkārši kopējot statiskās atslēgas.

TTN konsolē, izvēloties ierīcei OTAA, statisko NWKSKEY un APPSKEY vietā būs pieejamas DevEUI, JoinEUI/AppEUI un AppKey vērtības . Sesijas atslēgas katru reizi tiek veidotas no šīm vērtībām un apmaiņas ar serveri, un sesijas laikā redzēsiet tikai atvasinātās atslēgas.

Praksē lietotāji, kas sāk LoRaWAN lietošanu no nulles, ir secinājuši, ka ar vārteju, kas reģistrēta TTN, un pareizi konfigurētu OTAA sensoru, reģistrācijas process var būt ļoti vienkāršs : izveidojiet kontu TTN, aktivizējiet vārteju, reģistrējiet sensoru ar ražotāja nodrošinātajām atslēgām un pēc dažām minūtēm skatiet datus tīmekļa platformā (vai tā būtu Decentlab, SenseCAP vai trešās puses informācijas paneļi).

Faktisko pārklājumu lielā mērā ietekmē tādi faktori kā sensora LoRa kastes atrašanās vieta (vislabāk vertikālā pozīcijā, kas veicina iekšējās antenas starojuma modeli) , radio vide un vārtejas augstums, taču iestatīšanas plūsma, kad to saprot, ir diezgan mehāniska.

No TTN līdz jūsu lietojumprogrammām: integrācijas un vizualizācija

Tā kā mezgli tagad augšupielādē datus TTN, nākamais solis ir šīs informācijas ienest jūsu pašu lietojumprogrammās, informācijas paneļos vai automatizācijas darbplūsmās . TTN nodrošina jaudīgas integrācijas un API šim nolūkam.

Ļoti izplatīta pieeja ir izmantot Node-RED, lai saņemtu datus no TTN un apstrādātu tos pēc nepieciešamības . Jūs konfigurējat MQTT vai HTTP savienojumu ar savas TTN lietojumprogrammas akreditācijas datiem, dekodējat lietderīgo slodzi (atbilstoši sensoru formātam), un no turienes varat darīt praktiski jebko: saglabāt datubāzēs, attēlot grafikus, aktivizēt brīdinājumus utt.

Vēl viena iespēja ir izmantot trešo pušu platformas, kas jau integrējas ar TTN , piemēram, Datacake, MyDevices, ResIoT, WMW un citas. Daudzām no šīm platformām jau ir īpašas veidnes ierīcēm, piemēram, Decentlab sensoriem vai dažiem Dragino modeļiem, tāpēc jums tikai jāizvēlas ierīces tips, jāsaista tas ar savu TTN lietojumprogrammu un jāsāk skatīt datus lietotājam draudzīgos informācijas paneļos.

Piemēram, izglītības projektos TTN ir izmantots kopā ar RAK7289 vārtejām un Dragino TrackerD izsekotājiem cilvēku vai transportlīdzekļu atrašanās vietas noteikšanai. Darbplūsma ir šāda: vārteja tiek reģistrēta, izsekotāji tiek reģistrēti TTN, dati tiek skatīti konsolē un pēc tam reāllaikā tiek parādīti publiskā Datacake informācijas panelī ar kartēm un grafikiem, kas parāda atrašanās vietu, akumulatora līmeni utt.

Svarīgi ir saprast, ka TTN darbojas kā LoRaWAN tīkla slānis un datu maršrutētājs ; jūs izvēlaties lietojumprogrammas un vizualizācijas slāni: sākot no Python skripta, kas patērē API, līdz rūpnieciskai lietu interneta datu platformai.

Īsāk sakot, LoRaWAN mezgla pievienošana TTN ietver vairākus soļus (pareiza frekvence, pareizi konfigurēta vārteja, TTN reģistrācija, mezgla atslēgas, OTAA vai ABP aktivizēšana, ierīces programmatūra un, ja nepieciešams, turpmākas integrācijas), taču katra daļa ir pārvaldāma pat bez iepriekšējas pieredzes, ja tiek ievērotas pareizās vadlīnijas. Kad sākotnējā iestatīšana ir pabeigta, vairāku mezglu vai vārteju izvietošana kļūst par ļoti atkārtojamu un mērogojamu procesu, kas ir ideāli piemērots liela mēroga sensoru projektiem, viedpilsētu iniciatīvām vai vienkārši liela darbības rādiusa lietu interneta apguvei un eksperimentiem.