Jste zde

Moduly LTE LARA: univerzální konektivita a globální použití

Zařízení, které jsou mimo dosah bezdrátových sítí jako je wifi, zigbee, matter nebo bluetooth, se musí spolehnout na sítě mobilních operátorů, aby měly zajištěny přístup ke cloudovým službám. Jednou z možností jsou moduly LTE Cat 1, na které se v článku zaměříme.

V článku se dozvíme o základních vlastnostech LTE Cat 1 a představíme si rádiové moduly ze série LARA-R6 od u-bloxu, které poskytují univerzální konektivitu a spolehlivý výkon. Ke konci je uvedena praktická ukázka s vývojovou deskou, včetně snadné konfigurace a ovládání AT příkazy a dostupné softwarové knihovny.

LTE Cat 1 ve srovnání s LTE Cat 1bis, LTE Cat M a LTE Cat NB

LPWA protokoly LTE Cat 1, LTE Cat 1bis, LTE Cat M a LTE Cat NB jsou navrženy tak, aby byly efektivní z hlediska spotřeby energie. LTE Cat 1 poskytuje šířku pásma kanálu až 20 MHz v plném duplexním přenosu a dosahuje rychlosti stahování dat až 10 Mbps a rychlosti odesílání dat až 5 Mbps. Dvě antény umožňují diverzitu přijímače (Rx) pro lepší výkon (tabulka 1). LTE Cat 1bis používá jen jednu anténu.

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

LTE Cat 1 pro globální dostupnost

Řada LARA-R6 se skládá z robustních rádiových modulů navržených pro standard LTE Cat 1 FDD (frekvenčně dělený duplex) a TDD (duplex s časovým dělením). Moduly podporují 3G UMTS/HSPA a 2G GSM/GPRS/EGPRS jako záložní řešení. Tyto moduly jsou vynikajícím řešením pro globální/multiregionální pokrytí a jsou dodávány v malém formátu LGA o rozměrech 26 x 24 mm. Moduly LARA-R6 jsou vybaveny všestrannými rozhraními, širokou škálou funkcí a jsou vhodné pro aplikace, které vyžadují střední datovou rychlost, bezproblémovou konektivitu, vynikající pokrytí a nízkou latenci. Mezi takové aplikace patří sledování majetku, telematika, vzdálené monitorování, poplachová centra, video dohled, vzdálený monitoring pacientů nebo platební terminály.

Všechny moduly podporují Rx diverzitu pro spolehlivý výkon i v situacích se slabým signálem nebo když je vyžadován přenos hlasu přes LTE (VoLTE). Lze 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 vzdálené správy zařízení a zabezpečeného update FOTA. Řada LARA-R6 podporuje LTE Cat 1 podle 3GPP Release 10 a dosahuje globálního pokrytí se třemi regionálními variantami:

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

Obrázek 1: Tři regionální varianty modulů LARA-R6 pokrývají celou zeměkouli. (Zdroj obrázku: DigiKey, upraveno autorem)

Základní vlastnosti LARA-R6

Moduly LARA-R6 obsahují procesor, externí rozhraní, RF transceiver se zesilovači a filtry, paměť a jednotku pro řízení spotřeby (obrázek 2).

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 lze ovládat a konfigurovat AT příkazy přes rozhraní UART a USB.

Protokoly:

  • Dual stack IPv4 a IPv6
  • Vestavěné TCP/IP, UDP/IP, FTP a HTTP
  • Vestavěné MQTT a MQTT-SN
  • Vestavěný LwM2M
  • eSIM and Bearer Independent Protocol (BIP)

Moduly LARA-R6 vyžadují napájecí napětí 3,1 až 4,5 V a mají spotřebu proudu naprázdno okolo 1,1 mA. V provozu 2G mohou jednotlivé časové sloty TDMA dosahovat špičkových vysílacích výkonů přes 33 dBm (> 2,0 W) a všechny ostatní RAT (radio access technology) dosahují úrovní přes 24 dBm (> 0,25 wattů). Vynikající citlivost antény nižší než -100 dBm odpovídá výkonu signálu nižším než 0,1 pW (pikowattu), a to umožňuje stabilní rádiové spojení i na okraji dosahu mobilní sítě.

