Framework im RTOS

Einfacheres Power Management für Mikrocontroller-basierte IoT-Knoten

| Autor / Redakteur: Nick Latheby * / Sebastian Gerstl

Interaktionen verschiedener Softwarekomponenten: Bestandteile wie z.B. die Gerätetreiber sind stromverbrauchsbewusst und informieren den Power Manager, wenn er aggressivere Power-Modi nutzen kann. Der Power Policy Manager führt diese Informationen mit Daten zum nächsten geplanten Ereignis aus dem TI-RTOS Clock Module zusammen, um den richtigen Modus zu wählen.
Interaktionen verschiedener Softwarekomponenten: Bestandteile wie z.B. die Gerätetreiber sind stromverbrauchsbewusst und informieren den Power Manager, wenn er aggressivere Power-Modi nutzen kann. Der Power Policy Manager führt diese Informationen mit Daten zum nächsten geplanten Ereignis aus dem TI-RTOS Clock Module zusammen, um den richtigen Modus zu wählen. (Bild: Texas Instruments)

Firmen zum Thema

Sensoren und Aktoren machen Power Management zur kritischen Komponente in IoT-Anwendungen. In Mikrocontroller verbaute Features erleichtern das Design – sofern auch die Software dem Entwickler beisteht.

Das Internet of Things (IoT) stößt die massenhafte Verwendung kostengünstiger Sensoren und Aktoren in zahlreichen verschiedenen Märkten an, deren Spektrum von Smart-Home-Anwendungen über die Energietechnik und das Transportwesen bis zu industriellen Applikationen reicht. In vielen dieser Anwendungen, von denen Bodenfeuchte-Sensoren für die Landwirtschaft nur ein Beispiel sind, ist es notwendig, dass die IoT-Knoten (Sensoren und Aktoren) monate- oder gar jahrelang mit Knopfzellen oder AA-Batterien auskommen. In diesen Fällen stellt das Erreichen der nötigen Energieeffizienz eine gravierende Herausforderung für die Entwickler dar.

In Desktop-Computern und Smartphones ist das Betriebssystem dafür verantwortlich, stromsparende Aktivitäten zu veranlassen, wie etwa das Dimmen des Displays oder das Abschalten der FPGA nach einer bestimmten inaktiven Zeitspanne. Die in diesen Systemen zum Einsatz kommenden Betriebssysteme wie etwa Windows, Linux oder Android sind für die kostengünstigen Mikrocontroller (MCUs) von IoT-Anwendungen nicht geeignet, da deren chipinterner Speicher hierfür schlicht zu klein ist. Gleichwohl wird die Ausstattung von MCU-basierten IoT-Knoten mit ähnlichen, einfach anwendbaren und effektiven Power-Management-Funktionen immer wichtiger, und dies gleich aus mehreren Gründen:

  • Die für die neuesten MCU-Generationen verwendeten Halbleiterprozesse verursachen verglichen mit älteren CMOS-Bausteinen deutlich höhere Leckströme. Um die Energieeffizienz-Anforderungen von IoT-Knoten zu erfüllen, mussten die Halbleiteranbieter ausgefeiltere Power-Management-Features entwickeln, die jedoch eine längere Einarbeitungszeit für die Entwickler mit sich bringen.
  • Das Erreichen optimaler Energieeffizienz erfordert jetzt die Nutzung komplexerer Power-Down-Modi, die größere Teile der MCU (CPU, Peripherie und Speicher) dauerhaft oder zeitweise abschalten.
  • Vielen Entwicklern von IoT-Applikationen fehlt es an Erfahrung im Entwickeln von Embedded-Software. Damit sie erfolgreich arbeiten können, werden diese Entwickler ein Power-Management-Paradigma benötigen, das sich deutlich stärker an die von Windows oder Linux gebotenen Funktionen anlehnt, wo es reicht, einen bestimmten Energiespar-Modus auszuwählen oder dem Betriebssystem das aktive Management des Stromverbrauchs zu überlassen.

Der folgende Beitrag befasst sich mit einem Power-Management-Framework, das in einem Embedded-Betriebssystem eingerichtet wurde. Dieses nachfolgend als ‚OS Power Manager‘ (OS steht für ‚Operating System‘) bezeichnete Framework automatisiert nahezu alle Power-Management-Entscheidungen und befähigt Entwickler zum Bau energieeffizienter IoT-Knoten, ohne dass sie irgendwelche Aspekte der Power-Management-Features auf der Halbleiter-Ebene erlernen müssen. Da die Implementierung eines OS Power Managers aber von den Power-Management-Fähigkeiten des jeweiligen Halbleiterbausteins abhängt, beleuchtet dieser Artikel zunächst einige hardwaremäßige Power-Management-Features von Low-Power-MCUs.

Hardwareseitige Power-Management-Features

Ein fundiertes Verständnis der grundlegenden Hardware-Features, die Hilfestellung beim effektiven Power-Management leisten, ist sehr hilfreich, da der OS Power Manager auf diese Hardware-Ressourcen zurückgreifen muss:

  • Clock Gating: Mit dem Clock Gating lässt sich der Takt für eine bestimmte Peripheriefunktion abschalten, um deren Stromverbrauch zu reduzieren.
  • Power Domains: Obwohl das Abschalten des Takts für eine Peripheriefunktion einen Großteil von deren Stromverbrauch eliminiert, bleibt durch Leckströme ein gewisser Verbrauch bestehen. Zur Vermeidung solcher Leckströme können in einer MCU so genannte Power Domains eingerichtet werden, mit denen sich die Stromversorgung für eine bestimmte Schaltung komplett abschalten lässt.
  • Wake-up Generator: In Ultra-Low-Power-Betriebsarten werden neben der CPU auch praktisch alle Peripheriefunktionen abgeschaltet. Interrupts können die CPU unter diesen Umständen normalerweise nicht erreichen. Deshalb wird zusätzliche ‚Always-on‘-Logik benötigt, damit ein Teil der Peripherie die CPU aufwecken kann.
  • CPU-unabhängiger hochauflösender Timer: Damit der Applikation während langer Power-Down-Phasen eine präzise Zeitbasis zur Verfügung steht, muss die ‚Always-on‘-Logik über einen Timer mit einer Auflösung von 1 ms oder weniger sowie mit einer ausreichend großen Breite enthalten, damit es auch während langer Deep-Sleep-Perioden zu keinem Überlauf kommt.
  • Kurze Aufweckzeiten und Laufzeit-Performance: Die Fähigkeit der MCU, schnell aufzuwachen, Aufgaben zügig zu erledigen und anschließend sofort wieder in den Low-Power-Modus zurückzukehren, ist entscheidend dafür, dass möglichst viel Zeit in stromsparenden Betriebszuständen verbracht werden kann. Hier sind hochfrequente, sich schnell stabilisierende Taktquellen sowie die richtige Taktfrequenz und Performance der CPU gefragt.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44376479 / Embedded Betriebssysteme)