Leistungsberechnungen für das IoT
Im Lexikon der „trendigen“ Abkürzungen wurde das einfache „IoT“ – Internet of Things oder Internet der Dinge – vor Kurzem durch „IIoT“ – Industrial Internet of Things – ersetzt. Diese Terminologie wird in Verbindung mit Industry 4.0 und Smart Factory aufgeführt. Ein Merkmal der neuen industriellen Steuerungsumgebung ist der Gedanke, dass die neue Feldverkabelung für Sensoren und Datenerfassungspunkte durch drahtlose Netzwerke ersetzt oder zumindest ergänzt wird. Die betreffenden Sensorknoten werden einfach dort bereitgestellt, wo sie benötigt werden. Sie sollen batteriebetrieben sein und wenig Strom verbrauchen, sodass sie über Jahre hinweg ohne Wartung funktionieren können.
Wie bei vielen Innovationen im Engineering-Bereich sind gewisse Aspekte des Konzepts nicht so neu wie man denken mag. Die Idee drahtloser Sensornetzwerke besteht bereits seit mindestens 20 Jahren: Die IEEE-Arbeitsgruppe zu drahtlosen Personal-Area-Netzwerken hat den Standard 802.15.4 im Jahr 2003 festgelegt, und die erste Ausgabe der ZigBee-Standards – auf denen viele der ersten Überlegungen zu diesem Thema beruhten –, wurde 2004 veröffentlicht. Seitdem wurden zahllose Varianten und zusätzliche Funktionen für den Wireless-Teil des Konzepts ausgearbeitet. Heutzutage haben Entwickler daher die Auswahl unter vielen offenen oder proprietären Modellen. Die Wireless-Konnektivität ist zwar eines der Schlüsselmerkmale, aber auch in vielen anderen Bereichen müssen wichtige Entscheidungen getroffen werden, wobei der „rote Faden“ innerhalb der gesamten Designstudie der Stromverbrauch ist.

