Skriv ut

I takt med att världen blir allt mer uppkopplad via Internet of Things (IoT) och annan kommunikationsteknik har normen blivit att använda billiga och kompakta integrerade MCU/rf-moduler på 32 bitar och med flera sensoringångar.


Ladda ner artikeln här (länk, pdf).

Fler tekniska rapporter finns på etn.se/expert

Sådana lösningar fungerar bra med kommunikationsstackar för wifi, NB-IoT (Narrowband) och Bluetooth, vilka också drar nytta av den höga beräkningskraften som garanterar säkerheten hos rf-kanalerna. Svårigheterna börjar när systemkonstruktionen blir mer komplicerad i takt med att antalet sensorkanaler ökar eller krav ställs på lägre strömförbrukning vid avlägsna platser. Det är då det kan löna sig att addera en åttabitarsbitars MCU (se figur 1).

Stöd för 5V IO och sensorer
Industrin föredrar ett ekosystem där strömförsörjningen är 5V. Det kan skapa problem eftersom de flesta MCU/rf-moduler på 32 bitar enbart drivs med 3,3V, inte 5V. Lösningen är vanligtvis att använda flera nivåskiftare eller att skala ner de analoga inspänningarna till 3,3V. Denna typ av problem undanröjs med en mer GPIO-effektiv åttabitars-MCU som har gränssnitt som direkt stöder sensorer, ställdon och switchkontakter baserade på 5V.

Behovet av att nivåskifta, eller skala, gäller då enbart kommunikationskanalen mellan MCU:n med åtta respektive 32 bitar. Men inte heller det behöver vara ett problem om 32-bitars modulen har ingångar som kan hantera 5V. Även om det krävs galvanisk isolation kan kostnaden minimeras genom att mängden specialkretsar som behövs för att skydda systemets rf-del kan reduceras.

Det finns olika fördelar med att använda åttabitars-MCU:er i fjärrinstallationer. Inte minst för att de tar bort behovet av att erbjuda större feltolerans genom att de använder flera sensorer eller aktuatorstyrning, vilket kan minska effekterna av fel i fält.

Likaså tenderar åttabitars-MCU:er att ha ett stort antal gränssnitt till skillnad mot en 32-bitarssmodul. Färre sensorgränssnitt innebär fler problem med allokering av in- och ut-gångar medan åttabitare möjliggör att en nivå av intelligent feltolerans kan läggas till sensormatriserna. Det betyder att beslut, som exempelvis vilken av tre temperatursensorer som har gått sönder, kan tas lokalt (och därmed snabbare).

Systempartitionering
En annan fördel med att använda en åttabitars-MCU är att det går enkelt att koppla ihop dem med majoriteten av sensorer. Om en 32-bitars-MCU/rf-modul används tenderar den att medföra en stor mängd exempelapplikationer som är avsedda att visa hur lätt det är att ansluta till molnet – det gäller oberoende av leverantör. Däremot kan det vara så att det finnas betydligt färre applikationsexempel som beskriver hur sensorer eller ställdon kopplas samman utanför standardgränssnitten I2C eller SPI.

På samma gång innebär det större frihet vid val av rf-modul om man har en välkänd verifierad sensor/styrenhet och ett väldefinierat och tillförlitligt gränssnitt eftersom porteringen blir enklare. Integrationen av ett sådant system kommer att vara så gott som löst om protokollagret mellan de två MCU:erna backas upp av det fysiska lagret hos den valda rf-modulen. Därefter kan uppmärksamheten vändas mot att implementera den nya rf-kanalen korrekt.

Användare som befinner sig på avlägsna platser, eller i industriella miljöer, kan dra nytta av att kunna ställa in system med feltoleranta hot swap-gränssnitt. Ibland går det dock inte att undvika att ett system måste bytas ut fullständigt, även om det är klart bäst att minska antalet övergripande förändringar hos ett system som är tillförlitligt. Att använda löst kopplade system (loose coupling) innebär också att en tillförlitlig rf-plattform kan stödja utökade systemkrav utan att man måste börja om från början. Det betyder att man kan fokusera på det som behöver förbättras och behålla det som är tillförlitligt.

