Využití globálního mobilního rádiového modulu k rychlému a bezpečnému připojení zařízení IoT ke cloudu

By Jens Wallmann

Contributed By DigiKey's European Editors

Mobilní rádiové připojení na výměnu dat přes cloud představuje dobrou volbu pro připojení přenosných nebo vzdálených síťových koncových zařízení k internetu věcí (IoT) nebo pro vzdálené ovládání strojů pomocí komunikace mezi stroji (M2M). Tato možnost však představuje pro vývojáře překážky, jako je určení, které bezdrátové sítě mohou podporovat požadovanou datovou propustnost po celém světě a které protokoly musí bezdrátový modem zvládat. Je třeba vzít v úvahu také škálovatelnost systému, bezpečnost dat, náklady, dobu uvedení na trh a pořizovací a provozní náklady, které uživatel vynaložil.

Tento článek stručně vysvětluje výhody, jaké technologie LTE Cat 1 nabízí vývojářům IoT a M2M aplikací. Poté představuje rádiové moduly řady LARA-R6 od společnosti u-blox poskytující univerzální konektivitu a spolehlivý výkon. Článek končí ukázkou, jak mohou vývojáři používat vyhodnocovací desku (EVB) ke snadné konfiguraci a ovládání modulů pomocí AT příkazů a generování AT příkazových řetězců pomocí funkcí knihovny.

Standard LTE Cat 1 v porovnání se standardy LTE Cat 1bis, LTE Cat M a LTE Cat NB

Zatímco mobilní rádio LTE nyní dosahuje gigabitových přenosových rychlostí, nízkoenergetické, rozlehlé (LPWA) protokoly, například LTE Cat 1, LTE Cat 1bis, LTE Cat M a LTE Cat NB, jsou navrženy tak, aby byly zvláště efektivní z hlediska spotřeby energie, síťových prostředků a nákladů. Takové hledisko je kriticky důležité pro zařízení IoT.

Protokol LTE Cat 1 poskytuje šířku pásma kanálu až 20 MHz v plném duplexu a dosahuje rychlosti stahování, resp. odesílání dat až 10 Mbps, resp. 5 Mbps. Dvě antény umožňují diverzitu přijímače (Rx) pro dosažení vyšší výkonnosti (tabulka 1). Protokol LTE Cat 1bis používá jedinou anténu.

LTE Cat1/Cat 1bis LTE Cat M1 LTE Cat NB1
3GPP Release Release 8 Release 13 Release 13
Rychlost příchozího připojení ve špičce 10 Mb/s 1 Mbps 26 kbps
Rychlost odchozího připojení ve špičce 5 Mbps 1 Mbps 66 kbps (vícetónový)
16,9 kbps (jednotónový)
Latence 50 ms až 100 ms 10 ms až 15 ms 1,6 s až 10 s
Počet antén 2 (LTE Cat 1)
1 (LTE Cat 1bis)
1 1
Duplexní režim Plny Duplex Plný nebo poloviční duplex Poloviční duplex
Šířka pásma pro příjem zařízení 1,4 MHz až 20 MHz 1,4 180 kHz

Tabulka 1: Porovnání výkonnosti protokolů LPWA. Protokol LTE CAT 1 používá dvě antény pro Rx diverzitu; protokol LTE Cat 1bis používá jednu anténu. (Zdroj obrázku: Wikipedie, Jens Wallmann)

Mobilní rádio LTE Cat 1 pro globální dostupnost

Produkty řady LARA-R6 od společnosti u-blox se skládají z robustních celulárních rádiových modulů navržených pro standardy LTE Cat 1 duplexu s frekvenčním dělením (FDD) nebo časovým dělením technologie rádiového přístupu (RAT). Moduly jako záložní řešení podporují standardy 3G UMTS/HSPA a 2G GSM/GPRS/EGPRS. Tyto moduly představující vynikající řešení pro globální/multiregionální pokrytí jsou dodávány v malém tvarovém faktoru LGA o rozměrech 26 x 24 mm.

