Energieverbrauch
Die Arduino-Boards verbrauchen im Vergleich zu anderen eingebetteten Systemen mit ähnlichen Funktionen ein gutes Stück Leistung.
Es gibt drei Hauptfaktoren:
Der 5- V-Linearregler NCP1117 ( Datenblatt ) im Arduino UNO R3 ( schematisch ) hat einen Ruhestrom von ca. 6 mA.
Der ATMega328P ( Datenblatt ) verbraucht etwa 5 mA bei 8 MHz und 5 V und ist wahrscheinlich mehr als doppelt so hoch wie bei 16 MHz.
user2973: Der für die USB-Kommunikation verwendete ATMega16U2 verbraucht ebenfalls ungefähr 13 mA.
Auch LEDs und andere Peripheriegeräte verbrauchen Strom. In Ihrer Schaltung verbraucht die LCD-Hintergrundbeleuchtung wahrscheinlich ebenfalls 4 mA.
Bei einem Spannungsabfall von 9V auf 5V über einen Linearregler geht fast die Hälfte der Leistung aufgrund des 4V-Abfalls durch den Regler verloren. Duncan merkt an, dass dies den Stromverbrauch im Ruhezustand von 9 V sowie den Stromverbrauch für jeden mA von 5 V nahezu verdoppelt , da 4/9-Teile des Stroms vom Spannungsregler als Wärme verschwendet werden. Ein effizienter Schaltregler würde 5 V mit wenig Energieverschwendung abgeben und die Stromaufnahme der Batterie effektiv um 4/9 verringern.
Eine Duracell-9V-Batterie ( Datenblatt ) fällt bei einer Stromaufnahme von 50 mA in ca. 7,5 Stunden von 9 V auf 7 V ab. Eine grobe Vermutung ist daher, dass Ihr Stromkreis ungefähr 25 mA zieht, was sich nach der Beschreibung Ihres Stromkreises ungefähr richtig anhört.
Beachten Sie, dass die Lebensdauer der Alkalibatterien in Bezug auf den Strom nicht linear ist. Bei sehr kleinen Strömen (<1 mA) entspricht die Lebensdauer einer Alkaline der einer Lithiumbatterie.
Strom runter
Hier sind einige Tipps, um den Stromverbrauch zu senken:
Regler: Ersetzen Sie den Regler durch einen mit niedrigem Ruhestrom oder noch besser durch einen Schaltregler (auch mit niedrigem Ruhestrom). Ein Schaltregler verwendet Stromimpulse und einige externe Induktivitäten und Kondensatoren, um eine vernünftige konstante Spannungsausgabe zu erzielen. Es wird keine Energie verschwendet wie beim Spannungsabfall des Linearreglers und ein Wirkungsgrad im hohen Bereich von 90% ist möglich.
- Es gibt Abwärtswandler, die die Batterie als Eingang verwenden und direkt an 5 V und GND angeschlossen werden, wobei die VIN und der Regler umgangen werden. Dieser von Pololu geht sowohl hoch als auch runter und hat einen Ruhestrom von 0,1 mA.
- Alternativ können Sie auch 1,5-V-Alkalibatterien und einen Hochsetzsteller verwenden, um die Spannung auf 5 V zu bringen (z. B. dieses Produkt von Sparkfun). Es scheint, dass Aufwärtswandler häufiger auf Lager sind.
- Schließlich können Sie eine wiederaufladbare Lithiumbatterie mit Ladeschild kaufen. Dieser Vorteil ist, dass Sie keine neuen Batterien kaufen müssen, und für ein kleines bisschen größer als eine 9-V-Batterie hat die Lithium-Batterie eine viel größere Kapazität. Ein wirklich cooles Produkt ist das wasserdichte seeeduino Stalker-Kit , das eine Ladeschaltung, einen Akku, ein Solarpanel und andere Extras enthält.
ATMega328P: Anstatt mit delay
für Timing und Spinnen in loop
endlos warten , dass etwas geschieht, neu schreiben Ihren Code , so dass es in den Schlaf geht in zwischen Sensor liest, usw. Es gibt ein paar Low - Power - Bibliotheken gibt , die den Watchdog - Timer verwenden für periodisches Aufwachen aus dem Schlaf, was praktisch ist. Sie können den Stromverbrauch des ATMega328P im Ruhezustand unter 0,1 mA halten.
LCD: Schalten Sie die Hintergrundbeleuchtung oder sogar das gesamte LCD aus. Fügen Sie dem Design eine Schaltfläche hinzu, mit der der Benutzer das LCD aktivieren und nach einer festgelegten Inaktivitätsdauer ausschalten kann.
Peripheriegeräte: Die meisten Peripheriegeräte-Chips verfügen auch über einen Ruhezustand, der den Stromverbrauch drastisch senkt. Entfernen Sie nicht benötigte Betriebs-LEDs und andere Anzeigen.
ATMegu16U2: user2973 comments Es sieht so aus, als ob dieser Chip ziemlich leistungshungrig ist ( user2973 ). Es könnte entfernt werden, um Energie zu sparen und stattdessen nur den UART zu verwenden, aber das scheint übertrieben. Es gibt Arduino Pro-Boards, die nur die nackten Knochen von Arduino sind, ohne dass die USB-Schnittstelle anstelle der UNO verwendet werden könnte.
Batterien: Andere Alkalizellen haben eine viel größere Kapazität. Zum Beispiel hat eine 1,5 V AA über 2000 mAh für niedrige Ströme. Die Verwendung von AA-Zellen und eines Aufwärtswandlers kann die Zeit bis zum Batteriewechsel verlängern. Verwenden Sie D-Zellen (16000mAh) und es wird eine Weile laufen. : D
Zusammenfassung
Mit einer geeigneten Stromversorgung und Kodierung können Sie eine Batterie mit einer angemessenen Lebensdauer ausstatten. Unter Verwendung der obigen Prinzipien habe ich ein Arduino-Derivat-Board hergestellt, das einige Sensoren misst und die Messwerte jede halbe Sekunde auf einer SD-Karte speichert. Es kann mit 2 AA-Batterien ungefähr 4 Monate dauern, so dass es definitiv möglich ist, einen niedrigen Stromverbrauch zu haben und im Arduino-Ökosystem zu bleiben.
Der Chip, den ich für den geringen Stromverbrauch in meinem Board verwendet habe, ist der LTC3525-3.3V. Es nimmt eine Eingangsspannung von nur 0,8 V auf und erhöht diese auf 3,3 V. Eine 5-V-Version ist ebenfalls verfügbar. Ich habe eine Platine für diesen Chip entworfen, da es keine vorgefertigten Ausbrüche gab, und im Datenblatt sind Referenzdesigns angegeben. Das Hauptkriterium für die Wahl dieses Chips war, dass er bei sehr geringen Strömen immer noch einen hohen Wirkungsgrad aufweist. Einige andere Wandler benötigen eine geringe Mindeststromaufnahme.
Der größte Stromverbraucher auf dem Board war die Micro-SD-Karte. Sie kann je nach Hersteller zwischen 0,1 mA und 1,5 mA Leerlaufstrom variieren. Ich habe festgestellt, dass Verbatim- und Lexar-Karten am wenigsten Strom verbrauchen. Ich werde diese EE.SE-Frage mit den Ergebnissen meiner Micro-SD-Card-Stromverbrauchstests auf den neuesten Stand bringen.