20.11.2015

Power Management für stromsparende Systeme

Der Bedarf an energieeffizienten, batteriebetriebenen Geräten mit langer Lebensdauer ist in allen Branchen und Märkten gefragt. Mit dem Internet der Dinge (IoT) müssen Entwickler im Embedded-Bereich mehr denn je ihre Aufmerksamkeit auf das Power Management für stromsparende Systeme richten. Dies trifft vor allem auf batteriebetriebene Geräte zu, die eine drahtlose Verbindung für die Datenübertragung erfordern. Dabei kann es sich um ein Punkt-zu-Punkt-Funknetzwerk oder oder um ein komplexes Stern- oder Maschen-/Mesh-Netzwerk handeln.



Autor: Matt Saunders, Director Field Marketing, Microcontroller and Wireless Products, Silicon Labs




Es gibt zahlreiche Anwendungen, die in die Kategorie „stromsparende Geräte“ fallen. Ein Beispiel ist ein Funksensorknoten – ein relativ einfaches System aus funktionaler Sicht, das seine Arbeit über einen gewissen Zeitraum erledigt (in manchen Fällen bis zu mehrere Jahre) und über eine Batterie versorgt wird. Um ein erfolgreiches Produkt für eine solche Anwendung zu entwickeln, muss der Entwickler viele Aspekte bei der Gesamtplanung beachten.


Diese Design-Überlegungen umfassen nicht nur den Mikrocontroller (MCU) und seine Energieeffizienz, sondern auch andere Elemente im System. Dazu zählen die Funkschnittstelle (nicht nur die physikalische Implementierung, sondern auch das verwendete Funkprotokoll), das Power Management auf Systemebene (z.B. der in die MCU integrierte LDO-Regler oder spezielle Power Management ICs), der Sensor selbst und Analogfunktionen, die zum Sammeln und Verarbeiten der Sensordaten erforderlich sind.




Bild 1 zeigt die wesentlichen Bestandteile eines Funksensorknotens. Beginnen wir mit der MCU, dem wesentlichen Bestandteil des Designs. Für einen batteriebetriebenen Funksensorknoten muss die MCU äußerst energieeffizient sein. Die Funkprotokoll- und Datenverarbeitungs-Anforderungen (z.B. für die Signalaufbereitung und digitale Signalverarbeitung) schreiben vor, ob eine 32- oder 8-Bit-MCU erforderlich ist. Unabhängig von der MCU bleiben jedoch viele Stromsparanforderungen gleich.



Die Aktivierung der MCU ...

aus einem Stromsparmodus in den Full-Speed-Betrieb in kurzer Zeit (z.B. in 2 µs) macht einen erheblichen Unterschied bei der Stromentnahme aus dem Akku. Je schneller die MCU-Wakeup-Zeit, desto besser. Während des Übergangs zwischen den Power-Modi bietet die MCU an sich keinen Nutzen. Zwei weitere Parameter haben ebenfalls erheblichen Einfluss auf den Energieverbrauch in den Low-Power-Modi (der <1 µA betragen sollte) und auf den Verbrauch in den Aktiv-Modi (diese variieren je nach MCU-Core und der Prozesstechnik, in der die MCU gefertigt wurde und sollte im Bereich 150 µA/MHz oder weniger liegen).


Auch andere Faktoren beeinflussen die Energieeffizienz. Aber die genannten drei Faktoren (geforderte Rechenleistung, Energieverbrauch im Low-Power-Modus und Energieverbrauch im Aktiv-Modus) sind architektonische Überlegungen und für die MCU-Auswahl entscheidend. Entwickler sollten auch in Betracht ziehen, welche Funktionen die gewählte MCU ohne Mitwirken des Cores selbst erledigen kann. So lassen sich durch die autonome Verarbeitung der Sensorschnittstellen erhebliche Stromeinsparungen erzielen.



Akkulaufzeit und mehr

Die Erzeugung des Ansteuersignals (oder der Stromversorgung) für den Sensor von der MCU und das Auslesen sowie Interpretieren der Daten, ohne dabei die MCU zu aktivieren, bis „nützliche“ Daten vorliegen, kann die Akkulaufzeit des Systems erheblich verlängern. Einige MCU-Architekturen bieten eine autonome Sensorverarbeitung. Silicon Labs’ EFM32 MCU bietet eine autonome, stromsparende Sensorschnittstelle (LESENSE; Low-Energy Sensor Interface) mit integrierten Komparatoren, die Daten von einem externen Sensor sammelt und die CPU nur dann aktiviert, wenn gültige oder nützliche Daten vorliegen (Bild2). Der Stromverbrauch beträgt dabei nur 1,5 µA.





Während für stromsparende Anwendungen noch andere Energiespar-Aspekte einer MCU zu berücksichtigen sind, ist für einen einfachen Funksensorknoten wie in unserem Beispiel noch einiges zu beachten. Bei der drahtlosen Datenanbindung gibt es zahlreiche Optionen. Die Netzwerktopologie (Bild 3) und die Wahl des Protokolls haben Einfluss auf das Strombudget, das zur Aufrechterhaltung der Funkverbindung erforderlich ist.





