IoT-eszközök felhőhöz való gyors és megbízható csatlakoztatása globális kompatibilitású mobilhálózati rádiófrekvenciás modulokkal

By Jens Wallmann

Contributed By DigiKey's European Editors

A hordozható vagy távoli végberendezések IoT-kapcsolatának biztosítása, vagy a gépek távoli vezérlése gép-gép kommunikációval (M2M) megoldható felhőn keresztüli adatcserére szolgáló mobil rádiókapcsolattal. Ez egy életképes megoldás, amelynek megvalósítása azonban a fejlesztők számára járhat némi akadállyal. Például tudniuk kell, hogy mely globális vezeték nélküli hálózatok képesek támogatni a szükséges adatátviteli teljesítményt, és hogy a rádiókommunikációs modemeknek melyik protokollokkal kell kompatibilisnek lenniük. Figyelembe kell venniük a rendszer skálázhatóságát, az adatbiztonságot, a költségeket, a piacra kerülés idejét, valamint a felhasználóknál felmerülő beszerzési és üzemeltetési költségeket is.

Ez a cikk röviden ismerteti, mit kínál az LTE Cat 1 az IoT- és M2M-rendszerek fejlesztőinek. Ezután bemutat néhány LARA-R6 sorozatú rádiós modult az u-blox-tól, amelyek univerzális csatlakoztathatóságot és megbízható teljesítményt biztosítanak. Végezetül bemutatja, hogyan konfigurálhatják és vezérelhetik a fejlesztők a modulokat egy fejlesztői kártya és AT-parancsok segítségével, valamint AT-parancssorok generálását könyvtári függvények használatával.

Miben különbözik az LTE Cat 1 az LTE Cat 1bis, LTE Cat M és LTE Cat NB szabványoktól

Míg az LTE mobilhálózati rádiós kapcsolatok ma már gigabites átviteli sebességgel büszkélkedhetnek, az alacsony fogyasztású, nagy területű (LPWA) hálózati protokollokat (LTE Cat 1, LTE Cat 1bis, LTE Cat M és LTE Cat NB) úgy tervezték, hogy különösen jó hatékonyságúak legyenek az energiafogyasztás, a hálózati erőforrások és a költségek szempontjából. Ez kritikusan fontos az IoT-eszközök esetében.

Az LTE Cat 1 akár 20 MHz-es csatornasávszélességet biztosít teljes duplex kapcsolat esetén, és segítségével az akár 10 Mb/s letöltési és 5 Mb/s feltöltési adatátviteli sebesség is elérhető. Két antenna használhatóságának köszönhetően különféle vevőkészülékek (Rx) alkalmazhatók a jobb teljesítményhez (1. táblázat). Az LTE Cat 1bis esetén csak egyetlen antenna használható.

LTE Cat1/Cat 1bis LTE Cat M1 LTE Cat NB1
3GPP Release Release 8 Release 13 Release 13
Letöltési csúcssebesség 10 Mb/s 1 Mb/s 26 kb/s
Feltöltési csúcssebesség 5 Mb/s 1 Mb/s 66 kb/s (multi-tone)
16,9 kb/s (single-tone)
Késleltetés 50 ms – 100 ms 10 ms – 15 ms 1,6 s – 10 s
Antennák száma 2 (LTE Cat 1)
1 (LTE Cat 1bis)
1 1
Duplex üzemmód Teljes duplex Teljes vagy fél duplex Fél duplex
Eszköz vételi sávszélessége 1,4 MHz – 20 MHz 1,4 180 kHz

1. táblázat: Az LPWA protokollok teljesítményének összehasonlítása. Az LTE CAT 1 esetén két antenna használható a vételi (Rx) lehetőségek kiszélesítéséhez, míg az LTE Cat 1bis-nél csak egy antenna használható (kép: Wikipedia, Jens Wallmann)

LTE Cat 1 mobil rádiókommunikáció a globális elérhetőséghez