Moduly LARA-R6, vybavené všestrannými rozhraními, širokou škálou funkcí a vícepásmovými/vícerežimovými možnostmi, jsou vhodné pro aplikace vyžadující střední datovou rychlost, hladkou konektivitu, dokonalé pokrytí a nízkou latenci. Mezi takové aplikace patří sledování zařízení, telematika, vzdálené monitorování, alarmová centra, video dohled, propojené zdravotnictví a terminály v místě prodeje.

Všechny moduly podporují Rx diverzitu pro spolehlivý výkon v obtížných podmínkách pokrytí nebo v případě požadavku na telefonování přes LTE (VoLTE). Programátoři mohou využívat vestavěné protokoly IoT (LwM2M, MQTT) a funkce zabezpečení (TLS/DTLS, zabezpečená aktualizace a bezpečné spouštění) k implementaci různých funkcí, včetně správy zařízení, vzdáleného ovládání zařízení a zabezpečeného firmwaru bezdrátově. aktualizace (FOTA).

Moduly řady LARA-R6 podporují protokol LTE Cat 1 podle normy 3GPP Release 10 a dosahují globálního pokrytí ve třech následujících regionálních variantách:

  • Moduly LARA-R6001-00B (data a hlas) a LARA-R6001D-00B (pouze data) podporují 18 frekvenčních pásem LTE FDD/TDD a záložní pásmo 3G/2G pro globální konektivitu.
  • Moduly LARA-R6401-00B (data a hlas) a LARA-R6401D-00B (pouze data) poskytují ideální řešení standardu LTE Cat 1 pro Severní Ameriku s podporou pásem LTE od společností AT&T, FirstNet, Verizon a T-Mobile.
  • Moduly LARA-R6801-00B (data a hlas) a LARA-R6801D-01B (pouze data) moduly jsou navrženy pro instalace v následujících regionech: Evropa a Střední východ (EMEA), Asie a Tichomoří (APAC), Japonsko (JP) a Latinská Amerika (LATAM) (obrázek 1).

Mapa regionálních variant modulů LARA-R6Obrázek 1: svět pokrývají tři regionální varianty modulů LARA-R6. (Zdroj obrázku: DigiKey, upraveno autorem)

Stručný přehled speciálních funkcí modulu LARA-R6

Moduly LARA-R6 integrují celulární procesor v základním pásmu s externími rozhraními, RF transceiver se zesilovači a filtry, paměť a jednotku řízení spotřeby energie (obrázek 2).

Schéma vnitřní struktury modulu u-blox LARA-R6 (kliknutím zvětšíte)Obrázek 2: vnitřní struktura modulu LARA-R6. (Zdroj obrázku: u-blox)

RF transceiver pracuje ve frekvenčních pásmech 700 MHz, 800 MHz, 850 MHz, 900 MHz, 1,7 GHz, 1,8 GHz, 1,9 GHz, 2,1 GHz a 2,6 GHz. Všechny protokoly přenosu dat celulárního procesoru v základním pásmu lze ovládat a konfigurovat pomocí AT příkazů přes externí rozhraní UART a USB.

Protokoly

  • Duální zásobník IPv4 a IPv6
  • Vestavěné protokoly TCP/IP, UDP/IP, FTP a HTTP
  • Vestavěné protokoly MQTT a MQTT-SN
  • Vestavěný protokol LwM2M
  • eSIM a Bearer Independent Protocol (BIP)

Moduly LARA-R6 vyžadují napájecí napětí 3,1 až 4,5 V a odebírají proud naprázdno kolem 1,1 mA. Při provozu v sítích 2G mohou jednotlivé časové sloty TDMA dosahovat vysílacích výkonů ve špičkách přes 33 dB vztažených na 1 mW (dBm) (> 2,0 W), přičemž všechna ostatní zařízení s technologií RAT dosahují úrovní přes 24 dBm (> 0,25 W).

