Laagvermogen always-on wearables ontwerpen: Deel 1: de microcontroller optimaliseren
Bijgedragen door De Noord-Amerikaanse redacteurs van DigiKey
2019-09-12
Opmerking van de editor: Dit is het eerste deel van een driedelige serie over het ontwerpen van elektronische laagvermogen always-on wearables. In elk van de delen wordt een onderwerp behandeld met betrekking tot het optimaliseren van het opgenomen vermogen. In dit eerste deel wordt besproken hoe de microcontroller kan worden geconfigureerd om de accu zo lang mogelijk mee te laten gaan en het aantal keren opladen te beperken. In het tweede deel wordt besproken hoe op de juiste manier met de accu moet worden omgegaan om de tijd tot opladen zo lang mogelijk te maken. In het derde deel wordt het gebruik van draadloze netwerken voor wearables besproken en hoe de draadloze connectiviteit kan worden behouden zonder de accu leeg te trekken.
Omdat wearables met accu's steeds populairder worden, bouwen de fabrikanten ervan steeds meer functies in om concurrerend te blijven. Dit geldt met name voor fitness-horloges die consumenten constant gebruiken. Ze staan altijd aan en de gebruikers zijn steeds op zoek naar nieuwe features en betere prestaties.
Maar bij het inbouwen van meer functionaliteit moet vaak naar een krachtigere microcontroller worden overgegaan om de functies van het horloge te bedienen en te bewaken. Het nadeel daarvan is dat de accu korter meegaat omdat hij vaker moet worden opgeladen en dat daardoor de gebruiker er minder tevreden over is.
In dit artikel worden de unieke eisen besproken voor microcontrollers in always-on wearables. Er wordt uitgelegd hoe een microcontroller voor always-on wearables moet worden geconfigureerd, zoals de laagvermogen modi en autonome randapparaten. Vervolgens worden een 16-bit microcontroller van Texas Instruments en een 32-bit microcontroller van Maxim Integrated besproken om te laten zien hoe de belangrijkste features ervan kunnen worden gebruikt bij het ontwerp van een wearable.
Unieke eisen aan microcontrollers in always-on wearables
Bij wearables kan een lange tijd tussen opladen voor de eindgebruiker de belangrijkste factor zijn. Hoewel online reviews de nauwkeurigheid en het grote aantal features van een wearable kunnen aanprijzen, kan de tijd tussen opladen het verschil maken tussen een teleurstellende beoordeling met één ster of een beoordeling met vijf sterren bij volle tevredenheid.
Als een accu kort meegaat, heeft dit meer nadelen dan alleen maar dat hij snel moet worden opgeladen. Lithium accu's verliezen bij veelvuldig opladen hun capaciteit waardoor het na verloop van tijd steeds moeilijker wordt om de conditie van een accu op peil te houden. Accu's voor wearables worden in het tweede deel van deze serie besproken.
Bovendien, hoe robuust de connector voor de oplaadkabel ook is, hij kan maar een beperkt aantal keren worden gebruikt en elke keer opladen betekent enige slijtage.
Elektronische wearables stellen andere eisen aan de voeding dan andere consumentenelektronica, omdat ze altijd aan staan en de microcontroller altijd moet worden gevoed. Er is meestal een Bluetooth Low Energy (BLE)-verbinding die altijd klaar moet staan om met een gekoppeld mobiel apparaat te communiceren. Draadloze connectiviteit voor wearables wordt in het derde deel van deze serie besproken.
Maar, hoewel een wearable zijn gegevens met een mobiel apparaat kan synchroniseren als er een verbinding beschikbaar is, hij moet ook standalone zonder verbinding met een mobiel apparaat kunnen werken en dat uren of zelfs dagen lang, afhankelijk van waar hij voor bedoeld is.
De belangrijkste functie van een wearable als een smartwatch, behalve kunnen zien hoe laat het is, is om voortdurend invoer te kunnen monitoren en opslaan van externe sensoren die aan seriële poorten als I2C en SPI zijn aangesloten. Dit kunnen gespecialiseerde versnellingsmeters zijn om stappen te tellen, een GPS-radio voor locatiebepaling en navigatie of een hartslagmonitor. Hoewel de meeste van deze sensoren stuk voor stuk door de gebruiker kunnen worden aan- en uitgezet, moet een goede ingenieur het systeem voor het slechtst denkbare scenario ontwerpen waarbij alle sensoren aan staan.
De door deze sensoren gegenereerde gegevens moeten voortdurend worden gelogd. Bij veel apparaten uit het Internet of Things (IoT) en bij mobiele consumentenproducten worden de gelogde sensorgegevens in permanente geheugens als flash of EEPROM opgeslagen. Maar het schrijven naar flash of EEPROM trekt veel stroom, waardoor de kleine accu in een wearable snel leeg kan raken. Een betere oplossing is het om de gegevens in SRAM op te slaan.
Naar SRAM schrijven kost veel minder energie dan naar een permanent geheugen. Omdat de microcontroller altijd aan staat, gaan de in SRAM opgeslagen gegevens niet verloren en zijn ze veilig tot de wearable wordt uitgezet of de gebruiker de accu niet op tijd oplaadt. De opgeslagen sensorgegevens worden draadloos overgedragen naar en opgeslagen in een mobiel apparaat zodat de sensorgegevens niet verloren gaan, zelfs niet als de wearable wordt uitgezet.
Autonome randapparaten zijn belangrijk om het door de microcontroller opgenomen vermogen te minimaliseren. Hoe dat precies moet, is afhankelijk van het type microcontroller. Een andere veel gebruikte manier om energie te besparen is het uitzetten van niet-gebruikte randapparaten, onafhankelijk van de rest van de microcontroller, door een bit in een vermogensregister aan of uit te zetten.
Laagvermogen modi voor microcontrollers in wearables
Nu de unieke eisen van een microcontroller in een always-on wearable bekend zijn, moet worden gekeken naar de laagvermogen modi, om te bepalen welke daarvan al dan niet nuttig zijn.
Een wearable gebruikt uiteraard het minste vermogen als hij uit staat. De meeste wearables worden aan- en uitgezet door gedurende een bepaalde tijd op een softwaregestuurde knop te drukken. Hiermee wordt voorkomen dat het apparaat per ongeluk wordt aan- of uitgezet. Dit is beter dan een mechanische schakelaar, die niet alleen duurder is, maar die ook per ongeluk op kan worden ingedrukt. De ingenieur moet er echter van uitgaan dat de gebruiker het apparaat zelden uitzet. Dat betekent dat de wearable met schijnbaar tegenstrijdige aannames moet worden ontworpen: hij wordt nooit uitgezet, maar moet wel af en toe kúnnen worden uitgezet.
Meestal regelt een vermogensmanagementchip het laden van de accu en het aan- en uitzetten van de microcontroller en de sensoren. Vermogensmanagement wordt ook in het tweede deel van deze serie besproken. Als een wearable door een vermogensmanagementchip wordt uitgezet, dan wordt de voeding van de microcontroller uitgeschakeld, met uitzondering van de aparte voeding van de realtime klok (RTC). Hiervoor moet de microcontroller kunnen functioneren als de voeding van de CPU, RAM en de meeste randapparaten is uitgeschakeld en alleen de RTC gevoed wordt.
De RTC van de microcontroller moet blijven lopen als de wearable is uitgezet, om de juiste tijd te behouden. De microcontroller moet dus voor de RTC een aparte voedingspin hebben die altijd aan staat. Een RTC wordt door een laagfrequent oscillator van 32,768 kilohertz (kHz) aangestuurd die luttele nanoampères trekt. Van een smartwatch die de juiste tijd niet onthoudt als hij uit staat, wordt geen enkele gebruiker gelukkig en een laagvermogen modus die de RTC uitschakelt is daarom voor een wearable onacceptabel.
De CPU moet, samen met ongebruikte randapparaten, kunnen worden uitgeschakeld om energie te besparen. De inhoud van het RAM-geheugen moet altijd worden behouden en dus is elke laagvermogen modus die het gehele RAM-geheugen uitschakelt ongeschikt voor een wearable.
De microcontroller configureren
Een goed voorbeeld van een voor wearables geoptimaliseerde microcontroller is de Texas Instruments MSP430FR2676TPTR 16 megahertz (MHz) microcontroller met ferro-elektrisch RAM-geheugen (FRAM) (Afbeelding 1). Deze maakt deel uit van de familie MSP430FR2676 16-bit MSP430™ CapTIvate™ capacitief-drukgevoelige microcontrollers van Texas Instruments met een laagvermogen randapparaat dat ook bij dik glas drukgevoelig is. De glazen schermen van wearables moeten dik en robuust zijn om de aanslagen erop tijdens het dagelijks gebruik te kunnen. DeCapTIvate technologie geschikt is daarom geschikt voor wearables met een touchscreen.
Afbeelding 1: De Texas Instruments MSP430FR2676TPTR ultra-laagvermogen 16-bit FRAM microcontroller bevat een grote verscheidenheid aan randapparaten en kan met een minimaal aantal externe onderdelen een wearable besturen. (Bron afbeelding: Texas Instruments)
De MSP430FR2676TPTR beschikt over 64 kilobyte (kB) Texas Instruments FRAM programmageheugen dat bij lees- en schrijfopdrachten beter presteert dan microcontrollers met flash geheugen. Hij beschikt over 8 kB SRAM en een complete set randapparaten, waaronder I2C, SPI en een UART om sensoren aan te sluiten. Dankzij de 32 x 32 hardware multiplier kan hij sneller vermenigvuldigen en bespaart zodoende energie.
De RTC in de MSP430FR2676TPTR kan zodanig worden geconfigureerd dat hij de microcontroller met intervallen van microseconden tot uren kan wekken. Dit is handig om de CPU te wekken om taken uit te voeren als het periodiek verwerken van sensorgegevens en deze draadloos naar een mobiel apparaat sturen.
Het oscillator- en kloksysteem van de MSP430FR2676TPTR is ontworpen op lage systeemkosten en een laag energieverbruik. De microcontroller ondersteunt vier intern gegenereerde klokbronnen en twee bijzonder nauwkeurige externe klokbronnen. Deze oscillatoren en klokken kunnen door de firmware worden aan- en uitgezet, afhankelijk van de geselecteerde laagvermogen modus en de configuratie van de firmware. De MSP430FR2676TPTR heeft voor het aansturen van randapparatuur twee klokken: een snelle subsysteemmoederklok (SMCLK) die met de frequentie van de systeemklok kan draaien en een langzame 40 kHz hulpklok (ACLK).
Naast de actieve modus, waarin de CPU en alle andere onderdelen ingeschakeld zijn, ondersteunt de MSP430FR2676TPTR configureerbare en complexe laagvermogen modi. Elk op de chip geïmplementeerd randapparaat dat in een bepaalde laagvermogen modus van de MSP430 actief is, kan door de firmware worden uitgezet. Zo kunnen laagvermogen configuraties naar wens worden gedefinieerd. Bij een wearable met een MSP430FR2676TPTR zijn de volgende laagvermogen modi (LPMx) van toepassing:
- LPM0 laat alles functioneren behalve de CPU. Dit is nuttig als autonome randapparaten actief moeten zijn en op volle snelheid moeten functioneren zonder tussenkomst van de CPU.
- LPM3 schakelt de CPU, de snelle oscillator en de SMCLK uit. Alle ingeschakelde randapparaten kunnen de energiebesparende 40 kHz ACLK gebruiken. Dit is nuttig als de wearable inactief is en er op geen enkele knop wordt gedrukt. Seriële randapparaten als de I2C en de SPI kunnen autonoom functioneren om sensorgegevens te verzamelen terwijl direct memory access (DMA) wordt gebruikt om de gegevens naar RAM over te dragen. De RTC kan het apparaat wekken om eventuele noodzakelijke taken uit te voeren.
- LPM4 schakelt alles uit behalve de RTC. SRAM wordt uitgezet. Dit is nuttig wanneer de wearable door de gebruiker wordt uitgezet.
Voor de MSP430FR2676TPTRs is een voedingsspanning tussen 1,71 en 3,63 volt nodig, zodat hij op een lithium-accu van 3,6 volt kan werken. Als de RTC en een minimaal aantal randapparaten functioneren, dan kan de microcontroller minder dan 5 microampère (µA) trekken. Bij een functionerende hoofdoscillator trekt de MSP430FR2676TPTR 135 µA/MHz (typisch).
Maxim Integrated heeft de MAX32660GWE 32-bit microcontroller (Afbeelding 2) voor wearables die hogere prestaties moeten leveren. Deze is op de Arm® Cortex®-M4 core met floating point unit (FPU) gebaseerd. De MAX32660 heeft 256 kB flash-geheugen en 96 kB SRAM-geheugen. Het SRAM-geheugen is in vier sectoren onderverdeeld. Elk van deze sectoren kan worden gebruikt om te lezen en te schrijven, in een 'lichte' slaap worden gezet waarbij (om energie te besparen) geen lezen of schrijven mogelijk is, maar wel de inhoud bewaard blijft of geheel uitgeschakeld worden, waarbij dan ook helemaal geen energie wordt verbruikt.
Afbeelding 2: De Maxim Integrated MAX32660 is speciaal ontworpen voor elektronische always-on wearables. Hij beperkt, om energie te besparen, het aantal randapparaten tot alleen diegene die nodig zijn om in een wearable toepassing met de externe sensoren te communiceren. (Bron afbeelding: Maxim Integrated)
De MAX32660 heeft een maximale klokfrequentie van 96 MHz en trekt, als alle randapparaten actief zijn, niet meer dan 85 µA/MHz. Het aantal randapparaten is beperkt tot twee SPI's, twee I2C's en twee UART's om de opgenomen energie te beperken en de behuizing zo klein mogelijk te houden.
Hij ondersteunt twee interne oscillatoren: een snelle interne oscillator van 96 MHz die door de firmware kan worden uitgeschakeld en een laagvermogen ringoscillator van 8 kHz die altijd aan staat, zelfs in de laagvermogen modus. Voor de RTC wordt een oscillator van 32,768 kHz gebruikt die met een extern kristal werkt. Elk van deze drie oscillatoren kan als klok voor de CPU en de randapparaten worden gebruikt.
De voeding van elk van de randapparaten kan in de firmware worden uitgeschakeld. Bovendien kan de firmware ook de klok naar dat randapparaat uitschakelen om zo kostbare nanoampères te besparen.
Voor wearables is het nodig dat de RTC altijd aan staat, zelfs in de laagvermogen modus, tenzij deze in de actieve modus expliciet door de firmware wordt uitgezet. De RTC en de klok zitten in een aparte sectie, 'Always-on domein' geheten. Dit domein is van de rest van de microcontroller afgescheiden zodat de RTC geen last heeft van een firmware-defect of van kwaadwillige ingrepen.
De MAX32660 ondersteunt naast de actieve modus drie laagvermogen modi die speciaal zijn bedoeld voor elektronische wearables:
- In slaap-modus staat de CPU uit en kunnen ingeschakelde randapparaten autonoom werken. Dit is nuttig wanneer een wearable inactief is maar sensorgegevens worden gelogd en in de DMA worden opgeslagen. Elk van de actieve randapparaten kan de CPU in de actieve modus brengen.
- In de 'diepe slaap'-modus zijn alle interne klokken van de CPU en de randapparaten losgekoppeld, met uitzondering van de RTC-klok van 32,768 kHz. De interne klok van 96 MHz kan zodanig worden geconfigureerd dat deze automatisch wordt uitgeschakeld als de microprocessor in de 'diepe slaap'-modus gaat. De gehele inhoud van het RAM blijft behouden, inclusief de gegevens in SRAM en in de registers van alle randapparaten. Dit is nuttig voor wearables die een 'soft off'-modus nodig hebben, waarbij de wearable wordt uitgeschakeld om energie te besparen maar vanaf het punt waar hij werd uitgezet moet worden doorgestart als hij weer wordt aangezet.
- In de back-up-modus wordt de minste energie verbruikt. De klokken en de voeding van de CPU en alle randapparaten worden uitgeschakeld, met uitzondering van de RTC. Standaard wordt de voeding van de SRAM uitgeschakeld. Dit is nuttig om energie te besparen wanneer de wearable door de gebruiker wordt uitgezet als er geen SRAM-gegevens behouden hoeven te blijven. Maar in deze modus kunnen elk van de vier SRAM-sectoren in 'lichte slaap' worden gehouden om de inhoud van het geheugen te behouden. Dit is nuttig voor wearables die een minimale status moeten behouden met een gering extra energieverbruik.
Voor de MAX32660 is een voedingsspanning tussen 1,71 en 3,63 volt nodig, zodat hij op een lithium-accu van 3,6 volt kan werken. De microcontroller heeft bovendien een autonoom energiebeheer, zodat een pin voor een externe component wordt uitgespaard. Hij ondersteunt verder een accumeter die de ladingstoestand van de externe accu bewaakt en waarmee deze toestand nauwkeurig op de display van de wearable kan worden uitgelezen.
Conclusie
Elektronische always-on wearables vormen een unieke uitdaging voor ingenieurs. Zelfs als het lijkt dat een wearable uit staat, verbruikt hij nog altijd wat energie. Maar we hebben laten zien dat ontwerpers functionaliteit en features kunnen toevoegen en de laagvermogen modi kunnen gebruiken om de levensduur van de accu te behouden en te verlengen.
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.