Az u-blox LARA-R6 sorozata olyan robusztus mobilhálózati rádiós modulokból áll, amelyeket a rádiós hozzáférési technológia (RAT) LTE Cat 1 frekvenciaosztásos duplex (FDD) és időosztásos duplex (TDD) szabványaihoz terveztek. Tartalék kommunikációs lehetőségként támogatják a 3G UMTS/HSPA és a 2G GSM/GPRS/EGPRS adatkapcsolatokat a magasabb szintű hálózatok elérhetetlensége esetén. Ezek a modulok kiváló megoldást jelentenek a globális illetve multiregionális lefedettséghez, és 26 mm x 24 mm-es kisméretű LGA tokozásúak.

A sokoldalú interfészekkel és sokféle funkcióval rendelkező, valamint többsávos és több üzemmódan történő működésre képes LARA-R6 modulok alkalmasak olyan felhasználásra, amikor közepes adatátviteli sebességre, akadálytalan csatlakozásra, kiváló lefedettségre és alacsony késleltetésre van szükség. Ilyen felhasználási esetek például az eszközkövetés, a telematika, a távfelügyelet, a riasztóközpontok, a videofelügyeleti rendszerek, az adatkommunikációs orvostechnika és a fizetőterminálok (POS).

Rossz rádiófrekvenciás lefedettség esetén a megbízható teljesítményhez a modulok mindegyike különféle vételi üzemmódokat támogat (Rx-diverzitás), vagy ha LTE kapcsolaton történő hangátvitelre van szükség (VoLTE). A programozók kihasználhatják a beágyazott IoT protokollok (LwM2M, MQTT) és a biztonsági funkciók (TLS/DTLS, biztonságos frissítés és biztonságos rendszerindítás) nyújtotta előnyöket különböző funkciók megvalósításához, beleértve az eszközkezelést, a távoli eszközvezérlést és a firmware over-the-air (FOTA) típusú biztonságos frissítéseket.

A LARA-R6 sorozat támogatja a 3GPP Release 10 szerinti LTE Cat 1 szabványt, és a három regionális változattal globális lefedettséget biztosít:

  • A LARA-R6001-00B (adat és hang) és a LARA-R6001D-00B (csak adat) modulok 18 LTE FDD/TDD frekvenciasávot és 3G/2G kapcsolatra történő visszaállási képességet támogatnak a globális csatlakozási képességhez.
  • A LARA-R6401-00B (adat és hang) és a LARA-R6401D-00B (csak adat) modulok ideális LTE Cat 1 megoldást nyújtanak Észak-Amerika területére, és kompatibilisek az AT&T, a FirstNet, a Verizon és a T-Mobile LTE frekvenciasávjaival.
  • A LARA-R6801-00B (adat és hang) és a LARA-R6801D-01B (csak adat) modulokat a következő régiókban történő telepítésre tervezték: Európa és Közel-Kelet (EMEA), Ázsia és a csendes-óceáni térség (APAC), Japán (JP) és Latin-Amerika (LATAM) (1. ábra).

Kép – a LARA-R6 modulok különböző regionális változatai által nyújtott lefedettség1. ábra: Három regionális változat létezik LARA-R6 modulokból, lefedve a földgolyó egészét (kép: DigiKey, a szerző által módosítva)

A LARA-R6 modulok különleges jellemzőinek áttekintése

A LARA-R6 modulokban egy mobilhálózati alapsávú processzor található külső interfészekkel, egy RF adó-vevő erősítőkkel és szűrőkkel, valamint memória és egy energiafogyasztás-szabályozási egység (2. ábra).

Kép – egy u-blox LARA-R6 modul belső felépítésének blokkdiagramja (kattintson a nagyításhoz)2. ábra: A LARA-R6 modulok belső felépítése (kép: u-blox)

Az RF adó-vevő a 700 MHz, 800 MHz, 850 MHz, 900 MHz, 1,7 GHz, 1,8 GHz, 1,9 GHz, 2,1 GHz és 2,6 GHz frekvenciasávokban működik. A mobilhálózati alapsávú processzor összes adatátviteli protokollja AT-parancsokkal vezérelhető és konfigurálható a külső UART- és USB-interfészek segítségével.

