Hvorfor og hvordan du kan kickstarte cellulære IoT-projekter ved hjælp af Microchips IoT-udviklingskort
Bidraget af DigiKeys nordamerikanske redaktører
2022-09-08
Cellulær Internet of Things (IoT), en LPWAN-teknologi (Low Power Wide Area Network), tilbyder en klar og gennemprøvet vej til sikker og robust IoT til applikationer, der spænder fra smart-byer til landbrug og fjernovervågning af infrastruktur. Cellulær IoT er imidlertid en kompleks teknologi, som er skræmmende for uerfarne designere, der går i gang med et projekt.
Udfordringer i forbindelse med design af cellulære IoT-systemer kan dog lettes ved at basere projekterne på udviklingskort til cellulære systemer, som anvender velkendte mikrocontrollere (MCU'er) til generelle formål og integrerede designmiljøer (IDE'er). Disse udviklingskort, der understøttes af biblioteker med open source-software og simpel sensortilslutning, gør det lettere for designeren at komme i gang med cellulære IoT-projekter fra hardware-layout hele vejen til at sende data til skyen.
Denne artikel beskriver kort fordelene ved cellulær IoT, før den forklarer de komplekse designproblemer, som teknologien kan medføre. Artiklen beskriver derefter, hvordan brugen af cellulære IoT-udviklingskort kan fjerne en stor del af denne kompleksitet. Endelig beskriver artiklen, hvordan man opsætter et Microchip Technology-udviklingskort til at sende simple farve- og temperaturdata til skyen.
Hvad er cellulær IoT?
Cellulær IoT anvender mobilteknologi med lav effekt til at forbinde IoT-slutanordninger (f.eks. sensorer og aktuatorer) med skyen. Det er en LPWAN-teknologi, der er kendetegnet ved en rækkevidde på over en kilometer, understøttelse af slutenheder med høj tæthed og lavt gennemløb.
Mens der findes andre LPWAN-teknologier - især LoRaWAN (se "Accelerate LoRaWAN IoT Projects with an End-to-End Starter Kit") og Sigfox - tilbyder cellulær IoT nogle vigtige fordele, herunder:
- Fremtidssikring: Som standard er specifikationen for cellulær IoT konstant under revision og udvikling.
- Skalerbarhed: Cellulær IoT kan understøtte den hurtige udbredelse af IoT gennem en etableret cellulær arkitektur.
- Tjenestekvalitet (QoS): Cellulær IoT giver høj pålidelighed, fordi det er baseret på en infrastruktur, der er gennemprøvet og modnet i kommercielle applikationer i store mængder.
- IP-interoperabilitet: Enheder kan forbindes direkte til skyen uden behov for dyre og komplekse gateways.
Designere skal tage højde for, at der er en løbende udgift forbundet med dataoverførsel i forbindelse med mobilt IoT. Dette er ikke tilfældet med konkurrerende teknologier som LoRaWAN, der anvender frekvensspektret uden licens. Omkostningerne til IoT-data på mobiltelefoni er imidlertid faldende som følge af konkurrencepresset og øget brug af edge computing, hvilket reducerer mængden af ubetydelige data, der sendes over netværket.
Cellulær IoT er styret af en telekommunikationsstandard, der reguleres og opdateres af Third Generation Partnership Project (3GPP). Udgave 13 af 3GPP's standard udvidede sine M2M-modemkategorier (machine-to-machine) til at omfatte billige modemmer med lav effekt og lavt gennemløb, der er egnede til IoT-forbindelse. Yderligere udgivelser af standarden har resulteret i yderligere forbedringer af disse IoT-modemmer.
Trådløse sensorer, der er udstyret med IoT-modemmer til mobiltelefoni, kan sende data på tværs af kilometer til skyen uden behov for dyre og komplekse gateways og med den sikkerhed og QoS, som mobiltelefoni er kendt for.
Forskellen mellem LTE-M og NB-IoT
Cellulært IoT findes i to former, LTE kategori M1 (LTE-M) og smalbånds-IoT (NB-IoT). Begge typer er designet til brug med ressourcebegrænsede, ofte batteridrevne enheder, som er typiske for IoT og Industrial IoT (IIoT). Da IoT-modemmer tilsluttes til etableret mobilinfrastruktur, kræver hvert modem sit eget SIM-modul (Subscriber Identity Module).
LTE-M er baseret på en reduceret LTE-teknologi ("4G"). Den understøtter sikker kommunikation, allestedsnærværende dækning og høj systemkapacitet. Dennes evne til at fungere som et fuld duplex-system over en relativt stor båndbredde (1,4 megahertz (MHz)) forbedrer latenstiden og gennemstrømningen sammenlignet med NB-IoT. Den rå datatransmission er 300 kilobit pr. sekund (Kbits/s) downlink og 375 Kbits/s uplink. Teknologien er velegnet til sikre IP-forbindelser fra ende til ende, og mobiliteten understøttes af LTE-celleoverføringsteknikker. LTE-M er velegnet til mobile applikationer som f.eks. sporing af aktiver eller sundhedspleje.
NB-IoT er primært designet med henblik på energieffektivitet og bedre indtrængen i bygninger og andre områder, der er ugunstige for radiofrekvenser. I modsætning til LTE-M er den ikke baseret på LTE's fysiske lag (PHY). Modemkompleksiteten er endnu mindre end for en LTE-M-enhed, da NB-IoT bruger en båndbredde på 200 kilohertz (kHz). Selv om den rå datadataoverførsel er beskedne 60/30 Kbits/s, er rækkevidden bedre end LTE-M. NB-IoT er velegnet til statiske applikationer som f.eks. intelligente målere, der kan være skjult af vægge.
Kommercielle cellulære IoT-modemmer
Der findes nu en række kommercielle LTE-M/NB-IoT-modemmer. Et eksempel er Monarch 2 GM02S-modulet fra Sequans. Enheden understøtter en enkelt lagerførende enhed (SKU) RF-front-end, der er egnet til 20 af de globale LTE-bånd. Den leveres i et kompakt LGA-modul, der måler 16,3 x 17 x 1,85 mm. Modulet opfylder kravene i 3GPP Release 14/15. Modemmet, der drives af en enkelt strømforsyning på 2,2 til 5,5 volt, kan yde en maksimal sendestyrke på +23 decibel i forhold til 1 milliwatt (mW) (dBm).
GM02S understøtter et eksternt SIM-kort og et eSIM-kort samt integrerede SIM-kort. Der medfølger et 50 ohm (Ω) antenneinterface. Enheden leveres med en LTE-M/NB-IoT-softwarestack og Sequans Cloud Connector-software for at lette tilslutning til kommercielle cloud-platforme (Figur 1).
Figur 1: Sequans' GM02S LTE-M/NB-IoT-modem leveres i en kompakt pakke og med en moden softwarestak. (Billedkilde: Sequans)
Udfordringer i forbindelse med design af cellulært IoT
Selv om GM02S-modemmet er en højt integreret enhed, der leveres med en softwarestak og cloud-tilslutning, er der ligesom alle kommercielle modemmer stadig et betydeligt udviklingsarbejde nødvendigt, før en IoT-applikation kan sende data problemfrit over kilometer til skyen.
Modemmet er udelukkende beregnet til at varetage kommunikationen mellem slutanlægget og basestationen. Der er behov for en separat overvågnings- og applikationsprocessor til at styre modemet og samtidig køre sensorapplikationssoftwaren. Derudover skal designeren også overveje antennekredsen(e), strømforsyning og udstyre en slutenhed med et SIM-kort for at sikre problemfri forbindelse med mobilnettet (se "Sådan bruger du integrerede multibåndsantenner til at spare plads, kompleksitet og omkostninger i IoT-designs").
Ud over hardwaredesignet er det nødvendigt med nogle kodningsevner for at få et mobilmodul til at oprette forbindelse til netværket og modtage/overføre data. Hvis designet anvender en ekstern applikations-MCU, kommunikerer den typisk med mobilmodulet ved hjælp af et UART-seriel link (selv om der også anvendes andre I/O-interfaces). AT-kommandoer ("attention") er standardmetoden til styring af et mobilmodem. Kommandoerne består af en række korte tekststrenge, der kan kombineres for at udføre handlinger som f.eks. at ringe op, lægge på og ændre parametrene for forbindelsen.
Der findes to typer AT-kommandoer: Grundlæggende kommandoer er dem, der ikke begynder med "+". "D" (opkald), "A" (svar), "H" (kontrol af opkobling) og "O" (tilbage til online datatilstand) er eksempler herpå. Udvidede kommandoer er de kommandoer, der starter med "+". F.eks. "+CMGS" (Send SMS-besked), "+CMGL" (List SMS-beskeder) og "+CMGR" (Læs SMS-beskeder) (se "Brug et mobilmodul til at forbinde et Maker-projekt til IoT").
Disse hardware- og softwareovervejelser medfører kompleksitet i det cellulære IoT, som kan bremse udviklingen hos mindre erfarne designere. Heldigvis er producenterne af applikations-MCU'er og IoT-modemmer til mobiltelefoni nu gået sammen om at tilbyde hardware- og softwaredesignværktøjer, der gør det meget lettere at udnytte denne vigtige LPWAN-teknologi.
Eliminering af kompleksitet med IoT-udviklingskort
Det er betydeligt nemmere at tackle udfordringerne ved design af cellulær IoT-design ved at basere en prototype på et specialdesignet udviklingskort. Hardware til udviklingskortet omfatter typisk en antenne, en strømkilde, et SIM-kort med en vis fri datamængde, en applikationsprocessor og tuningnetværk for at sikre god RF-ydelse. Dette giver designerne et solidt hardwareforspring til deres projekt og giver dem mulighed for at fokusere på applikationsudvikling. Med det rigtige valg af udviklingskort kan applikationsudviklingen endda udføres i en velkendt IDE.
Et eksempel på et populært mobilt IoT-udviklingskort er EV70N78A AVR-IoT cellulær mini udviklingskort fra Microchip. Dette er en hardwareplatform baseret på den populære Microchip AVR128DB48 MCU og Sequans Monarch 2 GM02S-mobilmodulet, der er beskrevet ovenfor. MCU'en er en 8-bit, 24 MHz-enhed. Den har 128 kilobyte (Kbytes) flash, 16 Kbyte SRAM, 512 bytes EEPROM og leveres i en 48-ben pakke.
Udviklingskortet integrerer også et ATECC608B-sikkerhedselement når det er tilsluttet et LTE-M- eller NB-IoT-netværk, bruges ATECC608B til at autentificere hardwaren over for cloud'en for at identificere hvert enkelt kort entydigt.
For at gøre det endnu nemmere for designeren indeholder Microchip-udviklingskortet også et aktiveringsklart Truphone SIM-kort med 150 megabyte (Mbytes) data.
Udviklingskortet har fem bruger-LED'er, to mekaniske knapper, et 32,768 kHz krystal, farve- og temperatursensorer, en Adafruit Feather-kompatibel edge-connector, et Qwiic I2C-stik, en indbygget debugger, en USB-port, muligheder for batteri og ekstern indgangsspænding samt en MCP73830 Li-ion/Li-po-batterioplader med opladningsstatus-LED (figur 2).
Figur 2: AVR-IoT celulær mini udviklingskort baseret på AVR128DB48 MCU'en og leveres komplet med et SIM-kort og 150 MByte data. (Billedkilde: Microchip Technology)
Opstart af et cellulært IoT-projekt
Formålet med cellulær IoT er at forbinde IoT-slutudstyr som f.eks. sensorer og aktuatorer trådløst, så deres data kan sendes over kilometer til skyen. På Microchip-udviklingskortet er MCU'en forudindlæst med et firmware-image, der danner en demoapplikation, som giver brugerne mulighed for hurtigt at forbinde og sende data fra de indbyggede temperatur- og farvesensorer til en cloud-baseret sandkasse (hostet af AWS).
For at gøre hardwaren klar til udvikling er det blot at aktivere og indsætte SIM-kortet, tilslutte den eksterne antenne til kortet, tilslutte debug USB-C-porten på kortet til pc'en, scanne QR-koden på bunden af kortet eller åbne masselagerenheden og følge CLICK-ME.HTM til webside for sættet.
Et Microchip IoT Provisioning Tool, der er tilgængeligt på Github, giver en brugervenlig løsning til konfiguration af en AVR-IoT cellulær mini til den valgte cloud-udbyder, indstilling af netværksudbyderen og valg af frekvensbånd til cellulær kommunikation. (For at sandkassens demofirmware kan fungere, skal udviklingskortet være konfigureret til AWS Microchip-sandkassen.)
Når udviklerne har fået en vis tillid til demoprogrammet, kan de begynde at bygge deres eget program ved hjælp af udviklingskortets fulde Arduino IDE-understøttelse. Denne understøttelse er baseret på et AVR IoT-cellulært Arduino-bibliotek, der er hostet på Github. Biblioteket er bygget oven på open source DxCore (figur 3).
Figur 3: AVR IoT-biblioteket til mobilt IoT-systemer (orange) indeholder softwaremoduler til programmering og styring af udviklingskortet (vist i forenklet form i grøn). (Billedkilde: Microchip Technology)
Den indbyggede debugger (PKOB nano) giver fuld programmeringsstøtte til Arduino IDE. Der er ikke behov for eksterne værktøjer, og den giver også adgang til et interface til en seriel port (seriel-til-USB bro) og to logikanalysatorkanaler (debug GPIO). Den indbyggede debugger på AVR IoT cellulær mini-kortet vises som en human interface-enhed (HID) på host-computerens USB-subsystem. Til mere ambitiøse projekter giver udviklingskortets Qwiic- og Feather-kompatible kantkontakter mulighed for nem udvidelse fra et bredt udvalg af add-on-kort fra Sparkfun og Adafruit (Figur 4).
Figur 4: Dette AVR IoT-udviklingskortblokdiagram viser, at forbindelsen til host-pc'en sker via debuggerens USB-forbindelse, mens programmeringen af applikations-MCU'en sker via debuggerens UART-forbindelse. Bemærk, at forbindelsen mellem applikations-MCU'en og mobilmodemmet også er via UART. (Billedkilde: Microchip Technology)
For at komme i gang med programmering af applikationer skal du downloade og installere Arduino IDE og DxCore. Dernæst skal Arduino IDE konfigureres, så AVR IoT Cellulær Arduino-biblioteket kan køre (liste 1).
Liste 1: Konfiguration af Arduino IDE for at tillade, at AVR IoT Cellulær Arduino-biblioteket kan køre. (Kilde til kode: Microchip Technology)
Når IDE'en er konfigureret, kan biblioteket installeres. Når dette er gjort, kan du få adgang til flere bibliotekseksempler for udviklingskortet. Designere, der er fortrolige med Visual Studio Code IDE, kan bruge det til AVR IoT-udvikling, hvis de installerer Arduino-plugin'et. Arduino-applikationskode, der er udviklet i et af IDE'erne, overføres til udviklingskortets MCU via den indbyggede debugger.
Foretagelse af effektmålinger
Cellulær IoT er designet til at køre med lavt strømforbrug for at forlænge levetiden for batteridrevne IoT-enheder. Det er derfor vigtigt at optimere applikationskoden til et minimalt strømforbrug.
På Microchip-udviklingskortet er strømmen til alle kortets dele tilsluttet gennem fem afsnitsbånd. Disse er også beregnet til strømmåling. For at måle effekten på det ønskede kredsløb er det et spørgsmål om at klippe båndet over og tilslutte et amperemeter på tværs af hullerne (Figur 5).
Figur 5: Klippebånd på AVR IoT-udviklingskortet kan bruges til at måle strømforbruget for de vigtigste kredsløb. (Billedkilde: Microchip Technology)
Udviklingskortet har også et kredsløb til måling af systemspænding ved hjælp af MIC94163-switchen og en spændingsdeler, der er forbundet til en ADC-ben på MCU'en, hvilket muliggør måling på forespørgsel og forhindrer strømlækage gennem spændingsdeleren. For at måle systemspændingen skal du følge disse trin:
- Konfigurer spændingsreferencen for ADC'en.
- Sæt MCU'ens GPIO-system spænding måleben (PB3) højt for at aktivere spændingsdeleren.
- Indstil MCU'ens ADCO-system spænding måleben (PE0) som indgang til ADC'en.
- Kør en analog-til-digital konvertering (ADC) med en enkelt ende.
- Beregn spændingen ved hjælp af ligningen: V = ADC-resultat x VREF x 4/ADC-opløsning.
Endelig er det også nemt at måle forsyningsspændingen ved at følge disse trin:
- Konfigurer spændingsreferencen for ADC'en.
- Vælg VDD eller VDDIO2 som den positive indgang til ADC'en. (VDD og VDDIO2 er tilgængelige interne indgangskanaler til MCU'ens ADC.)
- Kør en single-ended ADC-konvertering.
- Beregn spændingen ved hjælp af ligningen: V = ADC-resultat x VREF x 10/ADC-opløsning.
Konklusion
Cellulær IoT er et populært LPWAN med et stigende kommercielt potentiale. Men design af cellulære IoT-drevne slutenheder kræver både hardware- og softwareekspertise. For at gøre det muligt for designere tilbyder nye cellulær IoT-udviklingskort, såsom Microchips EV70N78A AVR-IoT cellulære mini udviklingskort tilbyder en hurtig prototypingvej.
Udviklingskortet bruger et high-end LTE-M/NB-IoT-modem og en populær Microchip MCU. Udvikling af applikationskode er forenklet ved hjælp af Arduino eller Visual Studio Code IDE.
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.