Vývojová deska ECK-R6

Nejrychlejším způsobem, jak začít vyhodnocovat a programovat modul LARA-R6, je použít vývojovou desku R6 EVB (EVK-R6) a rozšiřující desku LARA-R6 (ADP-R6) pro odpovídající region. Například EVK-R6001-00B obsahuje rozšiřující desku ADP-R6001-00B (hlas + data) a modul GNSS (obrázek 3).

Obrázek 3: LARA-R6 EVB (EVK-R6) s připojenou rozšířitelnou deskou LARA-R6 (dole) a modulem GNSS (vlevo nahoře). (Zdroj obrázku: u-blox)

Varianta EVK -R6401-00B pro Severní Ameriku obsahuje adaptér ADP-R6401-00B, zatímco EVK-R6801-00B je určena pro EMEA/APAC/JP/LATAM a obsahuje ADP-R6801-00B. Tři již zmíněné rozšiřitelné nebo též adaptérové ​​desky pro přenos hlasu a dat jsou k dispozici také samostatně, stejně jako verze pouze pro přenos dat ADP-R6401D-00B (Severní Amerika) a ADP-R6001D-00B (globální). Adaptérová deska R6 rozšiřuje modul LARA-R6 o dvě antény a dva MiniUSB konektory. 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í (obrázek 4).

Obrázek 4: Funkční blokové schéma R6 EVB se zapojenými adaptéry GNSS a LARA-R6. (Zdroj obrázku: u-blox)

Každá sada obsahuje jednu vývojovou desku EVB s připojenou rozšiřitelnou deskou LTE Cat 1 LARA-R6 a GNSS modulem od u-bloxu, jeden USB kabel, dvě LTE antény, GPS/GLONASS anténu a napájecí zdroj.

Uvedení vývojové desky do provozu

Snadno použitelná výkonná sada EVK-R6 zjednodušuje vývoj s moduly LTE Cat 1 / 3G / 2G. Deska se jednoduše připojuje k PC s nainstalovaným speciálním driverem USB. Před připojením k PC je nutné provést následující úkony:

  • Vložit SIM kartu a připojit obě mobilní antény a GNSS anténu
  • Pečlivě nakonfigurovat propojky a přepínače na EVK
  • Připojit napájecí napětí a zapnout hlavní vypínač SW400 na EVB
  • Pro provoz jako modem s nízkou přenosovou rychlostí přes rozhraní “Main UART” připojit PC k MiniUSB jacku J501 nebo RS232 jacku J500 na EVK
  • Pro provoz jako modem s nízkou přenosovou rychlostí přes „Two UARTs“ připojte počítač k mobilnímu rozhraní USB J201 na ADP
  • Pro provoz jako modem s vysokou přenosovou rychlostí přes „Native Cellular USB“ připojte počítač ke konektoru MiniUSB J105 na ADP
  • Stisknout tlačítko Cellular Power-On SW302 na EVB
  • Spustit terminálový aplikační software (m-center), přejít do nabídky nastavení portu COM, vybrat port AT odpovídající 4a, 4b nebo 4c a nastavit tyto hodnoty: Přenosová rychlost: 115 200 bps; Datové bity: 8; Parita: N; Stop bity: 1.

Další podrobnosti naleznete v návodu EVK-R6_UserGuide_UBX-21035387. Nástroj m-center pomáhá vyhodnocovat, konfigurovat a testovat produkty u-blox a obsahuje AT příkazový terminál.

Jednoduché připojení k internetu pomocí Windows PC

