Varför och hur man snabbstartar mobila IoT-projekt med Microchips utvecklingskort för IoT
Bidraget med av DigiKeys nordamerikanska redaktörer
2022-09-08
Mobil IoT (Internet of Things), en teknik med LPWAN (Low Power Wide Area Network), erbjuder en tydlig och beprövad väg till säker och robust IoT för tillämpningar som sträcker sig från smarta städer till jordbruk och fjärrövervakning av infrastruktur. Mobil IoT är dock en komplicerad teknik som är avskräckande för oerfarna konstruktörer som påbörjar ett projekt.
Konstruktionsutmaningarna för mobil IoT kan dock underlättas genom att projekten baseras på utvecklingskort för mobil IoT som använder välkända microcontrollers (MCU) för allmänna ändamål och integrerade designmiljöer (IDE). Med stöd från programbibliotek med öppen källkod och enkla sensoranslutningar gör dessa utvecklingskort det lättare för konstruktören att komma igång med mobila IoT-projekt, från hårdvarulayout till att skicka data till molnet.
Artikeln beskriver kortfattat fördelarna med mobil IoT innan den förklarar de komplicerade konstruktionsproblem som tekniken kan medföra. Artikeln beskriver sedan hur användningen av utvecklingskort för mobil IoT kan eliminera en stor del av denna komplexitet. Slutligen beskriver artikeln hur man konfigurerar ett utvecklingskort från Microchip Technology för att skicka enkel information om färg och temperatur till molnet.
Vad är mobil IoT?
Mobil IoT använder mobiltelefonteknik med låg effekt för att ansluta IoT-slutenheter (t.ex. sensorer och ställdon) till molnet. Det är en LPWAN-teknik som kännetecknas av en räckvidd på över en kilometer, stöd för slutenheter med hög täthet och låg genomströmning.
Även om det finns andra LPWAN-tekniker - och i synnerhet då LoRaWAN (se "Skynda på IoT-projekt med LoRaWAN med ett startpaket från början till slut") och Sigfox - så erbjuder mobil IoT några viktiga fördelar, bland annat:
- Framtidssäkring: Som standard, är specifikationen för mobil IoT under ständig översyn och utveckling.
- Skalbarhet: Mobil IoT kan stödja snabb utbyggnad av IoT genom en etablerad mobil arkitektur.
- Tjänstekvalitet (QoS): Mobil IoT ger hög tillförlitlighet eftersom det bygger på infrastruktur som är beprövad och mogen i kommersiella tillämpningar med stor volym.
- IP-interoperabilitet: Slutenheter kan anslutas direkt till molnet utan behov av dyra och komplicerade gateways.
Konstruktörer måste ta hänsyn till att det finns en löpande kostnad för dataöverföring när det gäller mobil IoT. Detta är inte fallet med konkurrerande teknik såsom LoRaWAN, som använder ett frekvensområde som inte kräver någon licens. Men, kostnaderna för mobil IoT-data är dock på väg att sjunka tack vare konkurrens och ökad användning av edge computing, vilket minskar volymen av oansenliga data som skickas över nätet.
Mobil IoT styrs av en telekomstandard som regleras och uppdateras av Third Generation Partnership Project (3GPP). I version 13 av 3GPP:s standard utökades kategorierna för M2M-modem (maskin-till-maskin) för att möjliggöra modem med låg kostnad, låg effekt och låg genomströmning som lämpar sig för IoT-anslutning. Ytterligare versioner av standarden har resulterat i ytterligare förbättringar av IoT-modemen.
Trådlösa sensorer som är utrustade med IoT-modem för mobiltelefoni kan skicka data över flera kilometer till molnet utan att behöva använda dyra och komplicerade gateways, tillsammans med den säkerhet och kvalitetssäkring som mobildata är känt för.
Skillnaden mellan LTE-M och NB-IoT
Mobil IoT finns i två former, LTE-kategori M1 (LTE-M) och IoT med smalbandigt nätverk (NB-IoT). Båda typerna är utformade för användning med resursbegränsade, ofta batteridrivna enheter som är typiska för IoT och industriell IoT (IIoT). Eftersom IoT-modemet ansluts till en etablerad mobil infrastruktur behöver varje modem sin egen SIM-modul (Subscriber Identity Module).
LTE-M är baserad på en nedbantad LTE-teknik ("4G"). Den har stöd för säker kommunikation, ständigt tillgänglig täckning och hög systemkapacitet. Dess förmåga att fungera som ett fullduplexsystem över en relativt stor bandbredd (1,4 MHz) förbättrar latensen och genomströmningen jämfört med NB-IoT. Genomströmningen av obearbetad information är 300 Kbits/s i nedåtgående länk och 375 Kbits/s i uppåtgående länk. Tekniken lämpar sig för säkra IP-anslutningar från ände till ände, och mobiliteten stöds av LTE-teknik för överföring av mobildata. LTE-M lämpar sig för mobila tillämpningar som spårning av tillgångar eller hälso- och sjukvård.
NB-IoT är i första hand utformat för energieffektivitet och för att bättre kunna tränga in i byggnader och andra områden som inte är gynnsamma för radiofrekvenser. Till skillnad från LTE-M är den inte baserad på LTE:s fysiska lager (PHY). Modemets komplexitet är till och med mindre än för en LTE-M-enhet, eftersom NB-IoT använder en bandbredd på 200 kHz. Genomströmningen av obearbetad information är blygsamma 60/30 Kbits/s, men räckvidden är bättre än LTE-M. NB-IoT lämpar sig för statiska tillämpningar, t.ex. smarta mätare, som kan skymmas av väggar.
Kommersiella modem för mobila IoT-system
En rad kommersiella modem för LTE-M/NB-IoT är nu tillgängliga. Ett exempel är GM02S-modulen Monarch 2 från Sequans. Enheten har stöd för en enda lagerenhet (SKU) RF front-end som är lämplig för 20 av de globala LTE-banden. Den levereras i en kompakt LGA-kapsling med måtten 16,3 x 17 x 1,85 mm. Modulen uppfyller kraven i 3GPP version 14/15. Modemet drivs med en enda spänningsmatning på 2,2 till 5,5 V och kan ha en maximal sändareffekt på +23 dBm.
GM02S har stöd för ett externt SIM-kort, eSIM samt integrerade SIM-kort. Ett antenngränssnitt för 50 Ω ingår. Enheten levereras med en programvarustack för LTE-M/NB-IoT och programmet Cloud Connector från Sequans för enkel anslutning till kommersiella molnplattformar (figur 1).
Figur 1: Modemet GM02S LTE-M/NB-IoT från Sequans levereras i en kompakt kapsling och med en mogen mjukvarustack. (Bildkälla: Sequans)
Utmaningar vid konstruktion av mobil IoT
Även om modemet GM02S är en högintegrerad enhet som levereras med en mjukvarustack och molnanslutning, krävs det fortfarande, liksom för alla kommersiella modem, ett betydande utvecklingsarbete innan en IoT-applikation sömlöst kan skicka data över flera kilometer till molnet.
Modemet är enbart konstruerat för att sköta kommunikationen mellan slutenheten och basstationen. Det behövs en separat övervaknings- och tillämpningsprocessor för att styra modemet och samtidigt köra programmet för tillämpningen av sensorn. Konstruktören måste dessutom ta hänsyn till antennkretsen, strömförsörjningen och utrusta en slutenhet med ett SIM-kort för att säkerställa en sömlös anslutning till mobilnätet (se "Hur man använder inbyggda multibandsantenner för att spara utrymme, komplexitet och kostnader i IoT-konstruktioner").
Utöver hårdvarukonstruktionen krävs vissa kodningskunskaper för att få en mobil modul att ansluta till nätverket och ta emot/överföra data. Om konstruktionen använder en extern MCU i tillämpningen kommunicerar den vanligtvis med mobilmodulen via en seriell UART (även om andra I/O-gränssnitt också används). AT-kommandon ("attention") är standardmetoden för att styra ett mobilt modem. Kommandona består av en serie korta textsträngar som kan kombineras för att åstadkomma operationer som att ringa upp, lägga på och ändra parametrarna för anslutningen.
Det finns två typer av AT-kommandon: Grundkommandon är de som inte börjar med "+". "D" (Ring upp), "A" (Svara), "H" (Kontroll av uppringning) och "O" (Återgå till datatillstånd online) är exempel på detta. Utökade kommandon är de som börjar med "+". Till exempel "+CMGS" (skicka SMS-meddelande), "+CMGL" (lista SMS-meddelanden) och "+CMGR" (läsa SMS-meddelanden) (se "Använda en mobilmodul för att ansluta ett Maker-projekt till IoT").
Dessa hård- och mjukvaruöverväganden medför en komplexitet för mobilt IoT som kan göra utvecklingen långsammare för mindre erfarna konstruktörer. Lyckligtvis har tillverkare av MCU-program och IoT-modem för mobiltelefoni nu gått samman för att erbjuda verktyg för hård- och mjukvarudesign som gör det mycket lättare att dra nytta av denna viktiga LPWAN-teknik.
Eliminera komplexiteten med utvecklingskort för IoT
Det blir betydligt lättare att ta itu med utmaningarna i konstruktionen av mobila IoT-system om man baserar prototypen på ett specialdesignat utvecklingskort. Utvecklingskortets hårdvara innehåller vanligtvis en antenn, en strömkälla, ett SIM-kort med en viss fri datamängd, en applikationsprocessor och justeringsnätverk för att garantera god RF-prestanda. Detta ger konstruktörer ett gediget hårdvaruförsprång för sina projekt och gör att de kan fokusera på att utveckla tillämpningen. Med rätt val av utvecklingskort kan utvecklingen av tillämpningen till och med ske i ett välbekant IDE.
Ett exempel på ett populärt utvecklingskort för mobil IoT är utvecklingskortet för mobil AVT-IoT Cellular Mini EV70N78A från Microchip. Det är en hårdvaruplattform som bygger på den populära MCU:n AVR128DB48 från Microchip och mobilmodulen Monarch 2 GM02S från Sequans som beskrivs ovan. MCU:n är en enhet med 8-bitar och 24 MHz. Den innehåller 128 Kbytes flash-minne, 16 Kbytes SRAM-minne, 512 bytes EEPROM-minne och levereras i en kapsling med 48 stift.
Utvecklingskortet integrerar även säkerhetselementet ATECC608B. När det är anslutet till ett LTE-M- eller NB-IoT-nätverk används ATECC608B för att autentisera hårdvaran med molnet för att identifiera varje kort som unikt.
För att göra det ännu enklare för konstruktören innehåller utvecklingskortet från Microchip även ett aktiveringsfärdigt Truphone SIM-kort med 150 Mbyte data.
Utvecklingskortet har fem lysdioder för användaren, två mekaniska knappar, en 32,768 kHz-kristall, färg- och temperatursensorer, en Adafruit Feather-kompatibel kantkontakt, en Qwiic I2C-kontakt, inbyggt felsökningsprogram, en USB-port, alternativ för batteri och extern strömförsörjning samt en MCP73830 Li-ion/Li-po-batteriladdare med lysdiod för laddningsstatus (figur 2).
Figur 2: Utvecklingskortet AVR-IoT Cellular Mini är baserat på MCU:n AVR128DB48 och levereras komplett med ett SIM-kort och 150 Mbyte data. (Bildkälla: Microchip Technology)
Starta ett projekt med mobil IoT
Syftet med mobil IoT är att trådlöst ansluta IoT-slutenheter som sensorer och ställdon så att deras information kan skickas över flera kilometer till molnet. På utvecklingskortet från Microchip är MCU:n förinstallerad med en firmware-avbildning som innehåller en demonstrationstillämpning som gör det möjligt för användaren att snabbt ansluta och skicka data från de inbyggda temperatur- och färgsensorerna till en molnbaserad sandlåda (där AWS är värd).
För att göra hårdvaran redo för utveckling är det bara att aktivera och sätta i SIM-kortet, ansluta den externa antennen till kortet, ansluta USB-C-porten till datorn för felsökning på kortet, skanna QR-koden på kortets undersida eller öppna masslagringsenheten och följa CLICK-ME.HTM till satsens webbsida.
Microchip IoT Provisioning Tool, som finns på Github, är en lättanvänd lösning för att konfigurera en AVR-IoT Cellular Mini för den valda molnleverantören, ställa in nätverksleverantören och välja frekvensbandet för mobiltelefonin. (För att demonstrations-firmwaren i testmiljön ska fungera måste utvecklingskortet vara konfigurerat för testmiljön AWS Microchip.)
När utvecklarna har fått ett visst förtroende för demonstrationsprogrammet kan de börja bygga sitt eget program med hjälp av utvecklingskortets fullständiga stöd för Arduino IDE. Stödet bygger på ett Arduino-bibliotek för mobil AVR IoT som finns på Github. Biblioteket bygger på den öppna källkoden DxCore (figur 3).
Figur 3: Biblioteket AVR IoT (orange) innehåller programvarumoduler för programmering och styrning av utvecklingskortet (visas i förenklad form med grönt). (Bildkälla: Microchip Technology)
Det inbyggda felsökningsprogrammet (PKOB nano) ger fullständigt programmeringsstöd för Arduino IDE. Det behövs inga externa verktyg, och den ger även tillgång till ett gränssnitt via serieporten (seriell-till-USB-brygga) och två logikanalysatorkanaler (debug GPIO). Det inbyggda felsökningsprogrammet på kortet AVR IoT Cellular Mini visas som en HID-enhet (Human Interface Device) i värddatorns delsystem för USB. För mer ambitiösa projekt kan utvecklingskortets Qwiic- och Feather-kompatibla kantkontakter enkelt utökas med ett brett urval av tilläggskort från Sparkfun och Adafruit (figur 4).
Figur 4: Blockdiagrammet för utvecklingskortet AVR IoT visar att anslutningen till värddatorn sker via felsökningsprogrammets USB-länk, medan programmeringen av tillämpningens MCU sker via felsökningsprogrammets UART-länk. Observera att anslutningen mellan tillämpningens MCU och mobilmodemet också sker via UART. (Bildkälla: Microchip Technology)
För att komma igång med programmering av tillämpningen måste du ladda ner och installera Arduino IDE och DxCore. Därefter måste Arduino IDE konfigureras så att Arduino-biblioteket för mobil AVR IoT kan köras (lista 1).
Lista 1: Konfiguration av Arduino IDE för att göra det möjligt för Arduino-biblioteket för mobil AVR IoT att köras. (Kodkälla: Microchip Technology)
När IDE har konfigurerats kan biblioteket installeras. När detta är gjort kan flera biblioteksexempel för utvecklingskortet nås. Konstruktörer som är bekanta med IDE-miljön Visual Studio Code kan använda denna för utveckling med AVR IoT, under förutsättning att de installerar plugin-programmet för Arduino. Arduino-tillämpningens kod utvecklas i något IDE och överförs till utvecklingskortets MCU via det inbyggda felsökningsprogrammet.
Effektmätningar
Mobil IoT är konstruerat för att arbeta med låg effekt för att förlänga batteritiden för batteridrivna IoT-slutenheter. Det är därför viktigt att optimera programkoden för att minimera energiförbrukningen.
På utvecklingskortet från Microchip, ansluts strömmen till alla kortets delar via fem byglar. De är även avsedda för strömmätning. För att mäta effekten i den önskade kretsen klipper du av bygeln och ansluter en amperemätare över hålen (figur 5).
Figur 5: Byglar utvecklingskortet AVR IoT kan användas för att mäta strömförbrukningen för viktiga kretsar. (Bildkälla: Microchip Technology)
Utvecklingskortet har även en krets för mätning av systemets spänning vid användning av omkopplaren MIC94163 och en spänningsdelare som är ansluten till ett ADC-stift på MCU:n, vilket möjliggör mätning vid behov och förhindrar strömläckage genom spänningsdelaren. Följ dessa steg för att mäta systemspänningen:
- Konfigurera spänningsreferensen för ADC:n.
- Dra stiftet (PB3) för aktivering av spänningsmätning i MCU:ns GPIO-system högt för att aktivera spänningsdelaren.
- Konfigurera stiftet för spänningsmätning (PE0) i MCU:ns ADCO-system som ingång för ADC:n.
- Kör en enkelbalanserad analog-digital konvertering (ADC).
- Beräkna spänningen med hjälp av ekvationen: V = ADC-resultat x VREF x 4/ADC-upplösning.
Slutligen är det även enkelt att mäta matningsspänningen genom att följa dessa steg:
- Konfigurera spänningsreferensen för ADC:n.
- Välj VDD eller VDDIO2 som positiv ingång för ADC:n. (VDD ochVDDIO2 är tillgängliga interna ingångskanaler till MCU:ns ADC.)
- Kör en enkelbalanserad ADC-konvertering.
- Beräkna spänningen med hjälp av ekvationen: V = ADC-resultat x VREF x 10/ADC-upplösning.
Sammanfatttning
Mobil IoT är ett populärt LPWAN med ökande kommersiell potential. Men, konstruktion av slutprodukter för mobil IoT kräver både hård- och mjukvarukompetens. För att underlätta för konstruktörer erbjuder nya utvecklingskort för mobil IoT, som utvecklingskortet EV70N78A AVR-IoT Cellular Mini från Microchip, en snabb väg för prototypframställning.
Utvecklingskortet använder ett toppmodernt LTE-M/NB-IoT-modem och en populär MCU från Microchip. Utvecklingen av tillämpningens kod förenklas med hjälp av 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.