Vynikající citlivost antény nižší než -100 dBm odpovídající výkonu signálu nižšímu než 0,1 pW umožňuje stabilní rádiové spojení na okraji mobilní sítě.

Vyhodnocování a programování

Nejrychlejší způsob, jak začít vyhodnocovat a programovat modul LARA-R6, je použít vyhodnocovací desku R6 EVB (EVK-R6) a zásuvnou adaptérovou desku LARA-R6 (ADP-R6) pro odpovídající region. Například vyhodnocovací souprava EVK-R6001-00B pro globální aplikace obsahuje zásuvnou adaptérovou desku ADP-R6001-00B (hlas + data) a adaptérovou desku GNSS (obrázek 3).

Obrázek - vyhodnocovací deska LARA-R6 EVB (EVK-R6) od společnosti u-blox s připojenou adaptérovou deskou LARA-R6 (kliknutím zvětšíte)Obrázek 3: vyhodnocovací deska LARA-R6 EVB (EVK-R6) s připojenou adaptérovou deskou LARA-R6 (dole) a deskou GNSS (vlevo nahoře). (Zdroj obrázku: u-blox)

Varianta vyhodnocovací soupravy EVK-R6401-00B pro Severní Ameriku zahrnuje adaptér ADP-R6401-00B, zatímco souprava EVK-R6801-00B pro trhy EMEA/APAC/JP/LATAM zahrnuje adaptér ADP-R6801-00B. Tři zmíněné adaptérové desky pro přenos hlasu a dat jsou k dispozici také samostatně, stejně jako verze pouze pro přenos dat, včetně modelů ADP-R6401D-00B (Severní Amerika) a ADP-R6001D-00B (globální trhy).

Adaptérová deska R6 rozšiřuje modul LARA-R6 o dvě antény a dva konektory MiniUSB. Vyhodnocovací deska R6 EVB přidává modul GNSS, slot pro SIM kartu, další zásuvná připojení, propojky, přepínače a napájení periferií modulu (obrázek 4).

Funkční blokové schéma vyhodnocovací desky u-blox R6 EVB se zapojenými adaptéry GNSS a LARA-R6 (kliknutím zvětšíte)Obrázek 4: funkční blokové schéma vyhodnocovací desky R6 EVB se zapojenými adaptéry GNSS a LARA-R6. (Zdroj obrázku: u-blox)

Každá souprava obsahuje jednu vyhodnocovací desku EVB s připojenou adaptérovou deskou LTE Cat 1 LARA-R6 a modulem GNSS od společnosti u-blox, jeden USB kabel, dvě LTE mobilní rádiové antény, anténu GPS/GLONASS a napájecí zdroj.

Uvedení vyhodnocovací soupravy do provozu

Snadno použitelná výkonná vyhodnocovací souprava EVK-R6 od společnosti u-blox zjednodušuje vyhodnocování vícerežimových mobilních modulů LTE Cat 1/3G/2G. Počítač se systémem Windows a nainstalovaným USB ovladačem modulu LARA-R6 ovládá modem LARA-R6 přes USB konektor a zjednodušuje konfiguraci zapojení pomocí systémových nastavení. Aby vývojář mohl začít, musí provést následující kroky:

  1. Vložit SIM kartu a připojit obě mobilní antény a GNSS anténu.
  2. Pečlivě nakonfigurovat propojky a přepínače vyhodnocovací soupravy (EVK).
  3. Přivést napájecí napětí a zapnout hlavní vypínač SW400 na vyhodnocovací desce.
    1. Připojit počítač ke konektoru MiniUSB J501 nebo ke konektoru RS232 J500 na vyhodnocovací soupravě pro aktivaci provozu jako modem s nízkou přenosovou rychlostí přes rozhraní „Main UART”.
    2. Připojit počítač ke konektoru mobilního rozhraní USB J201 na adaptérové desce pro aktivaci provozu jako modem s nízkou přenosovou rychlostí přes „dvě rozhraní UART“.
    3. Připojit počítač ke konektoru MiniUSB J105 na adaptérové desce pro aktivaci provozu jako modem s vysokou přenosovou rychlostí přes rozhraní „Native Cellular USB“.
  4. Stisknout tlačítko Cellular Power-On SW302 na vyhodnocovací desce (EVB).
  5. Spustit terminálový aplikační software (například m-center), přejít do nabídky nastavení portu COM, vybrat AT port odpovídající metodě 4a, 4b nebo 4c a nastavit následující hodnoty: Přenosová rychlost: 115 200 bps; Datové bity: 8; Parita: N; Stop bity: 1.

