Consumo di energia
Le schede Arduino consumano abbastanza energia rispetto ad altri sistemi embedded con funzionalità simili.
Esistono tre fattori principali:
Il regolatore lineare 5V NCP1117 ( scheda tecnica ) nell'Arduino UNO R3 ( schematico ) ha una corrente di riposo di circa 6 mA.
ATMega328P ( scheda tecnica) assorbe circa 5 mA a 8 MHz e 5 V, e probabilmente più del doppio rispetto a 16 MHz.
user2973: ATMega16U2 utilizzato per le comunicazioni USB assorbe anche circa 13 mA.
Anche i LED e le altre periferiche assorbono corrente. Nel tuo circuito, probabilmente anche la retroilluminazione LCD sta disegnando 4mA.
Quando si fa cadere da 9 V a 5 V tramite un regolatore lineare, quasi la metà della potenza viene persa dal regolatore a causa della sua caduta di 4 V. Duncan osserva che ciò raddoppia quasi l' assorbimento di corrente a riposo da 9 V e la potenza necessaria per ogni mA di 5 V, poiché i 4/9 della potenza vengono sprecati come calore dal regolatore di tensione. Un efficiente regolatore di commutazione emetterebbe 5 V con poca energia sprecata, riducendo efficacemente l'assorbimento di corrente visto dalla batteria di 4 / 9s.
Una batteria Duracell da 9 V ( scheda tecnica ) scende da 9 V a 7 V in circa 7,5 ore con un assorbimento di corrente di 50 mA. Pertanto, un'ipotesi approssimativa è che il tuo circuito assorba circa 25 mA, che suona proprio sulla base della descrizione del tuo circuito.
Nota, la durata della batteria alcalina non è lineare rispetto alla corrente. Per correnti molto piccole (<1mA) la durata di una batteria alcalina si avvicina a quella di una batteria al litio.
Abbassarsi
Ecco alcuni suggerimenti per ridurre il consumo attuale:
Regolatore: sostituire il regolatore con uno con una corrente di riposo bassa o, meglio ancora, un regolatore di commutazione (anche con una corrente di riposo bassa). Un regolatore di commutazione utilizza "impulsi" di corrente e alcuni induttori e condensatori esterni per fornire un'uscita di tensione stabile e ragionevole. Non spreca energia come con la caduta di tensione del regolatore lineare e l'efficienza nell'alto 90% è possibile.
- Ci sono convertitori buck (step down) che prendono la batteria come input, quindi si collegano direttamente a 5V e GND, bypassando VIN e il regolatore. Questo di Pololu si muove su e giù e ha una corrente di quiescenza di 0,1 mA.
- In alternativa, è possibile utilizzare alcune batterie alcaline da 1,5 V e un convertitore boost (step up) per ottenere una tensione fino a 5 V (ad esempio questo prodotto di Sparkfun). Sembra che i convertitori boost siano più comunemente forniti.
- Infine, è possibile acquistare una batteria al litio ricaricabile con schermo di ricarica. Questo vantaggio non è quello di dover acquistare nuove batterie, e per un po 'più grande di una batteria da 9 V quella al litio ha una capacità molto maggiore. Un prodotto davvero interessante è il kit impermeabile stalker seeeduino che include un circuito di ricarica, batteria, pannello solare e altri gadget.
ATMega328P: Invece di utilizzare delay
per il cronometraggio e la rotazione in loop
attesa infinita di qualcosa, riscrivi il codice in modo che vada a dormire tra le letture del sensore, ecc. Ci sono alcune librerie a bassa potenza là fuori che usano il timer watchdog per sveglia periodica dal sonno che sono utili. Durante il sonno è possibile ottenere un consumo attuale di ATMega328P inferiore a 0,1 mA.
LCD: disattiva la retroilluminazione o persino l'intero LCD. Aggiungi un pulsante al design che l'utente può premere per attivare il display LCD e farlo spegnere dopo un determinato periodo di inattività.
Periferiche: la maggior parte dei chip periferici ha anche una modalità di sospensione che riduce drasticamente il consumo di energia. Rimuovere i LED di alimentazione e altri indicatori non necessari.
ATMegu16U2: commenti di user2973 Sembra che questo chip abbia molta fame di energia ( user2973 ). Potrebbe essere rimosso per risparmiare energia e utilizzare invece l'UART, ma sembra eccessivo. Ci sono schede Arduino Pro che sono solo le ossa nude di Arduino senza l'interfaccia USB che potrebbero essere utilizzate al posto di UNO.
Batterie: altre celle alcaline hanno una capacità molto maggiore. Ad esempio, un AA da 1,5 V ha oltre 2000 mAh per basse correnti. L'uso di celle AA più un convertitore boost può aumentare il tempo prima della sostituzione della batteria. Usa celle D (16000 mAh) e funzionerà per un bel po '. : D
Sommario
Con l'alimentatore e la codifica appropriati è possibile ottenere una durata ragionevole della batteria. Utilizzando i principi di cui sopra, ho creato una scheda derivata Arduino che misura alcuni sensori e memorizza le letture su una scheda SD ogni mezzo secondo. Può durare per circa 4 mesi con 2 batterie AA, quindi è sicuramente possibile avere poca energia e rimanere nell'ecosistema Arduino.
Il chip che ho usato per la bassa potenza nella mia scheda è l'LTC3525-3.3V. Prende una tensione di ingresso di soli 0,8 V e aumenta fino a 3,3 V ed è disponibile anche una versione a 5 V. Ho progettato un PCB per questo chip in quanto non vi era alcuna rottura già pronta e nel foglio dati ci sono progetti di riferimento. Il criterio principale per la scelta di questo chip era che aveva ancora un'alta efficienza a correnti molto basse. Alcuni altri convertitori necessitano di un piccolo assorbimento di corrente minimo.
Il più grande consumatore di energia sulla scheda ha finito per essere la scheda micro SD. Può variare tra 0,1 mA e 1,5 mA di corrente inattiva a seconda del produttore. Ho scoperto che le carte Verbatim e Lexar consumano la minima quantità di energia. Farò questa domanda EE.SE aggiornata con i risultati dei test di consumo energetico della mia scheda micro SD.