Protokollok

  • Dual stack IPv4 és IPv6
  • Beágyazott TCP/IP, UDP/IP, FTP és HTTP
  • Beágyazott MQTT és MQTT-SN
  • Beágyazott LwM2M
  • eSIM és hordozófüggetlen protokoll (BIP)

A LARA-R6 modulok 3,1–4,5 voltos tápfeszültséget igényelnek, és üresjárati áramfelvételük körülbelül 1,1 mA. 2G-üzemben az egyes TDMA-időrések elérhetik a 33 dBm feletti (> 2,0 watt), az összes többi RAT esetén pedig a 24 dBm feletti (> 0,25 watt) átviteli csúcsteljesítményt.

A kiváló, 0,1 pikowattnál kisebb jelteljesítménynek megfelelő, -100 dBm-en aluli antennaérzékenység stabil rádiókapcsolatot tud biztosítani a mobilhálózat peremein.

Tesztelés és programozás

Egy LARA-R6 modul képességeinek feltérképezése és programozása leggyorsabban egy R6 fejlesztői kártyával (EVK-R6) és a megfelelő régióhoz való LARA-R6 adapterkártyával (ADP-R6) kezdhető meg. A globális alkalmazási feladatokra készült EVK-R6001-00B tartalmazza az ADP-R6001-00B dugaszolható adapterkártyát (hang + adat) és egy GNSS-adapterkártyát (3. ábra).

Kép – az u-blox LARA-R6 fejlesztői kártya (EVK-R6) egy csatlakoztatott LARA-R6 adapterkártyával (nagyításhoz kattintson a képre)3. ábra: A LARA-R6 modulok fejlesztői kártyája (EVK-R6) egy csatlakoztatott LARA-R6 adapterkártyával (lent) és egy GNSS-kártyával (balra fent) (kép: u-blox)

Az észak-amerikai használatra készült EVK-R6401-00B változat az ADP-R6401-00B adaptert, míg az EMEA/APAC/JP/LATAM régiókhoz készült EVK-R6801-00B az ADP-R6801-00B adapterkártyát tartalmazza. A már említett három hang- és adatátviteli adapterkártya külön is kapható, valamint a csak adatátvitelre alkalmas változatok is, beleértve az ADP-R6401D-00B-t (Észak-Amerikához) és az ADP-R6001D-00B-t (globális használathoz).

Az R6 adapterkártya két antennával és két MiniUSB csatlakozóval bővíti a LARA-R6 modult. Az R6 EVB kártya egy GNSS-modullal, egy SIM-kártya foglalattal, további csatlakozókkal, jumperekkel, kapcsolókkal és tápegységgel egészíti ki a modul perifériáit (4. ábra).

Kép – az u-blox R6 EVB kártyájának funkcionális blokkdiagramja csatlakoztatott GNSS és LARA-R6 adapterekkel (kattintson a nagyításhoz)4. ábra: Az R6 EVB fejlesztői kártya funkcionális blokkdiagramja csatlakoztatott GNSS és LARA-R6 adapterekkel (kép: u-blox)

Minden készlet tartalmaz egy fejlesztői kártyát egy csatlakoztatott LTE Cat 1 LARA-R6 adapterkártyát és egy u-blox GNSS modult, egy USB-kábelt, két LTE mobilhálózati rádióantennát, egy GPS/GLONASS antennát és egy tápegységet.

Az EVK üzembe helyezése