Další podrobnosti naleznete v uživatelské příručce vyhodnocovací soupravy EVK-R6_UserGuide_UBX-21035387. Nástroj m-center, který pomáhá vyhodnocovat, konfigurovat a testovat mobilní produkty od společnosti u-blox, obsahuje terminál AT příkazů.

Jednoduché připojení k internetu pomocí počítače se systémem Windows

Připojením počítače se systémem Windows k vyhodnocovací soupravě může uživatel vytvořit bezdrátové připojení k internetu dvěma způsoby:

1: Nízkorychlostní paketové datové připojení: tento způsob využívá TCP/IP zásobník počítače se systémem Windows přes rozhraní UART modulu LARA-R6. Počítač se propojí s vyhodnocovací soupravou pomocí metody 4a. Vývojář musí pomocí ovládacího panelu systému Windows vybrat položku Telefon a modem > Modemy > Přidat. Jako další krok zaškrtnout políčko „Nezjišťovat můj modem“, vybrat položku „Standardní modem 33,6 kbps “ a přidělit port COM. V případě potřeby může vývojář přidat další příkazy vybráním položky Vlastnosti > Upřesnit > Další inicializační příkazy.

2: Vysokorychlostní paketové datové připojení: tento způsob přistupuje k internetu pomocí TCP/IP zásobníku počítače se systémem Windows přes nativní mobilní USB rozhraní modulu LARA-R6. Počítač se propojí s vyhodnocovací soupravou pomocí metody 4c. Vývojář musí přejít na položku Centrum sítí a sdílení > Nastavit nové připojení nebo síť prostřednictvím ovládacího panelu Windows a kliknout na tlačítko „Připojit k internetu“. Jako další krok vybrat položku „Dial-up“ a jeden z AT USB portů. Posledním krokem je zadání parametrů vytáčeného připojení (číslo vytáčeného připojení, jméno poskytovatele, ID uživatele a heslo).

Registrace SIM karty u mobilního operátora

Po nakonfigurování parametrů SIM karty a MNO se mobilní modul po zapnutí automaticky zaregistruje v mobilní síti. V případě problému lze registraci zkontrolovat ručně pomocí AT příkazů uvedených v tabulce 2.

Příkaz odeslaný DTE (uživatel) Odezva DCE (modul) Popis
AT+CREG? +CREG: 0,1 OK Ověřit síťovou registraci.
AT+COPS=0 OK Registrovat modul v síti pouze tehdy, pokud se automatická registrace nezdařila (AT+CREG? vrátí 0,0).
AT+COPS? +COPS: 0,0 "I TIM", 7 OK Přečíst jméno operátora a technologii rádiového přístupu (RAT).

Tabulka 2: Registrační AT příkazy. (Zdroj tabulky: u-blox, upraveno autorem)

Komunikace se vzdáleným HTTP serverem pomocí AT příkazu

Úložiště GitHub „Firechip_u-blox_LARA-R6_Arduino_Library” obsahuje rozsáhlou knihovnu AT příkazů pro moduly LARA-R6 napsaných v jazyce C++ pro řadiče Arduino. Šestnáct příkladů aplikací, včetně ping testů, registrace, přepínání paketů, SMS, GNSS a cloudu IoT, poskytuje návrhy vlastních kódových struktur.

