Wie kann man Arduino nur einschalten, wenn genügend Strom gesammelt wurde?

8

Kürzlich gab es im Christian Science Monitor einen Artikel über den Start eines Satelliten in Crackergröße . Der Artikel besagt, dass der Satellit "Energiespeicher in Kondensatoren und Schaltkreise zum Einschalten des Mikroprozessors hat, wenn die gespeicherte Energie ausreicht, um eine einzige Hochfrequenzemission zu erzeugen - einen digitalen Piepton." Der Strom wird aus einer Solarzelle gesammelt.

Ich bin daran interessiert, ein erdbasiertes Gerät zu entwickeln, das genau das tut, Strom aus einer Solarzelle sammelt und das Gerät nur dann einschaltet, wenn es genug Strom hat. Ich habe kürzlich ein Arduino gekauft , habe aber wenig Erfahrung mit dieser Art von Technik. Anregungen für den Einstieg? Vielen Dank!

Mike Jones
quelle
1
Oh ja, und denken Sie nicht daran, ein Arduino in den Weltraum zu schicken - es sei denn, Sie mögen ionisierende Strahlung.
LeanerRocky
3
@ LeanerRocky, ich liebe ionisierende Strahlung. Senden wir ein Arduino in den Weltraum.
Kortuk

Antworten:

7

Dieser Satellit wird vermutlich "Energy Harvesting" (EH) verwenden, um die von der Solarzelle bereitgestellte Energie in einem Superkondensator zu speichern. Sowohl TI als auch Microchip haben gerade damit begonnen, Evaluierungskits mit EH und einer Solarzelle zur Stromversorgung einer MCU und eines drahtlosen Transceivers bereitzustellen. Advanced Linear Devices stellt das EH300 Energy Harvesting-Modul her , mit dem zwei Superkondensatoren aus verschiedenen Quellen, einschließlich Solarzellen, aufgeladen werden können. Ich habe mit einem experimentiert, und es kann 1,8 V - 3,3 V von sehr niedrigen Spannungsquellen liefern und kann 25 ms für 68 ms liefern, was mehr als genug für eine MCU wie einen MSP430 oder XLP PIC und ist ein Sender mit geringer Leistung. Der EH300 verfügt über zwei Superkondensatoren. Sie kosten ungefähr 34 Pfund, ich habe meine bei Farnell gekauft.

Der Arduino ist für diese Anwendung nicht geeignet, da er bei so niedrigen Spannungen nicht funktioniert und zu viel Strom verbraucht. XLP-PICs verwenden normalerweise 20 nA im Tiefschlafmodus und 50 uA / MHz, wenn sie aktiv sind.

Leon Heller
quelle
3

Sie sollten sich ansehen, wie Sie den AVR in den Ruhemodus versetzen. Im Ruhemodus schaltet sich der Mikrocontroller so weit wie möglich aus, um die Energieeinsparung zu erhöhen. Was Sie tun können, ist, alles, was Sie speichern, die Energie vom Solarpanel in einen der ADC-Pins am Arduino einzuhängen, und wenn dieser einen bestimmten Schwellenwert erreicht, können Sie den Mikrocontroller aufwecken.

Es gibt jedoch ein paar verschiedene Schlafstufen, und je mehr Strom Sie sparen möchten, desto mehr Dinge werden ausgeschaltet. Ich denke, ADC-Pins sind nur mit der höchsten / niedrigsten Energieeinsparungsstufe eingeschaltet. Sie können auch den internen Komparator von avrs verwenden, mit dem Kondensator / der Batterie, in der Sie die Energie speichern, und einer Spannungsquelle für die gewünschte Spannungsschwelle.

Eine letzte Sache ist, dass die Verwendung eines Arduino dafür möglicherweise nicht die beste ist. Selbst im niedrigsten Schlafzustand verbraucht das Arduino ~ 15 mA, während ein AVR-Chip in diesem Zustand nur 0,05 mA verwendet. Das Arduino verfügt über einen linearen Spannungsregler, der immer etwa 10 mA verbraucht, sowie einige weitere zusätzliche Chips. Aus diesem Grund lohnt es sich wahrscheinlich, ein eigenes AVR-Setup zu erstellen.

