5 Arduino-Tipps zum Energiesparen, mit denen Sie tagelang laufen können
Arduino-Boards haben das Gesicht der DIY-Technologie verändert. Einfache Projekte wie das Erstellen von Miniatur-Arduino-Ampeln sind ideal für Anfänger, die sich mit der grundlegenden Elektronik und Programmierung vertraut machen.
Arduinos eignen sich perfekt für Heimprojekte und können unterwegs verwendet werden, indem ein Akkupack daran befestigt wird. Das Problem ist, dass selbst die gröbste Batterie durch ein kleines Arduino-Board schnell leer wird.
Wenn Sie wirklich wollen, dass Ihr Arduino auf lange Sicht läuft, müssen Sie einige Änderungen vornehmen.
1. Arduino Low-Power-Softwarebibliotheken
Es gibt verschiedene Softwarebibliotheken, die den Stromverbrauch Ihres Arduino ändern können. Wenn Sie den Arduino für eine bestimmte Zeit in einen tiefen Schlaf versetzen, kann zwischen den Vorgängen Energie gespart werden. Dies ist besonders nützlich für Mikrocontroller, die Sensorablesungen in abgelegenen Gebieten wie Wetterstationen durchführen oder Subkreise für größere Geräte erfassen.
Die Low-Power-Library von Github-Benutzer rocketscream ist ein Beispiel für eine benutzerfreundliche Library, die sich hervorragend zum Energiesparen eignet. Betrachten Sie den folgenden Code, der auf einigen Beispielcode der Bibliothek basiert:
#include "LowPower.h" // setup () Ihre Sensoren / LEDs hier void loop () // Diese nächste Zeile schaltet den Arduino für 8 Sekunden aus. // ADC bedeutet Analog-Digital-Wandlung und BOD für Brownout-Erkennung / / Beide sind während der Ruhezeit ausgeschaltet, um Energie zu sparen. LowPower.powerDown (SLEEP_8S, ADC_OFF, BOD_OFF); // Nach jedem Schlaf können Sie das Arduino anweisen, hier seine Aufgaben auszuführen. Nehmen Sie zum Beispiel eine Temperaturmessung vor und senden Sie sie an einen Server.
Dieser Code ist ein guter Anfang. Es senkt nicht nur den Stromverbrauch mit bereits integrierten Methoden, sondern schaltet auch die potenziell kostspieligen aus Analog-Digital-Umwandlung (die auch im Leerlauf Strom verbrauchen kann) und die Brownout-Erkennung Dadurch wird der Arduino-Betriebscode angehalten, wenn die Eingangsspannung zu niedrig wird.
Dies ist eine einfache, aber effektive Maßnahme, um die Leistung Ihres Arduino zu reduzieren. Wir können aber noch viel tiefer gehen!
2. Arduino Built-In Power Saving
Die Programmiersprache Arduino verfügt über eine eigene integrierte Sprache schlafen Funktionalität zur Energieeinsparung. Die Schlaffunktion, die zusammen mit verwendet wird unterbrechen Klauseln, lassen Sie den Arduino wieder aufwachen.
Arduino verfügt über spezielle Pins, um den Schlafzyklus zu unterbrechen. Sie können über die Setup-Funktion darauf zugreifen:
#define interruptPin 2 void setup () // Interrupt-Pin MUSS Arduino Pin 2 oder 3 auf Uno sein // Setzen Sie den Pin in den Pull-Modus. pinMode (interruptPin, INPUT_PULLUP);
Jetzt, da dies als Interrupt-Pin eingerichtet ist, können Sie Ihren Arduino in den Ruhezustand versetzen. Eine vereinfachte Methode besteht darin, zwei kleine Funktionen zu erstellen:
void sendToSleep () // aktivieren Sie den Schlafmodus - Beachten Sie, dass der Schlaf aktiviert wird, anstatt ihn zu starten! sleep_enable (); // den Interrupt anbringen, den Pin angeben, die Methode, die bei Interrupt aufgerufen werden soll, // und die Interruptbedingungen, in diesem Fall, wenn der Pin nach unten gezogen wird. attachInterrupt (interruptPin, wakeUpAgain, LOW); // aktiviere den Schlafmodus sleep_cpu (); // Der Code wird von hier nach dem Interrupt fortgesetzt. Serial.println ("Just awoke."); void wakeUpAgain () // Schlafmodus stoppen sleep_disable (); // lösche den Interrupt detachInterrupt (interrputPin);
Der obige Code ist eine vereinfachte Methode, um Ihr Arduino in den Schlafmodus zu versetzen, und Sie können es wieder aktivieren, indem Sie eine Verbindung herstellen Pin 2 zum GND Stift. Wenn sich der Arduino Uno im Schlafmodus befindet, verringert sich die Stromaufnahme um 11 mA, und wenn Sie stattdessen einen Pro Mini verwenden, können Sie davon ausgehen, dass der reguläre Stromverbrauch von 25 mA auf 0,57 mA sinkt.
Interrupts sind eine großartige Möglichkeit, um den Stromverbrauch zu senken, und der Kurks-Blog enthält einige detaillierte Beiträge, die dazu beitragen, Interrupts für Anfänger zu demystifizieren.
3. Verlangsamen Sie die Arduino Clock Speed
Die Taktfrequenz Ihres Arduino bestimmt, wie viele Operationen pro Sekunde ausgeführt werden können. Die meisten Arduino-Boards laufen auf einem 8- oder 16-MHz-Prozessor, obwohl einige der Ableger-Boards, wie der Teensy 3.6, Verarbeitungsgeschwindigkeiten von bis zu 180 MHz besitzen! Deshalb verwenden viele DIY-Hacker gerne Teensy-Boards. 7 coole Projekte, die Sie mit einem Teensy bauen können 7 coole Projekte, die Sie mit einem Teensy bauen können Teensy ist eine großartige Alternative zu Arduino. Diese großartigen Projekte zeigen, was Sie mit einem Teensy machen können ! Lesen Sie mehr über Arduino in ihren DIY-Projekten.
All diese Verarbeitungsleistung ist mit Kosten verbunden, und für viele Anwendungsfälle, bei denen die volle Taktrate verwendet wird, ist der Overkill. Hier kann die Einstellung der Taktrate durch Software einen Unterschied machen.
Es wäre ein Verdammnis von mir, dich nicht zu warnen, Das Ändern der Taktrate kann zu Problemen mit dem Bootloader führen und kann Sie mit einem Arduino belassen, zu dem Sie keine Skizzen hochladen können, wenn dies falsch gemacht wird.
Wenn Sie die Taktfrequenz ändern möchten und Werkzeuge in der Arduino-IDE erstellen, mit denen Sie die CPU-Frequenz im laufenden Betrieb ändern können, können Sie mit der detaillierten Anleitung von Pieter P den Einstieg erleichtern.
4. Ersetzen Sie die leistungshungrigen Arduino-Komponenten
Das Arduino Uno ist das beliebteste Board für Anfänger. Die meisten Arduino-Kits bieten entweder ein offizielles oder ein Klonmodell. Dank seines größeren Formfaktors und Hot-Swap-fähigen Mikrochips ist das Gerät ideal für Experimente geeignet. Dank seiner großen Kapazität für Eingangsspannungen und der integrierten Spannungsumwandlung für 3,3-V-Komponenten ist das Gerät für nahezu jeden Zweck geeignet.
All diese Funktionen sind im Hinblick auf den Stromverbrauch nicht billig. In diesem Sinne gibt es eine Reihe von Möglichkeiten, um einen Arduino Uno physisch zu verändern, um Energie zu sparen.
Der Spannungsregler am Arduino Uno verursacht den größten Stromverbrauch auf der Platine. Dies ist nicht besonders überraschend, da es sicher bis zu 7 V von der Eingangsstromversorgung der Platine selbst fallen muss. Einige haben versucht, dies zu umgehen, indem sie den Regler durch effizientere Regler ersetzt haben, aber das löst das Problem nicht wirklich.
Patrick Fenner von DefProc Engineering stellte in seinem Blogpost eine großartige Lösung über Energiesparstrategien von Uno vor. Durch den Ersatz des Spannungsreglers durch einen DC-DC-Buck-Wandler konnte er den Stromverbrauch des Mikrocontrollers halbieren.
5. Machen Sie Ihr eigenes Arduino
Ein sicherer Weg, um nur die für Ihr Projekt erforderliche Energie zu nutzen, besteht darin, einen Mikrocontroller nach Ihren eigenen Spezifikationen zu entwerfen. In der Vergangenheit haben wir gezeigt, wie Sie Ihr eigenes Arduino bauen können. Geben Sie kein Geld für ein Arduino aus - Bauen Sie Ihr eigenes für viel weniger aus Geben Sie kein Geld für ein Arduino aus - bauen Sie Ihr eigenes für viel weniger Ich liebe meine Arduinos. Zu jeder Zeit habe ich einige Projekte im Gange - Prototyping ist mit ihnen so einfach. Aber manchmal möchte ich das Projekt funktionsfähig halten, ohne… Read More zu einem Bruchteil der Kosten eines offiziellen Vorstands zu kaufen.
Neben der größeren Kontrolle über die Größe und den Umfang Ihrer Schaltung kann der Stromverbrauch im Standby-Modus auf 15,15 mA und im Schlafmodus auf nur 0,36 mA reduziert werden. Diese Zahlen stammen aus dem unglaublich detaillierten Beitrag von Nick Gammon in seinem Forum.
Dieser Beitrag behandelt viele andere Aspekte des Energiesparens von Arduino und ist eine fantastische Ressource, auf die Sie sich beziehen sollten, wenn Sie versuchen, ein wenig mehr Zeit aus einer mobilen Stromversorgung zu ziehen.
Verwenden Sie Arduino für große Ideen und einen kleinen Power Footprint
Wenn Sie an Ihren ersten Arduino-Anfängerprojekten arbeiten, ist der Energieverbrauch wahrscheinlich kein zu großes Problem.
Wenn Ihre Ideen größer werden und mehr Nachdenken erfordern, lohnt es sich, Wege zu finden, um Ihre Einrichtung zu rationalisieren. Wenn Sie sich vergewissern, dass Sie das richtige Arduino-Board erhalten Arduino Buying Guide: Welches Board sollten Sie bekommen? Arduino Buying Guide: Welches Board sollten Sie bekommen? Es gibt so viele verschiedene Arten von Arduino-Boards, dass Sie sich verwechseln könnten. Was solltest du für dein Projekt kaufen? Lassen Sie uns mit diesem Arduino Einkaufsführer helfen! Lesen Sie mehr und richten Sie es ein, um das Beste aus ihm herauszuholen. Sie können einen großen Beitrag dazu leisten, wirklich einzigartige und nützliche Geräte herzustellen. Viel Glück und basteln!
Erfahren Sie mehr über: Arduino, Akkulaufzeit, Hardware-Tipps.