AT příkazy mohou také odesílat požadavky na vzdálený server HTTP během aktivního připojení, přijímat odpověď serveru a tuto odpověď transparentně ukládat v místním systému souborů. Podporované metody zahrnují HEAD, GET, DELETE, PUT, POST file a POST data.

Příklad Lara_R6_Example9 odesílá náhodné hodnoty teplot na server RemoteHTTP ThingSpeak.com pomocí protokolu HTTP POST nebo GET. ThingSpeak je analytická platforma IoT od společnosti MathWorks, která pomáhá agregovat, vizualizovat a analyzovat živé datové toky v cloudu. Tabulka 3 ukazuje syntaxi příkazu HTTP „POST data“.

Typ Syntaxe Odezva Příklad
Soubor 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

Tabulka 3: „Data POST“ je HTTP příkaz číslo 5 naformátovaný podle obrázku. (Zdroj tabulky: u-blox, upraveno autorem)

Tento příklad lze naprogramovat na hostitelském řadiči Arduino, který ovládá modul LARA-R6 na desce EVK pomocí AT příkazů. Dále je vyžadována nakonfigurovaná SIM karta.

Programátor musí vytvořit uživatelský účet na platformě ThingSpeak a pomocí položky nabídky Kanály > Moje kanály > Nový kanál nastavit v poli 1 náhodně naměřenou hodnotu teploty. Odpovídající výraz „Write API Key“ se zadává v hlavním programu, výraz „LARA-R6_Example9_ThingSpeak.ino“ je uložen v proměnné myWriteAPIKey.

Hlavní program C++ každých 20 sekund vygeneruje náhodnou hodnotu teploty, vytvoří datový řetězec specifický pro cloud a zavolá funkci knihovny sendHTTPPOSTdata (Listing 1).

Kopírovat
...
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  } ...

Listing 1: tento hlavní program každých 20 sekund vygeneruje náhodnou hodnotu teploty a zavolá funkci knihovnysendHTTPPOSTdata. (Zdroj kódu: Firechip na Github)

Generování řetězce AT příkazů pomocí volání funkcí knihovny

Záhlaví knihovny „Firechip_u-blox_LARA-R6_Arduino_Library.h“ předává volání funkce sendHTTPPOSTdata do procedury knihovny „Firechip_u-blox_LARA-R6_Arduino_Library.cpp“, kde je vygenerován a odeslán plně formátovaný řetězec AT příkazů (Listing 2).

Kopírovat
...
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 } ...

Listing 2: Tato procedura knihovny C++ generuje a odesílá plně formátovaný řetězec AT příkazů (řádek 12). (Zdroj kódu: Firechip na Github)

Procedura knihovny LARA_R6::sendHTTPPOSTdata (Listing 2) používá předané parametry volání funkce myLARA.sendHTTPPOSTdata() (Listing 1) a dodatečně deklarované proměnné ze záhlaví knihovny k vygenerování úplného řetězce příkazů HTTP podle tabulky 3. Nakonec modem LARA-R6 odešle výsledný řetězec příkazů AT na server ThingSpeak RemoteHTTP:

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

Závěr

Pro globální síťové připojení aplikací IoT a M2M s nízkou spotřebou energie jsou efektivní a cenově výhodné vícerežimové rádiové moduly LTE Cat 1 řady LARA-R6. Bylo ukázáno, že vývojáři mohou snadno přistupovat ke všem rozhraním pomocí vyhodnocovací soupravy a provádět snadnou konfiguraci a ovládání protokolů i funkcí modulu pomocí AT příkazů. Takové řešení poskytuje jednoduché možnosti pro provoz jako PC modem, odesílání dat do cloudu a generování řetězců AT příkazů prostřednictvím funkcí knihovny.

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