Reduzierung des Energieverbrauchs

Software- und Hardware-Optimierung

Der Energieverbrauch ist entscheidend!

Die Entwicklung von Embedded-Systemen mit geringem Energieverbrauch ist eine komplexe Aufgabe. Die Halbleiterindustrie bietet eine große Auswahl an Mikrocontrollern, viele davon verfügen über spezielle Merkmale zur Steigerung der Energieeffizienz. Leider gibt es heute noch keine Normen oder Richtwerte um die Energieeffizienz von Mikrocontrollern zu vergleichen. Selbst die Anwendungsanforderungen haben einen großen Einfluss. Daher ist es schwierig, den passendsten Mikrocontroller für eine energiekritische Anwendung auszuwählen.

Zudem hat die Anwendungssoftware selbst einen großen Einfluss auf den Energieverbrauch. Darum ist es wichtig, die Systemkonfiguration sorgfältig für die Anforderung der Anwendung auszuwählen und das passendste Software-Design-Pattern zu verwenden. Selbstverständlich sollten die Entwicklungstools für die Erstellung der Anwendung speziell für die Embedded-Programmierung ausgelegt und energieeffizient konfiguriert sein.

Während der Entwicklung der Anwendungssoftware sollte der Programmierer folgende Richtlinien befolgen:

  • Die Taktfrequenz im Embedded-System sollte so gering sein, wie es praktisch sinnvoll ist.
  • Die passendsten Energiespar-Modi sollten eingesetzt werden.
  • Peripherie, die nicht benötigt werden, sollten deaktiviert werden.
  • Der Code sollte für eine hohe Ausführungsgeschwindigkeit optimiert werden.
  • Energieverbrauch, besonders Stromstärke, ist kein digitaler Wert. Anstiegs- und Abfallzeiten sind systemabhängig. Messungen zur Bestätigung der Theorie sind erforderlich.

Selbstverständlich sind dies vereinfachte Richtlinien, doch ist ihre Berücksichtigung bei der Software-Entwicklung der Schlüssel zu einem energieeffizienten Embedded-Design. Wie viel Energie benötigt meine Anwendung? Die Antwort auf diese Frage ist sehr wichtig für Systementwickler von energiesparenden Anwendungen – tatsächlich ist die Energieanalyse ohne dieses Wissen unmöglich – und führt direkt zu der Frage: Wie kann der Energieverbrauch gemessen werden?

Einfache Messgeräte wie Multimeter bieten nur Mittelwerte und vernachlässigen dynamische Effekte. Leider beeinflusst die Auswirkung dieser dynamischen Effekte auf akkubetriebene Systeme die Akkulaufzeit und ist darum kritisch für das System. Anspruchsvollere Messgeräte wie Oszilloskope sind komplexer in der Bedienung und in der Praxis manchmal schwer einzusetzen (z. B. wo soll der Shuntwiderstand angebracht werden, wie soll eine galvanische Isolierung eingerichtet werden). Die Einrichtung einer solchen Messumgebung ist zeitaufwendig und die komplexe Bedienung führt möglicherweise zu fehlerhaften Ergebnissen.

PowerScale wurde für die Analyse und die Optimierung der Energieanforderungen von Embedded-Systemen entwickelt. Zusammen mit dem ULINKpro  ermöglicht es dem Embedded-Entwickler die Identifizierung inkorrekt konfigurierter Peripheriegeräte und erstellt ein Energieprofil der Anwendungssoftware.