Az u-blox könnyen használható, nagy teljesítményű EVK-R6 fejlesztői készlete leegyszerűsíti a multimódusú LTE Cat 1 / 3G / 2G mobilhálózati modulok kiértékelését. A LARA-R6 modemet egy erre szolgáló telepített USB-illesztőprogramot tartalmazó Windows PC vezérli az USB-csatlakozón keresztül, és a rendszerbeállításokon keresztül egyszerűsíti a kapcsolat beállítását. A kezdéshez a fejlesztőnek a következőket kell elvégeznie:

  1. Be kell helyezni a SIM-kártyát, és csatlakoztatni mindkét mobilhálózati és a GNSS-antennát.
  2. Gondosan be kell állítani az EVK kártya jumpereit és kapcsolóit.
  3. Be kell kapcsolni a tápfeszültséget majd bekapcsolni a fejlesztői kártya SW400 főkapcsolóját.
    1. A „Main UART” interfészen keresztüli alacsony adatátviteli sebességű modemként való működéshez csatlakoztatni kell a számítógépet az EVK kártyán lévő J501 MiniUSB-csatlakozóhoz vagy a J500 RS232-csatlakozóhoz.
    2. A „Two UARTs” alacsony adatátviteli sebességű modemként való működéshez csatlakoztatni kell a számítógépet az ADP kártyán lévő J201 mobilhálózati USB-csatlakozóhoz.
    3. A „Native Cellular USB” segítségével történő nagy adatátviteli sebességű modemként való működéshez csatlakoztatni kell a számítógépet az ADP kártyán lévő J105 MiniUSB-csatlakozóhoz.
  4. Meg kell nyomni az EVB kártyán lévő SW302 Cellular Power-On gombot.
  5. Egy szoftveres terminál emulátor (pl. m-center) elindításával be kell lépni a COM port beállítása menübe, kiválasztani a 4a, 4b vagy 4c lépésnek megfelelő AT-portot, és beállítani a következő értékeket: Data rate: 115 200 bps; Data bits: 8; Parity: N; Stop bits: 1.

További részletekért lásd: EVK-R6_UserGuide_UBX-21035387. Az m-center szoftver segít az u-blox mobilhálózati termékek kiértékelésében, konfigurálásában és tesztelésében, és tartalmaz egy AT parancssori felületet.

Egyszerű internetkapcsolat egy Windows PC segítségével

Egy Windows PC-t a fejlesztői kártyához csatlakoztatva a felhasználó kétféleképpen létesíthet vezeték nélküli internetkapcsolatot:

1: Alacsony sebességű csomagkapcsolt adatkapcsolat: Ez a Windows PC TCP/IP stackjét használja a LARA-R6 modul UART interfészén keresztül. A számítógép és a fejlesztői kártya a 4a pontnak megfelelően vannak összekapcsolva. A következőt kell kiválasztani: Phone and Modem > Modems > Add using the Windows Control Panel. A következő lépésben be kell jelölni a „Don’t detect my modem" jelölőnégyzetet, kiválasztani a „Standard 33,6 kbps modem” beállítást és hozzárendelni egy COM-portot. Szükség esetén külön inicializálási parancsok is megadhatók: Properties > Advanced > Extra initialization commands.

2: Nagysebességű csomagkapcsolt adatkapcsolat: Ebben az esetben az internethez történő hozzáférés a LARA-R6 modul natív mobilhálózati USB-interfészén keresztül történik a Windows PC TCP/IP protokollcsomagjának segítségével. A számítógép és a fejlesztői kártya a 4c pontnak megfelelően vannak összekapcsolva. A következőt kell kiválasztani: Network and Sharing Center > Set up a new connection or network via the Windows Control Panel majd rá kell kattintani a „Connect to the Internet” gombra. A következő lépésben ki kell választani a „Dial-up” lehetőséget és az AT USB portok egyikét. Az utolsó lépés a tárcsázási paraméterek megadása: dial-in number, provider name, user ID és password.

A SIM-kártya regisztrálása a mobilszolgáltatónál

A SIM-kártya és az MNO paraméterek konfigurálása után a mobilhálózati modul a bekapcsolást követően automatikusan regisztrálja magát a mobilhálózaton. Probléma esetén a regisztráció manuálisan ellenőrizhető a 2. táblázatban látható AT-parancsok segítségével.