Připojením PC s Windows k EVK může uživatel navázat bezdrátové připojení k internetu dvěma způsoby:

  • Nízkorychlostní datové spojení: Využívá TCP/IP stack Windows PC přes UART rozhraní modulu LARA-R6. PC a EVK se propojí podle způsobu 4a. Pomocí ovládacího panelu Windows vybrat Phone and Modem > Modems > Add. Dalším krokem je zaškrtnutí políčka „Don’t detect my modem“ vybrat „Standard 33,6 kbps Modem“ a přidělit COM port. V případě potřeby lze přidat inicializační příkazy v „Properties > Advanced > Extra“.
  • Vysokorychlostní datové připojení: Přistupuje k internetu pomocí TCP/IP stacku Windows PC přes mobilní nativní USB rozhraní modulu LARA-R6. PC a EVK se propojí podle způsobu 4c. Vybereme „Network and Sharing Center > Set up a new connection or network“ prostřednictvím ovládacího panelu a kliknout na „Connect to the internet“. Dalším krokem je výběr „Dial-up“ a jednoho z AT USB portů. Posledním krokem je zadání parametrů vytáčeného připojení (číslo pro vytáčené připojení, jméno poskytovatele, ID uživatele a heslo).

Registrace SIM karty u mobilního operátora

Jakmile jsou nakonfigurovány parametry SIM karty a MNO, mobilní modul se 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.

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

Komunikace se vzdáleným HTTP serverem

Úložiště GitHub „ Firechip_u-blox_LARA-R6_Arduino_Library “ obsahuje rozsáhlou knihovnu AT příkazů pro moduly LARA-R6 napsané v C++ pro řadiče Arduino. Šestnáct příkladů aplikací, včetně testů ping, registrace, přepínání paketů, SMS, GNSS a cloudu IoT, poskytuje šablony pro vlastní struktury kódu. 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 transparentně ukládat tuto odpověď lokálně. Podporované metody jsou HEAD, GET, DELETE, PUT, POST file a POST data.

Lara_R6_Example9 posílá náhodné teploty na RemoteHTTP-Server ThingSpeak.com pomocí HTTP POST nebo GET. ThingSpeak je analytická platforma IoT od společnosti MathWorks, která pomáhá agregovat, vizualizovat a analyzovat datové toky v cloudu. Tabulka 3 ukazuje syntaxi příkazu HTTP „POST data“.

Tabulka 3: „POST data“ je příkaz HTTP číslo 5. (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ů. Kromě toho je vyžadována nakonfigurovaná SIM karta. Programátor si musí vytvořit uživatelský účet ThingSpeak a nastavit pole 1 na náhodnou hodnotu měření teploty přes položku nabídky Channels > My Channels > New Channel. Odpovídající "Write API Key" se zadá do hlavního programu, "LARA-R6_Example9_ThingSpeak.ino" do proměnné myWriteAPIKey. Hlavní program C++ generuje náhodnou hodnotu teploty, vytváří datový řetězec specifický pro cloud a sendHTTPPOSTdata každých 20 sekund volá funkci knihovny (výpis 1).

...
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  }
...

Výpis 1: Tento hlavní program generuje náhodnou hodnotu teploty a sendHTTPPOSTdata každých 20 sekund volá funkci knihovny. (Zdroj kódu: Firechip na Github)

Volání řetězce příkazů AT

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 příkazu AT (výpis 2).

...
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 }
...

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

Knihovní procedura LARA_R6::sendHTTPPOSTdata(Výpis 2) využívá předané parametry volání funkce myLARA.sendHTTPPOSTdata()(Výpis 1) a dodatečně deklarované proměnné z hlavičky knihovny ke generování kompletního HTTP příkazového řetězce podle tabulky 3. Nakonec modem LARA-R6 odešle výsledný AT příkazový řetězec 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í propojení aplikací IoT a M2M s nízkou spotřebou jsou vícerežimové rádiové moduly LTE Cat 1 z řady LARA-R6 efektivní a cenově výhodné. Moduly nabízí snadný přístup ke všem rozhraním pomocí vývojové desky EVK a mohou snadno konfigurovat a ovládat modulu AT příkazy. Díky připojení k PC lze realizovat odesílání dat do cloudu a generovat řetězce příkazů AT.

Článek vyšel v originále na webu DigiKey.com

Hodnocení článku: