Energieeffizienz auf PIC/AVR

Normalerweise mache ich Arduino-Protos, ohne mir Gedanken über die Stromversorgung zu machen - es wird immer Strom geben, also warum sich Sorgen machen. Kürzlich wurde ich gebeten, ein einfaches Gerät zu bauen, das Klicks/Ticks zählt (ein Drehknopf, der ein Klicken macht) und es irgendwo protokolliert. Einfach genug - aber das Problem ist, dass es 3-5 Jahre lang in einem Gerät versteckt mit einer Batterie laufen muss (leicht zu warten - aber lieber nicht) Ich bin auf diese http://interface.khm.de/index.php/ gestoßen lab/experiments/sleep_watchdog_battery/ und die Theorie besagt, dass es bis zu 3 Jahre laufen kann. Es ist fantastisch, weil es fast das ist, was ich will.

Hat jemand ein solches Gerät tatsächlich 3-5 Jahre lang mit einer Batterie betrieben? Bei der Recherche bin ich zu dem Schluss gekommen, dass die Verwendung von Lithium-Polymer die beste Batterie für Langzeitleistung ist – habe ich Recht? und die Verwendung eines einzelnen 700-mAh-LiPos könnte technisch bis zu 5 Jahre dauern. Ist diese Lebensdauer einer Batterie überhaupt realisierbar?

Jetzt werde ich versuchen, dieses Projekt zu ändern, um das Arduino jedes Mal zu wecken, wenn ich ein externes Tick/Klick erhalte, und es wird inkrementiert. Ist es möglich, das Arduino mit einem externen Ereignis zu wecken?

Der zweite Teil ist: Ist es möglich, einfache kleine Ganzzahlen im nichtflüchtigen Speicher von Arduino irgendwie zu speichern, um zu vermeiden, dass sie im RAM bleiben und Strom verbrauchen? oder der einfachste Weg, Daten im nichtflüchtigen Speicher zu speichern.

Ich schätze alle Vorschläge.

Antworten (2)

Mit ein paar Knopfzellen parallel hält man locker so lange durch. Der Arduino kann den Schlafmodus ausführen und bei einem externen Pin-Übergang aufwachen, aber Sie müssen Entprelllogik oder Hardware einbeziehen. Auf geregelten Strom kann man auch verzichten...

Abgesehen davon ist der ATMega328 nicht die beste Wahl, wenn Ihr Hauptziel darin besteht, die Lebensdauer Ihres Projekts zu maximieren. Es gibt eine Vielzahl von Low-End-Mikrocontrollern, die besser für den batteriebetriebenen Betrieb geeignet sind, einschließlich (aber nicht beschränkt auf, da bin ich mir sicher):

  • Die MSP430-Serie von Texas Instruments
  • XLP-Serie von Microchip (wie Sie bemerkt haben)
  • XMega-Mikrocontroller von Atmel (z. B. picoPower)

Ich möchte keinen Flammenkrieg beginnen, aber ich denke, dass der MSP430 weithin als führend auf dem Markt für niedrige Leistungsaufnahme anerkannt ist, da der gesamte Chip (angeblich) von Grund auf mit Blick auf niedrige Leistungsaufnahme konzipiert wurde.