Punk-zu-Punkt, Stern oder Mesh

In einigen Fällen kann eine einfache Punkt-zu-Punkt-Verbindung mit einem proprietären Sub-GHz-Protokoll die richtige Wahl sein, da so am wenigsten Energie über den Akku bezogen wird. Diese einfache drahtlose Konfiguration begrenzt jedoch den Umfang, wo und wie der Sensor sinnvoll eingesetzt werden kann.


Eine Stern-Konfiguration auf Basis der 2,4-GHz- oder Sub-GHz-Technologie erhöht die Flexibilität bei der Sensoranwendung. Mehrere Sensoren lassen sich somit im gleichen Netzwerk installieren, was aber die Komplexität des Protokolls erhöht, um Daten übertragen zu können. Damit erhöht sich der Funkdatenverkehr, was wiederum den Strombedarf vom Akku erhöht.


Eine dritte Möglichkeit ist eine Mesh-Konfiguration auf Basis eines Protokolls wie ZigBee. Während ein Mesh-Netzwerk den größten Stromverbrauch einer Sensorknoten-Batterie verursacht, bietet es andererseits die größte Flexibilität, da es einen Knoten-zu-Knoten-Datentransfer ermöglicht. Je nach Wireless-Stack (z.B. ZigBee) kann ein Mesh-Netzwerk auch die zuverlässigste Umsetzung bieten und ein selbstheilendes Netzwerk bereitstellen: Fällt ein Knoten im Netzwerk aus, können die gesendeten Nachrichten einen anderen Pfad zu ihrem Ziel finden. Eng verbunden mit der Wahl der Netzwerkkonfiguration ist die Datenmenge, die von Knoten zu Knoten oder vom Knoten zum Aggregator übertragen werden muss.



Das Bild 4 oben zeigt einen Umgebungslichtsensor mit intgerierter Signalaufbereitung. In einem Sensorknoten sollte die Datenmenge, die über eine Funkverbindung übertragen wird, relativ gering sein. Vor allem, wenn einige der Daten in der Knoten-MCU verarbeitet werden und nur relevante Informationen anstatt sämtliche Daten übertragen werden. ZigBee bietet daher die optimale Mesh-Netzwerklösung. Bluetooth Smart ist eine ausgezeichnete Wahl für standardbasierte, stromsparende Punkt-zu-Punkt-Verbindungen, und proprietäre Sub-GHz-Lösungen bieten maximale Flexibilität für Netzwerkgröße, Bandbreite und Datennutzlast in Stern- oder Punkt-zu-Punkt-Konfigurationen.




Reichweite und Knotenzahl sind wichtig

Tabelle 1 fasst wichtige Funktionen und Vorteile gängiger Funktechniken in IoT-Anwendungen zusammen.
Auch Technologien und Plattformen mit hoher Reichweite sollten berücksichtigt werden, z.B. LoRa und Sigfox, die Netzwerke mit hoher Knotenzahl und Verbindungen erlauben, die mehrere Kilometer weit reichen und ebenfalls stromsparende Systeme unterstützen. Mit diesen Funktechniken für lange Reichweiten lassen sich stromsparende Sensorknoten über weite Strecken verteilen.


Einfluss von Verschlüsselung

Eine weitere Überlegung für die Funkverbindung ist die Verschlüsselung, die zum Schutz der übertragenen Daten verwendet wird. Je nachdem, wie die Verschlüsselung gehandhabt wird, hat dies erheblichen Einfluss auf den Stromverbrauch der beteiligten Systeme. So ist die Verschlüsselung bei ZigBee bereits in den Stack integriert.


Wenn aber die MCU (oder der Prozessorkern) zur Ausführung des Stack nicht über die richtige Verschlüsselungs-Hardware verfügt, sind mehrere Zyklen erforderlich, um den Algorithmus in Software auszuführen. Die Verwaltung eines 128-Bit-AES-Verschlüsselungs-Algorithmus auf einem ARM Cortex-M0+ Prozessor mit AES-Hardware-Beschleuniger erfordert 54 Zyklen, während der gleiche Algorithmus ohne Hardwarebeschleunigung mehr als 4000 Zyklen benötigt, was in etwa 80-mal länger als bei einer MCU mit Hardwareverschlüsselung ist. Dies hat erheblichen Einfluss auf den Gesamtstromverbrauch des Sensorknotens, wenn dieser Daten über Funk sendet oder empfängt.


Im IoT-Markt steigt die Nachfrage nach sicheren Funkverbindungen. Da eine immer komplexere Verschlüsselung für Funknetzwerke erforderlich ist, wird dieser sicherheitsgetriebene Aspekt des Power Managements für stromsparende Geräte immer wichtiger und hat erheblichen Einfluss auf die Wahl der Hardware. Die Auswahl an Sensoren für unser Beispiel ist vielfältig und reicht von optischen über Umgebungs- bis hin zu Bewegungssensoren.