Tabelle 1 – IoT Wireless-Standards
*Stromverbrauch: Näherungswerte, die auf dem Verbrauch von Kommunikationsmodulen von TI, STMicroelectronics und Microchip bei 3 V beruhen.
Das Design der Stromversorgung für einen solchen Sensorknoten wirft eine Reihe von Problemen auf. Der Strom kommt aus einer Primärbatterie oder aus einer aufladbaren Komponente, möglicherweise einer Sekundärbatterie oder einem Doppelschicht-Kondensator („Superkondensator“) oder einer Kombination dieser Energiequellen. In letzteren Fall kann die Wiederaufladung über aus der Umgebung gewonnene Energie, in der Regel eine fotovoltaische Zelle, erfolgen. In allen Fällen ist der Strom ein knappes Gut: Eine Energiereserve, möglicherweise eine winzige Knopfzelle oder eine AA-Batterie, muss jahrelang halten, ohne dass sie bei Wartungsarbeiten ausgetauscht wird. Beim Design von IoT-Geräten mit niedrigem Stromverbrauch muss statt einiger Stunden Batterielaufzeit für andere Anwendungen ein Zeitrahmen von mehreren Jahren berücksichtigt werden.
Bestimmte Parameter, die in einer Spezifikation aufgeführt werden und möglicherweise Teil der garantierten Leistung sind, können in der Realität nicht definitiv getestet werden. Niemand kann zehn Jahre lang einen Prototyp betreiben, bevor das Produkt auf den Markt kommt. Daher beruhen Angaben wie „10 Jahre Batterielebensdauer“ in gewisser Weise auf Extrapolation. Daraus folgt, dass der Entwickler sich in hohem Maße auf die Messungen, Berechnungen und Vorhersagen verlassen muss, die die Grundlage für die Angaben zur Batterielebensdauer bilden.
Der grundlegende Funktionsblock umfasst einen Sensor zum Messen von Parametern in der Praxis, eine Art von Signalverarbeitung und Datenvorverarbeitung sowie einen Kommunikationslink zum Übertragen der gemessenen Daten in das Steuerungsgesamtsystem. Dieser Knoten sollte automatisch periodisch aktiviert werden, die Kommunikation mit dem Host aufnehmen, die Daten übertragen und sich dann wieder deaktivieren. Die Batterielebensdauer hängt von der insgesamt entnommenen Energie ab. Eine langfristige Minimierung des Stromverbrauchs bedeutet, den Verbrauch in jedem einzelnen Betriebszyklus zu senken. In vielen Fällen hat der Knoten ein sehr niedriges Tastverhältnis: Eine Messung, die ein paar Millisekunden in Anspruch nimmt, tritt vielleicht einmal pro Sekunde oder Minute oder sogar noch weniger häufig auf. Daher ist der Stromverbrauch im Standby-Modus entscheidend für den Gesamtverbrauch.
Der Gesamtverbrauch in jedem Betriebszyklus ist natürlich die Summe der zu jedem Zeitpunkt in diesem Zyklus entnommenen Energie. Unter der Voraussetzung einer konstanten Voltzahl ist es der Bereich unter dem Kurvenbild im Energie-Zeit-Diagramm. Rechnerisch ist dies einfach, aber die Auswirkungen auf die Architektur des Designs sind sehr viel komplizierter.
Dabei wird sich die Aufmerksamkeit logischerweise auf den Mikrocontroller richten, um den der Knoten voraussichtlich erstellt wird. Angenommen, der Mikrocontroller ist 99% der Zeit in einem Zustand mit niedrigem Energieverbrauch. Je weniger Mikro-Ampere also in diesem Zustand verbraucht werden, desto besser. Die MCU mag eine Reihe von Energiespar-Zuständen bieten, z. B. tiefer oder weniger tiefer Leerlauf, mit mehr oder weniger aktiven Peripheriegeräten. Eine Wiederherstellung vom tiefen Leerlauf zum Betriebszustand wird in der Regel länger dauern und die bei dieser Aktivierung verbrauchte Energie muss bei der Berechnung des Gesamtstromverbrauchs über den Zyklus hinweg berücksichtigt werden. Tiefer Leerlauf/Mikrosekunden für die Aktivierung ... An diesem Punkt wird der Entwickler wohl langsam eine Tabellenkalkulation benötigen.
Diese Denkweise muss auf alle Funktionsblöcke im Design des IoT-Knoten ausgedehnt werden. Kann der Sensor selbst sofort nach der Einschaltung bereit sein oder benötigt er Zeit für die Stabilisierung? Vor der Umwandlung von analog zu digital werden möglicherweise Verstärkungs- und Filtervorgänge im Analogbereich vorgenommen: Lohnt es sich im Hinblick auf das gesamte Energiegleichgewicht, diese Elemente im „Leerlauf“-Teil des Zyklus abzuschalten? Wenn dies der Fall ist, erfolgt die Stabilisierungszeit von Operations- oder Messverstärkern innerhalb des Aktivierungsfensters der MCU oder muss dies anderweitig eingerichtet werden? Wenn die Energieversorgung an individuelle Blöcke über Gatter als lohnenswert angesehen wird, ist möglicherweise ein Power-Management-IC erforderlich. Dieser ermöglicht eine genaue Steuerung von Aktivierung und Deaktivierung, verbraucht aber im Ruhezustand ebenfalls Energie.
Um auf die oben angeführten anfänglichen Überlegungen zurückzukommen, wird das gewählte Kommunikationsmedium ebenfalls zur verbrauchten Strommenge beitragen und ähnliche Beschränkungen aufweisen. Für die Aktivierung der HF-Verbindung wird Zeit und Energie benötigt, bevor eine Datenübertragung möglich ist.
Die Batterien selbst sind ein entscheidender Bestandteil bei der Berechnung. Die erste Anforderung besteht darin, dass die Batterie die Anwendung auch zu Spitzenzeiten mit genügend Strom versorgen kann. Wenn der durchschnittliche Energieverbrauch ermittelt und auf die Ziellebensdauer extrapoliert wurde, muss die Gesamtkapazität zudem ausreichend sein. Die universell eingesetzte CR2032 hat eine Nennkapazität von 210–220 mAh. Wenn ein Mikrocontroller über zehn Jahre (ausschließlich) im Standby-Modus betrieben würde, müssten somit 3 µA (220 mAh/87.600 Stunden) oder weniger entnommen werden. Bei dieser einfachen Berechnung wird die Selbstentladungsrate der Zelle nicht berücksichtigt. Energizer gibt beispielsweise an, dass seine CR2032 jährlich etwa 1% ihrer Kapazität verliert. Außerdem wird die Nennkapazität bei einer bestimmten Last spezifiziert – im Fall der Energizer-Zelle 240 mAh bei 15 kΩ an ein 2V-Gerät (oder 200 µA im Neuzustand). Die tatsächlich erreichte Kapazität hängt von der Last ab und reduziert sich in der Regel bei höherer Stromspannung. Ein Bereich, in dem Branchentrends hilfreich sind, ist die spezifizierte Lagerfähigkeit von Batterien (Primärzelle). Heutige Alkali- oder Li-MnO2-Markenbatterien werden selbst im Einzelhandel unter der Angabe „10 Jahre Lebensdauer“ verkauft und weisen ein Verbrauchsdatum von einem Jahrzehnt auf. In der Vergangenheit war es oft schwierig, überhaupt Batterien zu finden, für die eine Gebrauchstauglichkeit über zehn Jahre hinaus garantiert wurde.

