Benutzer erwarten bei Embedded-Systemen eine Applikation mit umfangreichen Funktionen auf kleinstem Raum – was für Entwickler bedeutet, dass sie die Batterien des Geräts bis zum letzten Rest ausreizen müssen. Doch ein regelmäßiger Austausch von Tausenden von Batterien in drahtlos verbundenen IIoT-Sensoren ist teuer und unpraktisch; viele Kunden fordern deshalb eine Batterielebensdauer von mindestens fünf Jahren.
Die Entwickler müssen auch die Reaktionsfähigkeit der Embedded-Applikationen berücksichtigen. Aktuelle Mikrocontroller (MCUs) bieten mehrere Ruhemodi, aber je niedriger der Stromverbrauch ist, desto länger dauert es in der Regel, bis sie aus dem Ruhezustand aufwachen, um eine Benutzeranfrage zu bearbeiten.
Stromversorgungsoptionen für Embedded-Systeme untersuchen
Für ein effizientes Funktionieren des IIoT (Industrial Internet of Things) müssen Sensoren und Aktuatoren oft an weit entfernten Orten installiert werden, manchmal auch fernab einer zuverlässigen Stromversorgung. Daher wird die Stromversorgung dieser IIoT-Edge-Knotenpunkte in der Praxis immer häufiger mit einer Batterie realisiert. Die Herausforderung besteht allerdings darin, die Größe der Batterie zu bestimmen und zu wissen, wie lange sie halten muss. In Applikationen mit extrem niedrigem Stromverbrauch kann die weit verbreitete Knopfzelle bis zu zehn Jahre halten – doch irgendwann müssen auch diese Batterien ersetzt werden. Allerdings ist dieser Ansatz aufgrund der Arbeits- und Reisekosten, die für den Austausch einer 1-Euro-Batterie bei Hunderten von angeschlossenen Geräten anfallen, nicht praktikabel.
In Kombination mit Akkus oder einem alternativen Energiespeicher, z. B. einem Superkondensator, bieten Energy-Harvesting-Techniken eine attraktive und praktikable Option, um teure Vor-Ort-Termine zu vermeiden. Power-Management-ICs (PMICs) für das Energy Harvesting setzen sich schnell auf dem Markt durch und unterstützen zahlreiche Methoden der Energiegewinnung (z. B. Solar-, Piezo-, Wärme- und HF-Technik). In vielen Applikationen ist der verfügbare Platz für diese sogenannten Harvester und die zugehörigen Schaltungen begrenzt.
Unabhängig davon, für welche Energiequelle sich ein Entwickler entscheidet, ist es unerlässlich, das Stromverbrauchsprofil des Sensors zu kennen. Ein detaillierter Überblick darüber, wann und wie viel Strom der Sensor verbraucht, hilft bei der Ermittlung der erforderlichen Batteriekapazität und deren Lebensdauer. Außerdem muss der Verbrauch in Echtzeit gemessen werden, während das Embedded-System und der/die Sensor(en) in Betrieb sind, da der Verbrauch dynamisch ist und Schwankungen aufweist. Diese dynamischen Verläufe helfen auch bei der Auswahl des Batterietyps, da sich einige Batterietypen schneller von Belastungsspitzen erholen als andere.
Besonders wichtig ist es, die Teile des Embedded-Systems zu ermitteln, die Spitzenströme verursachen, um diese zu reduzieren. So lassen sich z. B. Funktionsblöcke wie eine MCU oder ein drahtloser Transceiver in einen Energiesparmodus versetzen oder die Reihenfolge der Programmtasks ändern, um Spitzenströme zu vermeiden und das Ruhestromprofil zu senken.
Stromverbrauchsverlauf eines IIoT-Sensors ermitteln
Das Messen des Stromverbrauchs von drahtlosen IIoT-Sensoren mit einem Digitalmultimeter kann Aufschluss über den durchschnittlichen Stromverbrauch geben. Leider ergibt sich daraus kein genaues Bild für die Leistungsfähigkeit der Batterie. Selbst ein hochentwickeltes Digitalmultimeter, das eine Trendlinie aufzeichnen kann, bietet wahrscheinlich keine bessere Messauflösung als 100 ms. Das ist zu wenig für die Mikrosekunden-Operationen einer MCU.
Die MCU ist ein guter Ausgangspunkt, um die Stromverbrauchsmessung für einen typischen IIoT-Sensor zu untersuchen. Bei einigen Designs kommen eine separate MCU und ein drahtloses Modul zum Einsatz, während andere ein drahtloses System-on-Chip (SoC) verwenden, das einen drahtlosen Transceiver und eine MCU auf einem einzigen Chip integriert. In der Regel lassen sich die einzelnen Funktionsblöcke bei beiden Methoden unabhängig voneinander steuern.
Das EFR32BG22-Bluetooth-Low-Energy-SoC von Silicon Labs kann beispielsweise den drahtlosen Transceiver unabhängig vom MCU-Kern und seinen Peripheriegeräten abschalten. Während der Übertragung hat das Bauelement bei der höchsten Ausgangsleistung von +6 dBm einen Stromverbrauch von 8,2 mA. Dieser Wert sinkt jedoch auf unter 0,17 µA, wenn das SoC in den EM4-Deep-Sleep-Mode geht.
Der hochdynamische Bereich der Stromaufnahme, der von potenziell mehreren zehn mA bis zu wenigen µA reicht, entspricht einem Verhältnis von mehr als 50:1 und kann sich innerhalb von Mikrosekunden ändern. Angeschlossene Peripheriegeräte (wie das Sensorelement) und die zugehörigen MCU-Schnittstellen und Ports verbrauchen ebenfalls Strom und müssen bei der Erstellung des Stromverbrauchsprofils des Geräts berücksichtigt werden.
Diese spezifischen Anforderungen stellen die Entwickler von Embedded-Systemen vor besondere messtechnische Herausforderungen. Der klassische Ansatz, einen Shunt-Widerstand mit niedrigem Ohm-Wert und hoher Toleranz in Reihe mit der Stromversorgung des Geräts zu schalten und den Spannungsabfall an diesem Widerstand zu messen, kann zu weiteren Problemen führen, anstatt eine brauchbare Lösung zu bieten. Durch das Messen der Spannung über dem Shunt lässt sich der Stromfluss berechnen. Diese Spannung, die als Bürdenspannung bezeichnet wird, senkt jedoch die Versorgungsspannung des Embedded-Systems. Ein zu niedriger Widerstandswert kann die Messung von Mikroampere-Strömen erschweren.
Präzise, hochdynamische Strommessung in Echtzeit
Vor mehr als zehn Jahren nahm das Interesse daran zu, Stromverbrauchsmessungen mit dem Programmcode zu kombinieren. Gleichzeitig begannen gängige IDEs, „Power Debugging“ zu unterstützen. Heute sind JTAG-Debug-Sonden mit Strommessfunktionen leicht erhältlich und werden von vielen IDEs (Integrated Development Environment) unterstützt. Sie liefern zwar eine entsprechende Auflösung und wertvolle Informationen, eignen sich jedoch nicht für die hohen dynamischen Bereiche, die typischerweise mit einer Embedded-Plattform verbunden sind.
In den letzten Jahren sind Leistungsmessgeräte auf den Markt gekommen, die speziell für batteriebetriebene Embedded-Systeme entwickelt wurden, wie z. B. das Otii Arc Pro von Qoitech.
Das Otii Arc Pro von Qoitech ist ein vielseitiges Messgerät für Leistungsprofile, das ein Digitalmultimeter, eine Stromversorgung, ein Quellenmessgerät und einen Gleichstromanalysator kombiniert. Im Lieferumfang des kompakten, tragbaren Geräts ist ein zwölfmonatiges kostenloses Abonnement für die Otii Pro-Software zur Messung, Analyse und Aufzeichnung des Stromverbrauchsprofils eines Geräts enthalten. Das Otii Arc Pro kann über den USB-Anschluss oder ein externes Netzteil eine Spannung von 0,5 VDC bis 5 VDC und bis zu 5 A an ein Embedded-System liefern. Mit dem externen Netzteil lässt sich ein Strom liefern, der über dem USB-Limit von 2 A liegt. Dadurch wird die Spannung nicht mit einer zusätzlichen Bürdenspannung belastet, sodass eine präzise Strommessung möglich ist, ohne ein Rücksetzen der zu prüfenden Plattform aufgrund einer zu niedrigen Spannung befürchten zu müssen. Die Auflösung der Strommessung liegt innerhalb von 5 nA und wird mit einer Abtastrate von 4 kS/s erreicht.
Das Otii Arc Pro bietet außerdem eine UART-Schnittstelle, GPIO-Eingänge und -Ausgänge sowie Spannungsmesspins. Über die UART-Schnittstelle können Debug-Meldungen von dem zu testenden Gerät (DUT) synchronisiert und in Echtzeit auf der Zeitachse der Otii-Pro-Software zusammen mit den Strommessungen angezeigt werden (Bild 1). Diese Funktion erleichtert den Debugging-Prozess für Embedded-Entwickler erheblich, da die Analyse auf Breakpoint- und Watchpoint-Ebene mit den Strommessungen synchronisiert wird.
Die optionale Software Otii Battery Toolbox nutzt die interne programmierbare Stromsenke des Otii Arc Pro, um eine Batterie zu entladen und dabei ihr Profil aufzuzeichnen. Bild 2 zeigt die Einstellungen des Batterieentladeprofils mit der konfigurierbaren oberen und unteren Entladezeit und den Lastparametern. Mit dem gespeicherten Batterieprofil lässt sich ein Messobjekt mit einer realistischen Stromversorgung so betreiben, als ob es von der Batterie gespeist würde.
Für Systeme, die eine höhere Versorgungsspannung oder eine schnellere Strommessrate benötigen, bietet das Qoitech Otii Ace Pro (Bild 3) eine Ausgangsspannung von bis zu 25 VDC in 1-mV-Schritten, denselben dynamischen Strommessbereich von 0 A bis 5 A und eine Messauflösung von 0,4 nA. Die Abtastrate ist bis zu 50 kS/s konfigurierbar.
Stromverbrauchsprofil schnell optimieren
Mit dem Qoitech Otii Ace Pro und den Otii Arc Pro Power-Profiling-Einheiten können Embedded-Entwickler schnell ein genaues Echtzeitbild des Stromverbrauchs eines Embedded-Systems erstellen. Auf Grundlage dieser Informationen können sie das Energiemanagement des Systems optimieren und die Batterielebensdauer verlängern. Sie können genau verstehen, was in Echtzeit passiert und die Debug-Analyse mit dem laufenden Code synchronisieren, sodass die Aufgaben so angepasst werden können, dass die Ausführung energieeffizienter geschieht. Wenn beispielsweise Leistungsspitzen des aktiven drahtlosen Transceivers beim Lesen von Sensordaten vermieden werden, lässt sich der kurzzeitige Spitzenstrom senken und die Batterielebensdauer verlängern.
Anhand der Messanalyse und der Erkenntnisse, die die Otii Pro-Software liefert, lassen sich außerdem andere Kombinationen aus MCU, Sensor und drahtlosem Transceiver im Sleep-Modus ausprobieren. (na)