Fantastisch - ich weiß, dass ich den Regler loswerden muss - aber ich habe LP2950 gefunden, der eine Ein / Aus-Logik hat und für Batterieumgebungen ausgelegt ist - aber möglicherweise unnötige Elemente und Kosten hinzufügt. Wenn ich den Regler alle zusammen wegwerfe - können diese Mikrocontroller verarbeiten variable Spannungen, die auftreten, sobald die Batterie zu entladen beginnt.
Das Datenblatt enthält die Mindestspannung.
Danke, ich habe mir die MSP- und XMega- und die Aussage auf der MSP-Seite angesehen: "MSP hält 20 Jahre mit 1 Batterie.." ähm OK, das ist, was ich will :) und 6 Jahre mit 1% aktiv ... mit einer einzigen Knopfzelle! raus hier! Danke, Mann!
@ppumkin: Die Leute denken, dass die MSP 430 aus irgendeinem Grund außergewöhnlich wenig Strom haben. Dies kann daran liegen, dass sie der Masse voraus waren, als sie vor über 10 Jahren zum ersten Mal herauskamen. Heutzutage sind die Low-Power-PICs in dieser Hinsicht genauso gut. Vergleichen Sie einige Datenblätter.
msp430 und XLP PIC sind in Bezug auf die Leistung gleichauf (es hängt von der Anwendung ab, die weniger Leistung hat), aber der msp430 hat eine viel schönere Architektur, gegen die man programmieren kann.
Wenn Sie auf der Suche nach geringem Stromverbrauch sind, vergessen Sie nicht, sich auch Epson-Mikros anzusehen.
Am Ende des Tages haben alle neueren Chips einen Stromverbrauch von 1 MHz im uA-Bereich und arbeiten in mA, wobei nicht nützliche Dinge deaktiviert sind. Jetzt geht es nur noch um den Preis pro Einheit in großen Mengen ... Vielen Dank für die tollen Antworten. Nicht sicher über die Epson-Mikros konnte nichts finden
Einige der PIC-Mikrocontroller sind jetzt auch gut im Stromverbrauch - werfen Sie einen Blick auf ihre "NanoWatt" -Reihe
Die kleineren, einfacheren Mikros neigen dazu, geringere Leckströme zu haben. Schauen Sie sich also die Low-End-Teile im Sortiment an.
@ppumkin, in dieser Anwendung sollten Sie die Firmware so einrichten, dass sie sich fast 100% der Zeit im Ruhemodus befindet. Die 1-MHz-Zahlen sind also nicht so wichtig wie die Schlafzahlen.
youtube.com/watch?v=PO1ICrXMIOc - @vicatcu Ich verstehe, was oyu damit meint, einen Krieg zu beginnen - jede Seite, die ich für die erwähnten Controller besucht habe ... nun, sie sind alle die energieeffizientesten Mikrocontroller der Welt ... heheh. Sogar das Arduino-Forum versucht, Methoden aufzuzeigen, um die Megas in den Schlaf zu versetzen.

Wenn Sie wirklich wenig Strom benötigen, lassen Sie das Arduino fallen und verwenden Sie direkt einen Mikrocontroller. Mit dem richtigen Hardware- und Firmware-Design und dem richtigen Mikro können Sie eine durchschnittliche Stromaufnahme im niedrigen µA- oder sogar pA-Bereich erzielen, je nachdem, wie oft das Gerät aufwacht und wie lange es dabei läuft. Ich hatte ein Projekt, das ein ganzes Jahr lang auf einer CR2032-Knopfzelle lief und alle 10 Sekunden aufwachte und eine RF-Nachricht und eine IR-Signatur übermittelte.

Schauen Sie sich eines der „Nanowatt“- (prätentiöser Marketingbegriff, aber dennoch geringer Stromverbrauch) oder „XLP“-PICs an. Die meisten davon sind mit dem neueren Low-Power-Watchdog ausgestattet, der das Mikro regelmäßig aufwecken kann. Es hört sich so an, als würden Sie in Ihrem Fall bei einem externen Ereignis aufwachen, sodass Ihr Stromverbrauch auf die Selbstentladung der Batterie zurückzuführen sein sollte, wenn nichts los ist.

Sie benötigen keinen nichtflüchtigen Speicher, solange die Stromversorgung kontinuierlich erfolgt. Diese Teile verfügen alle über statisches CMOS-RAM, verbrauchen also im Wesentlichen keinen Strom, nur um den Speicher am Leben zu erhalten.

Brillant - die Verwendung eines LSD-NiMH-Akkus anstelle eines LiPo-Akkus würde also etwa 3-5 Jahre dauern. Wenn Sie sagen, werfen Sie den Arduino weg, was meinen Sie damit? Verwenden Sie einfach den IC alleine - wie im Link - ich kenne den Spannungsregler und den seriellen Anschluss, der Strom verbraucht. Ist es einfach, XLP-Bilder mit einem Arduino als ISP zu programmieren?
@ppumkin: Arduinos sind für Rapid Prototyping oder "Mikrocontroller für Dummies". Für ernsthaftes Engineering müssen Sie darüber hinwegkommen und selbst ein System aufbauen. Nein, PICs werden nicht von Arduinos programmiert. Dies geschieht mit einem PIC-Programmierer wie ICD3, RealIce und anderen.
Angesichts der Menge an Arduino-Projekten da draußen bin ich sicher, dass jemand einen PIC-Programmierer von einem gehackt hat. (Ich sage nicht, dass es eine großartige Idee ist)
chipKits sind PICs, die mit Arduino-Code kompatibel sind. Sie können sie auch mit einem PicKit3 programmieren. Irgendwie ordentlich. http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,892&Cat=18
Verwechseln Sie die PIC-Familien nicht. ChipKit ist ein PIC32-basiertes Kit, und die PIC32s sind MIPS-Prozessoren - so ziemlich alles, was sie mit PICs gemeinsam haben, ist der Hersteller, und sie sind sicherlich nicht die Low-Power-Modelle.