Tabelle 2 – Energiespeicher
Ähnlich gilt: Der Einsatz von Energiegewinnung durch eine Art wiederaufladbare Energiereserve könnte zwar dazu führen, dass nicht der Stromverbrauch jeder Funktion minimiert werden müsste, aber die Produktlebensdauer von mindestens einem Jahrzehnt bedeutet wahrscheinlich, dass bei wiederaufladbaren Zellen im Vergleich zum Neuzustand eine Kapazitätsreduzierung auftreten wird. Sowohl primäre als auch sekundäre Zellen sollten außerdem mit Zurückhaltung bewertet werden, da sie in schwierigen Umgebungsbedingungen (z. B. anhaltend niedrigen Temperaturen) eingesetzt werden.
Trotz der geplanten Verlängerung der Batterielebensdauer muss ein IoT-Knotendesign mit niedrigem Stromverbrauch dem Host einen Ausfall der jeweiligen Energiequelle melden können. Wenn der Analogschaltkreis über nicht genutzte Kapazität verfügt, könnte dies über einen einfachen Komparator oder einen nicht genutzter Operationsverstärker erfolgen, der erkennt, wenn die Spannungsschiene unter einen voreingestellten Wert fällt. Wenn ein paar zusätzliche Prozessorzyklen in Kauf genommen werden, kann die Messung mit einer ADC-Eingabe vorgenommen werden. In beiden Fällen würde der Auslösepunkt so festgelegt, dass genügend Strom zum Senden einer entsprechenden Nachricht verbleibt.
Die wahren Anstrengungen werden aber voraussichtlich in Bezug auf den Mikrocontroller vorgenommen werden. Zu den wichtigen Kennzahlen bei der Geräteauswahl gehören der Stromverbrauch der MCU (in µA/MHz), eine angemessene Kombination aus Peripheriegeräten, insbesondere ein ADC mit entsprechender Leistung, sowie die Komplexität des kompilierten Codes (Anzahl der zwischen Aktivieren und Abschalten auszuführenden Zyklen).
Mikrocontroller-Auswahl
Eine der ersten wichtigen Entscheidungen ist die Auswahl von 8-, 16- oder 32-Bit. Bei einem 8-Bit-Gerät ist der niedrigste Stromverbrauch zu erwarten, was auch in vielen Fällen richtig sein wird. Wenn man sich beispielsweise die PIC-Reihe von Microchip ansieht, gibt es PIC18F „K42“ XLP-Produkte mit 8-Bit, die im aktivierten Zustand 45 µA pro MHz (bis zu 64 MHz) verbrauchen (https://www.farnell.com/datasheets/2297480.pdf). Ein 16-Bit-Gerät, der PIC24FJ256GA412/GB412, verbraucht 160 µA/MHz, während das 32-Bit-Gerät PIC32MX 250 µA/MHz verbraucht. Erwartungsgemäß geht höherer Energieverbrauch auch mit höherer Leistung einher. Selbst beim 8-Bit-Gerät gibt es zahlreiche Optionen zur Untersuchung und Verwaltung des Stromverbrauchs, darunter drei verschiedene Stromsparmodi für den Kern und eine Reihe von XLP (eXtreme Low Power)-Funktionen, mit denen beispielsweise die Parameter für Zeitgeber und Oszillator festgelegt werden. Die Liste der Peripheriegeräte bei einem 12-Bit-ADC umfasst vier konfigurierbare Logikzellen, die einfache kombinatorische/sequentielle Logikfunktionen implementieren können. Dieser scheinbar kleine Zusatz zur Spezifikation erspart möglicherweise ein externes Paket, da einige logische Entscheidungsfindungen ohne oder vor dem Aktivieren des Kerns erfolgen können.
Ein Gerät mit einem breiteren Bus ist möglicherweise vorzuziehen, wenn beispielsweise die Sensoreingabe äußerst präzise ist und eine digitale Filterung erforderlich ist: Dadurch könnte sich die Anzahl der in einem kleineren Kern benötigten Prozessorzyklen schnell erhöhen, mit dem Ergebnis, dass ein leistungsstärkeres Gerät die Aufgabe sehr viel schneller ausführen könnte und eher wieder in den Standby-Modus wechseln würde.
Microchip bietet auch die SAML21/22 32-Bit Prozessoren (ARM Cortex-M0 + Teile von der Atmel-Übernahme des Unternehmens, Ausführung bis zu 48 MHz), die lediglich 32 µA/MHz verbrauchen. Wenn diese Prozessoren die Anforderungen der Anwendung erfüllen (sie weisen eine niedrigere Spitzenleistung als der PC32MX auf), sind sie eine gute Wahl, insbesondere, wenn das Designteam bereits Entwicklungserfahrung mit ARM hat.
Texas Instruments bietet schon seit langem erfolgreich MCUs mit niedrigem Stromverbrauch in der BaureiheMSP430und bringt laufend neue Modelle heraus. Die Fähigkeit, eine Anwendung auf Leistung zu „tunen“, kommt in den Funktionen der Geräte MSP430FG662x und MSP430FG642x zum Ausdruck. Zusätzlich zum aktiven Modus verfügen diese Geräte über einen Standby-Modus, in dem Daten im RAM gesichert werden und das System schnell aktiviert werden kann, einen Abschalt-Modus, bei dem die Echtzeituhr weiterhin läuft, und einen Abschalt-Modus mit extrem niedrigem Energieverbrauch.
Bei 3 V verbraucht der aktive Modus 250 µA/MHz (und das Gerät kann bis zu 20 MHz laufen, bei einem Stromverbrauch von 5 mA), der Standby-Modus 3,4 µA und die Abschalt-Modi jeweils 0,9 µA und 0,2 µA. Die größte Energieeinsparung erfolgt beim Übergang vom aktiven in den Standby-Zustand, wenn der Stromverbrauch um mehrere hundert Mal reduziert werden kann. Der Unterschied zwischen Standby- und abgeschaltetem Zustand kann aber sehr wichtig sein: Zum einen ist eine weitere, fast vierfache Senkung des Energieverbrauchs möglich, zum anderen kann die Echtzeituhr weiterlaufen, eine wichtige Funktion zum Generieren des Aktivierungsbefehls. Das Datenblatt enthält auch die Zeit für die Aktivierung aus dem Standby- in den vollen Betriebszustand, in diesem Fall 3 µs. Während des „Aufwachens“ läuft die MCU mit ihrem „vollständig aktiven“ Stromverbrauch. Dasselbe Gerät (662x) aus dem abgeschalteten statt aus dem Standby-Modus zu aktivieren, dauert 2 ms, nicht 3 µs. Der Entwickler muss also bei der Berechnung die Zeit im „abgeschalteten“ Teil des Tastverhältnisses gegen die zusätzliche Energie beim Wiederaktivieren abwägen, um zu bestimmen, ob ein tieferer Leerlauf lohnenswert ist.

Abbildung 1: Beispiel für die Berechnung der Batterielebensdauer einer IoT-Anwendung
Bei den oben aufgeführten Abschnitten wird davon ausgegangen, dass im Fall einer geplanten Wireless-Verbindung ein eigenständiges HF-Modul oder ein IC in das Design integriert wird. Dieses verfügt über eigene Datenblattwerte für Startzeit und Energieverbrauch sowie die Stromentnahme bei vollem Betrieb. Die Werte müssen bei der verbrauchten Gesamtstrommenge für den Teil des Tastverhältnisses berücksichtigt werden, in dem das HF-Modul eingeschaltet ist. Farnell bietet eine Vielzahl von Modulen für ZigBee-Netzwerke, für proprietären IEEE 802.15.4-Betrieb und für andere Standards. Um nur ein Beispiel für die Stromanforderungen von Zigbee zu betrachten:Silicon Labs ETRX35x-LRSist ein Modul auf Basis eines einzelnen Chips, der aus einem tiefen Leerlauf in 100 µs aktiviert werden kann, im Empfangsmodus etwa 30 mA und bei der Übertragung je nach Ausgabeleistung zwischen 50 und 140 mA verbraucht. Aus diesen Zahlen ist sofort erkenntlich, dass die Minimierung der „eingeschalteten“ Zeit des HF-Moduls RF (insbesondere die Übertragung) ein überaus wichtiger Faktor dabei ist, den Gesamtstromverbrauch unter Kontrolle zu halten.

Abbildung 2 – IoT-Leistungsrechner
Eine weitere Variante ist die Konfiguration eines Designs mit einem Mikrocontroller mit einem Chip und integrierter HF-Funktionalität, in dem der MCU-Kern genügend „Kopfhöhe“ oder Kapazität hat, um die Messung und den Code für die Berichtsanwendungen zu hosten und auch den Kommunikationsstapel auszuführen. Ein Beispiel aus der Reihe von NXP ist derJN5179ZigBee und IEEE802.15.4 Wireless Mikrocontroller mit 512 KB Flash-Speicher und 32 KB RAM. Dieser IC hat einen ARM Cortex-M3-Kern mit einer programmierbaren Taktrate und einen HF-Empfänger, der für den Betrieb des generischen Links oder für Konformität mit ZigBee konfiguriert werden kann. Das Funkgerät in diesem Beispiel wird auf einen Verbrauch von 100 nA heruntergefahren, die MCU hat einen 10-Bit-ADC und es gibt zusätzliche Funktionen wie die integrierte Überwachung der Batterie-Voltzahl.
Weitere HF-Strategien können je nach gegebenen Umständen eingesetzt werden, bringen aber jeweils eigene Energieverbrauchs-Spezifikationen mit sich. Wenn in der Betriebsumgebung bereits WLAN (IEEE802.11/b/g/n)-Abdeckung vorhanden ist, stellt dies möglicherweise eine bequeme Methode zum Erfassen von Felddaten dar – verbraucht aber natürlich auch Energie. Sehen Sie sich ein weiteres Produkt von Silicon Labs an, das anhand eines der unternehmenseigenen Gecko-Chips konstruiert wurde (wiederum mit einem ARM Cortex-M3-Kern). Das Datenblatt für denWGM110zeigt einen Stromverbrauch bei Übertragungen von 261 mA, einen Empfangsstrom von 8 mA und einen „Leerlauf“-Strom von 2,2m A. Der Wert für tiefen Leerlauf beträgt 22 µA. In einer Umgebung, wo es auf hohe Reichweite ankommt, ist möglicherweise der LoRa-Standard anwendbar.
Wie die oben aufgeführten Beispiele verdeutlichen, ist die Systempartitionierung vielfach der Schlüssel, um die angestrebte Batterielebensdauer zu erreichen. Dies gilt für das vordere Ende eines Sensorknotens. Manche Systeme nutzen einen analogen Temperatursensor, so derLMT84-Q1von Texas Instruments, ein 10-µA-Temperatursensor mit analogem Ausgang, der auf Spannungen von 1,5 V ausgelegt ist. Mit 8,1 µA ist dies ein Gerät mit sehr niedrigem Energieverbrauch. Es muss vom Mikrocontroller abgefragt werden und die analoge Messung muss dann durch den ADC der MCU konvertiert werden, was alles zum Stromverbrauch im „aktiven“ Modus hinzugezählt werden muss. Durch den Einsatz eines digitalen Temperatursensors (ebenfalls von TI) kann derTMP102dafür sorgen, dass in der MCU kein ADC mehr verwendet werden muss. Noch wichtiger aber ist, dass dadurch die Temperatur fortlaufend überwacht und ein Warnsignal zum Aktivieren der CPU gesendet werden kann, wenn sich die Temperatur in einen Bereich außerhalb der voreingestellten Werte bewegt. Dadurch kann der Stromverbrauch erheblich gesenkt werden, da die CPU für einen längeren Zeitraum im deaktivierten Modus bleibt, während die Temperatur fortlaufend überwacht wird.
Wenn der Entwickler entscheidet, dass eine detaillierte Steuerung des Stromverbrauchs möglich sein soll, kommt eine Power-Management-IC (PMIC) ins Spiel. Diese ICs sind in zahllosen Variationen von einer ganzen Reihe von Herstellern verfügbar. Ein Beispiel für die hier vorgesehene Langzeitanwendung mit Primärbatterie ist dieMAX14720von Maxim Integrated. Sie ist für nicht wiederaufladbare Batterieanwendungen (Knopfzelle, Dual-Alkali-Batterien) geeignet, bei denen Größe und Energieeffizienz entscheidend sind. Die IC integriert fünf separate Geräte: Leistungsschalter, Linearregler, Abwärts-Schaltregler, Zusatz-/Absatzregler und Monitor. Mit einem programmierbaren Leistungsregler wird das Teil entweder für die Verwendung in Anwendungen konfiguriert, für die ein echter Aus-Status erforderlich ist, oder für „Always-On“-Anwendungen. Der Regler bietet ein verzögertes Rückstellungssignal, Spannungssequenzierung sowie eine Anpassung der Tastenzeiten für Ein-/Ausschalten und eine harte Rückstellung bei der Wiederherstellung.
Eine weitere Funktion ist eine – elektronisch implementierte – „Batterieversiegelung“, wodurch die Batterie vor der ersten Verwendung komplett ausgeschaltet bleibt. Dadurch können die Produkte mit eingelegter Batterie versendet werden. Als weiterer offensichtlicher Vorteil kann der Hersteller hierdurch sicherstellen, dass die bei Inbetriebnahme des IoT-Knotens eingelegte Batterie hochwertig genug ist, um die anvisierte Lebensdauer von einem Jahrzehnt zu bieten.
Leistungsberechnungen für das IoT. Datum der Veröffentlichung: 15. März 2018 von Farnell