DTE (felhasználó) által küldött parancs DCE válasz (modul) Leírás
AT+CREG? +CREG: 0,1 OK Parancs a hálózaton történő regisztráció ellenőrzésére.
AT+COPS=0 OK Csak akkor regisztrálja a modult a hálózaton, ha az automatikus regisztráció sikertelen volt (az AT+CREG? visszaadott értéke 0,0).
AT+COPS? +COPS: 0,0, "I TIM",7 OK Az üzemeltető nevének és a rádió-hozzáférési technológia (RAT) olvasása.

2. táblázat: AT regisztrációs parancsok (táblázat: u-blox, a szerző által módosítva)

Kommunikáció a távoli HTTP-kiszolgálóval AT-parancsokkal

A „Firechip_u-blox_LARA-R6_Arduino_Library” GitHub adattár tartalmaz egy kiterjedt AT-parancskönyvtárat a LARA-R6 modulokhoz, C++ nyelven, Arduino vezérlőkhöz írva. Tizenhat alkalmazási példa, köztük ping-tesztek, regisztráció, csomagváltás, SMS, GNSS és IoT-felhő javaslatok találhatók további egyéni programkód-struktúrákhoz.

AT-parancsokkal aktív kapcsolat alatt is küldhetők kérések egy távoli HTTP-kiszolgálóhoz, fogadhatók a kiszolgáló válaszai, és transzparensen tárolhatók a helyi fájlrendszerben. A támogatott módszerek a következők: HEAD, GET, DELETE, PUT, POST file és POST data.

A Lara_R6_Example9 véletlenszerű hőmérsékleteket küld a ThingSpeak.com RemoteHTTP-kiszolgálónak HTTP POST vagy GET használatával. A ThingSpeak a MathWorks IoT-analitikai platformszolgáltatása, amely segít az élő adatfolyamok felhőben történő összesítésében, vizualizálásában és elemzésében. A 3. táblázatban a „POST data” HTTP-parancs szintaxisa látható.

Típus Szintaxis Válasz Példa
Set AT+UHTTPC=<profile_id>,5,
<path>,<filename>,<data>,
<HTTP_content_type>
[,<user_defined_content_type>]
OK AT+UHTTPC=0,5,"/path/file.html", "responseFilename","data",0 OK

3. táblázat: A „POST data” az 5. számú HTTP-parancs, és szintaxisa az ábrának megfelelő (táblázat: u-blox, a szerző által módosítva)

Ez a példa egy Arduino host vezérlőn programozható, amely AT parancsokkal vezérel egy EVK fejlesztői kártyához csatlakoztatott LARA-R6 modult. Ezenkívül egy konfigurált SIM-kártyára van szükség.

A programozónak létre kell hoznia egy ThingSpeak felhasználói fiókot, és a Channels > My Channels > New Channel menüponton keresztül be kell állítania az 1. mezőt a véletlenszerű hőmérsékletmérési értékhez. A hozzátartozó „Write API Key” a „LARA-R6_Example9_ThingSpeak.ino” főprogramban kerül beírásra a myWriteAPIKey változóba.

A C++ főprogram generál egy véletlenszerű hőmérsékleti értéket, megformálja a felhő-specifikus adatsort és 20 másodpercenként meghívja a sendHTTPPOSTdata könyvtári függvényt (1. kód).

Másolás
...
1  String myWriteAPIKey = "PFIOEXW1VF21T7O6"; // Change this to your API key
2  String serverName = "api.thingspeak.com"; // Domain Name for HTTP POST/GET
3  [...]

4  void loop() 5  { 6    // Create a random temperature between 20 and 30  7    float temperature = ((float)random(2000,3000)) / 100.0; 8 9 10   // Send data using HTTP POST 11   String httpRequestData = "api_key=" + myWriteAPIKey + "&field1=" +
                                
String(temperature); 12 13   Serial.print(F("POSTing a temperature of ")); 14   Serial.print(String(temperature)); 15   Serial.println(F(" to ThingSpeak")); 16        17   // Send HTTP POST request to /update. The reponse will be written to
        post_response.txt in the LARA's file system
18   myLARA.sendHTTPPOSTdata(0, "/update", "post_response.txt", httpRequestData,
                             LARA_R6_HTTP_CONTENT_APPLICATION_X_WWW);
19 20 21   // Send data using HTTP GET 22      ==> see original code on Github 23 24   for (int i = 0; i < 20000; i++) // Wait for 20 seconds    25   { 26     myLARA.poll(); // Keep processing data from the LARA so we can catch
                            the HTTP command result
27     delay(1); 28   } 29  } ...