Die Wahl der Sensoren ...

hängt letztlich von der zu messenden Größe ab. In unserem Beispiel kommen Umgebungslichtsensoren zum Einsatz. Umgebungslicht lässt sich auf verschiedene Arten messen, z.B. mittels diskreter Sensoren, die auf einen geringen Stromverbrauch ausgelegt sind. Dieser Ansatz erfordert dann allerdings die Signalerfassung und -verarbeitung über die MCU. Die MCU wird sich dabei längere Zeit im Aktivmodus befinden, und mehr Peripherie wie A/D-Wandler (ADCs) bleiben aktiv. Der Gesamtstromverbrauch des Systems steigt damit.



Ein alternativer Ansatz ...

verwendet einen Umgebungslichtsensor mit integrierter Intelligenz (Bild 4). In den Sensor integrierte Signalaufbereitung bietet entscheidende Vorteile. Die an die MCU weitergeleiteten Daten sind für die Anwendung relevante Daten, die sich schnell und einfach aufbereiten lassen. Die MCU kann daher so lange wie möglich im Sleep-Modus verbleiben. Werden vorab aufbereitete Daten über eine digitale Schnittstelle wie SPI oder I2C gesendet, kann die MCU die Daten effizienter verarbeiten als wenn ihr ADC zum Einsatz kommen muss.


Dieses Beispiel ist zwar spezifisch für Umgebungslichtsensoren; viele andere Sensoren verfolgen aber einen ähnlichen Ansatz mittels integrierter Intelligenz. Sie stellen Daten für die Host-MCU zur Verfügung, die anschließend sofort verwendet werden können, was den Gesamtstromverbrauch des Systems verringert.



Die abschließende Designüberlegung ...

bei stromsparenden Anwendungen ist die Versorgung des Systems selbst. Je nach Batterietyp sind oft Aufwärtswandler oder Aufwärtsschaltregler erforderlich, wenn mehr Spannung oder Strom benötigt wird als die Batterie liefern kann. Erfolgt der Betrieb über eine einzige Zelle mit 1,5 V und es müssen 3,3 V für die MCU bereitgestellt werden, muss diese Funktion in das Power Management des Systems mit integriert werden.


Die sorgfältige Auswahl hat auch hier großen Einfluss auf den Gesamtstromverbrauch des Systems. Es stehen zahlreiche Aufwärtswandler mit einem Stromverbrauch im Bereich 5-7 µA zur Verfügung. Dies ist jedoch ein sehr hoher Wert, wenn die meiste Zeit im Sleep-Modus verbracht werden soll. Es finden sich aber auch Aufwärtswandler mit 1 µA oder sogar nur 150 nA Stromverbrauch (bei effizienter Aufwärtswandlung). Für komplexere Systeme sollte ein PMIC (Power Management Integrated Circuit) eingeplant werden, der eine präzisere Regelung des gesamten Systems ermöglicht.


Über eine einzige Stromquelle stehen dann mehrere Spannungsschienen zur Ansteuerung verschiedener Komponenten im Embedded-System zur Verfügung. Jede Spannungsschiene lässt sich einstellen, so dass gerade genügend Leistung für die Anwendung bereitsteht, ohne dabei Energie zu verschwenden. Eine Versorgungsschiene kann somit dem Funksystem zugewiesen werden, eine andere der MCU. Das Funksystem lässt sich somit vollständig abschalten, wenn es nicht benötigt wird (sofern das Protokoll diese Funktion erlaubt).


Alternativ kann eine MCU, die den I/O-Ring und den Core getrennt versorgt, optimale MCU-Energieeffizienz erzielen, wenn ein PMIC zum Einsatz kommt und eine getrennte Versorgungsschiene für die Sensoren bereitsteht. Ein qualitativ hochwertiger PMIC bietet auch zusätzliche Funktionen für die allgemeine Systemsteuerung, z.B. Watchdog Timer und Ruhefunktionen. Ein PMIC eignet sich nicht für alle Anwendungen, da er zusätzliche Kosten verursacht, die für manche Geräte nicht vorgesehen sind. Der PMIC-Ansatz bietet jedoch eine hervorragende Möglichkeit, den Gesamtstromverbrauch energieeffizienter Anwendungen zu regeln.


Es gibt also verschiedene Designansätze, die bei der Entwicklung batteriebetriebener, stromsparender Geräte zu beachten sind. Nicht nur die Halbleiterbauelemente, sondern auch der gesamte Ansatz in Sachen Software, Funkprotokoll-Stacks, Verschlüsselung und Datenverarbeitung ist entscheidend. Jedes dieser Designelemente kann einen erheblichen Einfluss auf den Gesamtstromverbrauch des Systems und damit auf die maximale Batterielebensdauer/Akkulaufzeit haben – und gerade darum geht es bei einem guten IoT-Systemdesign.



 


--> -->