reportingsjr
quelle
Der ADC arbeitet im Schlafmodus? Meinen Sie analogen Komparator?
Endolith
Ich dachte nicht, dass die Avrs, die Arduino verwendet, interne Komparatoren haben. Nachdem ich zurückgegangen bin und noch einmal nachgesehen habe, habe ich mich geirrt! Ich bin mir nicht sicher, in welchen Schlafzuständen sie ausgeschaltet sind.
Reportingsjr
2

Sie können die Techniken ausprobieren, die von spannungsgesteuerten (Typ I) BEAM-Solarmotoren verwendet werden .

Im Wesentlichen laden Sie einen großen Kondensator auf, bis die Spannung einen Schwellenwert überschreitet, und versorgen Ihren Stromkreis mit Strom, indem Sie ihn entladen. Mit ausreichend großen Kondensatoren sollten Sie in der Lage sein, eine Arduino-Erkältung einzuschalten. Aber Sie werden einige große Kondensatoren benötigen , um es für> 1s zu speisen.

Diese Schaltungen können sehr klein sein. Beispielsweise verwendet diese unten gezeigte Schaltung 2 Transistoren und eine Panasonic 1381x .

Einfacher Typ I Solarmotor mit 1381x

Solarmotoren verwenden andere Techniken, z. B. Hangauslösung. Mehr darüber erfahren Sie hier .

Freiraum
quelle
1

Ich werde dem Vorschlag folgen, die Konzepte hinter BEAM-Robotik und Solarmotoren zu untersuchen. Ich denke, der Solarmotor, der auf dem MAX8212-Chip basiert (von dessen Maxime Sie kostenlose Proben erhalten), ist die am besten geeignete SE für Sie, da er am einfachsten zu konfigurieren ist. Das Arduino ist eine brillante Plattform, um etwas über Mikrocontroller zu lernen, aber es ist ein bisschen leistungshungrig nach Solarenergie. Sobald Sie Arduino verstanden haben, sollten Sie direkt mit Atmel AVR-Chips arbeiten. ATtiny45 ist eine lustige kleine Plattform, mit der man arbeiten kann, und kann recht gut mit einem Solarmotor betrieben werden. Überprüfen Sie hier, was ich mit ihnen gemacht habe

Jim
quelle
0

Ich habe keine Erfahrung mit Arduino und es scheint aus der aktuellen Anzahl von Antworten zu sein, dass es zu viel Strom verbraucht und wahrscheinlich nicht genug Schlafstrom hat, um es zu einer praktikablen Option zu machen. Ein Nanowatt-xlp-PIC wäre der Ausgangspunkt, Sie müssen sich jedoch noch mit der Schnittstelle zwischen Energy Harvester (in diesem Fall Solarzelle) und Mikrochip befassen. Die Leistung der Solarzelle ist im Vergleich zu anderen Formen von Energy Harvestern Niederspannung und die Anforderungen einer PIC + -Schaltung. Die lineare Technologie bietet eine Reihe von selbststartenden Gleichstromwandlern, die auf Energy Harvesting-Anwendungen (z. B. LTC3105) ausgerichtet sind und als solche fungieren können Ihr Stromrichter. Von diesem Punkt an würden Sie das Bild über dem Kondensator / der Batterie anbringen und es dann im Ruhemodus laufen lassen, wenn die Solarzelle die Batterie / den Kondensator auflädt.

Obwohl die Leute angegeben haben, dass das Arduino für diese Art von Dingen zu leistungshungrig ist, können Sie dieses Problem lösen, indem Sie einfach mehr Solarzellen verwenden, bis Sie zu PICs usw. übergehen können, die es Ihnen ermöglichen würden, ein komplexeres System zu entwickeln.

SimonBarker
quelle