Intelligent effekthantering
Ytterligare en detalj som präglar åttabitars-MCU:er är att de domineras av grövre processteknologier. Dessa har betydligt bättre egenskaper när det gäller statiskt läckage, och de eliminerar behovet av att balansera statiska strömläckage mot hastighet vilket är ett krav vid finare processnoder. Till detta kommer att gatens oxidtjocklek förmodligen uppskattas bäst genom att räkna antalet atomer, snarare än att mäta antalet nanometer.

Genom att addera en intelligent effekthanteringskrets, blir det möjligt att skapa effektivare lågeffektslägen.

Vissa åttabitare som klockas med 32 kHz förbrukar en ström som motsvarar det som 32-bitars rf-moduler förbrukar i standby. Ett sådant tidsbaserat system för effekthantering förenklar processen att ladda och övervaka batteriers hälsa. 32-bitars rf-moduler – i synnerhet wifibaserade – kan däremot behöva strömmar på flera hundra milliampere. Det innebär att ett batteripaket som är i slutet av sin livstid kan ha problem att leverera så mycket ström som krävs för start-up och för att ansluta till nätverk.

Används ett effekthanteringssystem baserat på åttabitars-MCU:er kan rf-modulen ”väckas” med ett dedikerat kommando. Det minskar strömbehovet genom att modulen startar mer stegvis. Denna speciella typ av väckning kan acceptera en lägre sändeffekt (TX-effekt) för att ansluta till nätet.

Effekthanteringssystemet hos åttabitars-MCU:er har egenskapen att det kan övervaka toppströmmar och spänningsförändringar vid start av normala cykler, och föra data vidare vid varje ”wake-up”-cykel. Denna typ av data gör det möjligt för maskininlärningsalgoritmer i molnet att övervaka batterisystem mycket mer effektivt och att förutse potentiella problem.

Förenklad MCU-programmering
Under de senaste åren har det skett en rejäl utveckling när det gäller att förenkla programmeringen av 32-bitars-MCU/rf-moduler. Ett antal av dessa moduler har Arduino-baserat stöd, vilket kan hjälpa till att förkorta utvecklingstider. Samtidigt kan det vara problematiskt om det involverar mer effekthantering, skräddarsydda sensorer eller andra periferigränssnitt. Visserligen är Arduinos kod för support väldigt omfattande, men i många fall är den ofullständig och det finns ett förtroendeproblem hos professionella användare.

Även om kretsleverantörer tillhandahåller stöd har MCU/rf-modulerna onödigt många ledningar på chipet vilket gör dem relativt komplexa. Att ha 32 bitar för att hantera enklare styrning eller status kan tyckas överdrivet och det är allt annat än intuitivt att försöka hitta den felande biten i 0x23AA123C eller nåt annat hexadecimalt styrvärde till en periferienhet.

Programmeringen av åttabitars-MCU:er sker å andra sidan med ett välbekant gränssnitt om just 8 bitar i taget (möjligen 16 bitar för timer-register). Det gör det enklare att felsöka bitfält, men också att det blir betydligt lättare att förstå hur periferienheterna är uppsatta. En viktig anledning är att de inte behöver blanda in mer komplexa funktioner för att minska effekten eller synkronisera bussgränssnitt. Det är även lättare att förstå klockträden hos åttabitars-MCU:er.

Detta sammanfattar huvudanledningen till att ta hjälp av en åttabitars-MCU: den levererar en billig, effektsnål, smart (men inte IoT-dedikerad) lösning som kan hantera uppgifter som house-keeping och effekthantering.

Tar man en titt på åttabitars-MCU:er i Microchips portfölj så erbjuder både PIC18-Q41-familjen och AVR DB-familjen ett brett utbud av analoga funktioner. Dessa inkluderar integrerade operationsförstärkare och GPIO:er med flera spänningsnivåer. Det senare minimerar behovet av externa analoga komponenter eller nivåskiftare.

Sammanfattningsvis kan man konstatera att även om det finns ett antal flerkärniga 32-bitars MCU/rf-moduler att välja på idag så går det att vinna mycket på att addera en åttabitars-MCU när man konstruerar effektsnåla edge-noder i IoT-världen. MCU:er med 8 bitar kommer även fortsättningsvis att spela en viktig roll i IoT-miljöer eftersom de kan erbjuda omfattande hantering av effektförbrukning och sensor i en mycket liten formfaktor.