Ultra low power: Unterschied zwischen den Versionen

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche
Keine Bearbeitungszusammenfassung
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
'''Ultra low power''' Anwendungen auf Mikrokontrollern.
'''Ultra low power''' Anwendungen auf Mikrokontrollern.
Zunehmend spielt der Stromverbrauch bei der Entwicklung von µC Hardware eine Rolle. Moderne Prozessoren sind immer besser in Lage von Batterien über lange Zeit versorgt zu werden, da es gelingen kann den über eine lange Zeit gemittelten Stromverbrauch unter 1 mA zu halten bis hin zu einem Verbrauch unter 1 µA. Bei Strömen im Umfeld von 1 µA tauchen spezielle Probleme auf, die gesondert betrachtet werden müssen.
Zunehmend spielt der Stromverbrauch bei der Entwicklung von µC Hardware eine Rolle. Moderne Prozessoren sind immer besser in der Lage von Batterien über lange Zeit versorgt zu werden, da es gelingen kann den über eine lange Zeit gemittelten Stromverbrauch unter 1 mA zu halten bis hin zu einem Verbrauch unter 1 µA. Bei Strömen im Umfeld von 1 µA tauchen spezielle Probleme auf, die gesondert betrachtet werden müssen.


=== Tips für die Entwicklung ===
=== Tips für die Entwicklung ===

Version vom 13. April 2005, 11:39 Uhr

Ultra low power Anwendungen auf Mikrokontrollern. Zunehmend spielt der Stromverbrauch bei der Entwicklung von µC Hardware eine Rolle. Moderne Prozessoren sind immer besser in der Lage von Batterien über lange Zeit versorgt zu werden, da es gelingen kann den über eine lange Zeit gemittelten Stromverbrauch unter 1 mA zu halten bis hin zu einem Verbrauch unter 1 µA. Bei Strömen im Umfeld von 1 µA tauchen spezielle Probleme auf, die gesondert betrachtet werden müssen.

Tips für die Entwicklung

  • Den Prozessor finden der einerseits den Anforderungen genügt, aber andererseits im Vergleich den geringsten Stromverbrauch hat. Hier ist zu beobachten daß es einen Trend gibt hin zu immer geringerem Stromverbrauch, daher loht es sich ständig auf dem Laufenden zu bleiben.
  • möglichst niedrigst-mögliche Betriebsspannung wählen
  • möglichst niedrigsten Prozessortakt wählen und beispielsweise bei zeitkritischen Programmteilen dann nur vorübergehend den Takt hochfahren und nach der Berechnung wieder herabsetzen.
  • Den Prozessor möglichst lange in einen sleep - Zustand versetzen und jeweils nur kurz aufwecken.
  • unnötige "NOP" Warteschleifen oder "delay" Routinen vermeiden
  • integrierte zusätzliche Hardware wie AD-Wandler, UART usw nur für den Zeitraum einschalten in dem sie benötigt werden. Möglicherwesie kann Strom gespart werden wenn man bei einer AD-Wandlung den Prozessor in einen sleep Zustand versetzt und ihn über den Interrupt der ausgelöst wird wenn die Wandlung beendet ist, aufwachen lässt.
  • periphere Hardware (externe AD-Wandler, Speicher) vom Prozessor aus entweder direkt oder über Schalttransistoren nur für den Moment des Zugriffs einschalten.
  • manche Kondensatoren die zur Stützung der Betriebsspannung oder aus EMV Gründen zwischen Betriebsspannung und Minus geschaltet sind, können ärgerliche kleine Ströme bewirken, insbesondere Elektrolytkondensatoren, hier manchmal erst nach einer Weile (Alterung).
  • Bei nicht batteriebetriebenen Geräten ist es manchmal so daß die Spannungsregelung alleine 90% des Stromverbrauchs verursacht. In den letzten Jahren gibt es jedoch ein immer größer werdendes Potential an stromsparenden Reglern.

Probleme

  • Das Abschalten von UARTs kann zu einem "break" auf dem Empfangsseite führen. Hier ggf die Leitung auf hi-Pegel hochziehen und den UART-Ausgang als input konfigurieren bis zur nächsten Benutzung.
  • Zur Kontrolle des Stromverbrauchs ist es manchmal schwierig direkt den Strom zu messen. Der Innenwiderstand gängiger Multimeter kann bei kleinen Strommessbereichen so hoch werden, daß die Schaltung Fehlfunktionen zeigt. Dies gilt insbesondere für die kritischen Einschaltmomente. Daher sollte man zunächst im Einschaltmoment das Amperemeter kurzschliessen. Oder man fügt einen 100 Ohm Widerstand (oder 1 KOhm) in die Verbrauchsleitung ein uns schliesst diesen Widerstand in den ersten Sekunden kurz.
  • Manche Hersteller empfehlen im Schlafzustand Leitungen als output zu definieren, dies kann aber zu einem höheren Stromverbrauch führen. Ausprobieren geht über studieren.
  • Das An- und Abschalten von externen Bauteilen, die zur Stützung einen eigenen Kondensator haben führt zu kurzen Blindströmen die nicht genutzt werden können.
  • Manche externen Bauteile funktionieren paradoxerweise auch ohne eigene Stromversorgung, es reicht ein hi - Pegel an einer der Inputs dieser Chip um sie am Laufen zu halten, was zu einem erheblichen Stromverbrauch führen kann. Beispiel: serieller Eingang des FT232BM von FTDI.
  • Oft ist die maximale Betriebsdauer fast nur durch die Selbstentladung der versorenden Batterie bestimmt, dann war allerdings die Entwicklung (bis vielleicht auf die Batteriewahl) perfekt.

geeignete Stromquellen

  • Li-Knopfzellen (z.B. 3V CR2032) . Haben eine sehr flache Entladekurve und hohe Energiedichte, gefürchtet bei Tauchern weil sie dann plötzlich bei Entladeschluss ausfallen.
  • Alkali-Mangan Primärzellen: besser als Zink-Kohle.
  • Nickel-Metallhydrid Akkus. Leider niedrigere Spannung als Primärzellen.
  • kleine Solarzellen gekoppelt an Goldcaps oder Akkuzellen.
  • Goldcaps. Goldcaps haben leider oft hohe Innenwiderstände und die Entladekurve ist natürlich nicht flach.