1. kód: Ez a főprogram véletlenszerű hőmérséklet értéket generál és 20 másodpercenként meghívja a sendHTTPPOSTdatakönyvtári függvényt. (kód: Firechip, Github)

Könyvtári funkciókat hívó AT-parancssor generálása

A „Firechip_u-blox_LARA-R6_Arduino_Library.h” könyvtári fejléc továbbítja a sendHTTPPOSTdata függvényhívást a „Firechip_u-blox_LARA-R6_Arduino_Library.cpp” könyvtári eljáráshoz, ahol a teljesen megformázott AT-parancssor generálásra és elküldésre kerül (2. kód).

Másolás
...
1  LARA_R6_error_t LARA_R6::sendHTTPPOSTdata(int profile, String path, 
                              String responseFilename, String data, 
                              LARA_R6_http_content_types_t httpContentType)
2  { 3    LARA_R6_error_t err; 4    char *command; 5 6    if (profile >= LARA_R6_NUM_HTTP_PROFILES) 7     return LARA_R6_ERROR_ERROR; 8 9    command = lara_r6_calloc_char(strlen(LARA_R6_HTTP_COMMAND) + 24 +
                                  path.
length() + responseFilename.length()
                                  + data.
length()); 10   if (command == nullptr) 11     return LARA_R6_ERROR_OUT_OF_MEMORY; 12   sprintf(command, "%s=%d,%d,\"%s\",\"%s\",\"%s\",%d",
             LARA_R6_HTTP_COMMAND, profile, LARA_R6_HTTP_COMMAND_POST_DATA,
             path.
c_str(), responseFilename.c_str(), data.c_str(),
             httpContentType);
13 14   err = sendCommandWithResponse(command, LARA_R6_RESPONSE_OK_OR_ERROR,
                                 
nullptr, LARA_R6_STANDARD_RESPONSE_TIMEOUT); 15 16   free(command); 17   return err; 18 } ...

2. lista: Ez a C++ könyvtári eljárás létrehozza és elküldi a teljesen megformázott AT-parancssort (12. sor) (kód: Firechip, Github)

A LARA_R6::sendHTTPPOSTdata könyvtári eljárás (2. kód) a myLARA.sendHTTPPOSTdata() (1. kód) függvényhívás átadott paramétereit és a könyvtár fejlécében lévő, ezen felül deklarált változókat használja a teljes HTTP-parancssor létrehozásához a 3. táblázatnak megfelelően. Végül a LARA-R6 modem elküldi a kapott AT-parancssort a ThingSpeak RemoteHTTP szerverének:

AT+UHTTPC=0,5,"/update","post_response.txt","api_key=PFIOEXW1VF21T7O6&field1=21.54",0

Összegzés

Az alacsony fogyasztású IoT- és M2M-rendszerek globális szintű hálózatba kapcsolásához a több üzemmódra képes LARA-R6 sorozat LTE Cat 1 rádiós moduljai olcsók és hatékonyak. Amint bemutattuk, a fejlesztők a fejlesztői kártya segítségével könnyen hozzáférhetnek az összes interfészhez, és AT-parancsok segítségével könnyen konfigurálhatják és vezérelhetik a modul protokolljait és funkcióit. Ez egyszerű lehetőségeket biztosít PC-modemként való működésre, az adatok felhőbe küldésére és AT-parancssorok generálására könyvtári függvények segítségével.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Jens Wallmann

Jens Wallmann

Jens Wallmann is a freelancing editor and contributes to electronics publications, both print and online. As an electrical engineer (communications engineering) and a trained industrial electronic engineer he has more than 25 years in electronics development with a focus on measuring technology, automotive electronics, process industry and Radio Frequency.

About this publisher

DigiKey's European Editors