5 Arduino strømsparingstips som vil holde deg kjører for dager
Arduino boards har endret ansiktet av DIY teknologi. Enkle prosjekter som å lage miniatyr Arduino trafikklys er perfekte for undervisning nybegynnere om grunnleggende elektronikk og programmering.
Arduinos er perfekte for hjemmeprojekter, og kan brukes på farten ved å feste en batteripakke til dem. Problemet er at selv det chunkiest-batteriet vil bli kjørt ned raskt med en liten Arduino-brett.
Hvis du virkelig vil at Arduino skal løpe for lang tid, må du gjøre noen tilpasninger og endringer.
1. Arduino Low-Power-programvarebiblioteker
Det finnes flere programvarebiblioteker som kan endre din Arduino strømforbruk. Ved å sende Arduino til en dyp søvn i en viss tid kan strøm spares mellom operasjonene. Dette er spesielt nyttig for mikrokontrollere som tar sensoravlesninger i fjerntliggende områder, for eksempel værstasjoner, eller sensing underkretser for større enheter.
Low-Power-biblioteket av Github bruker rocketscream er et eksempel på et brukervennlig bibliotek som er perfekt for å spare litt strøm. Vurder følgende kode, basert på noen av bibliotekets eksempelkode:
#include "LowPower.h" // setup () dine sensorer / lysdioder her tomromsløyfe () // Denne neste linjen styrer arduino ned i 8 sekunder // ADC betyr analog til digital konvertering og BOD for brun ut deteksjon / / begge er slått av i hvileperioden for å spare strøm LowPower.powerDown (SLEEP_8S, ADC_OFF, BOD_OFF); // Etter hver søvn kan du instruere Arduino til å utføre oppgavene her - for eksempel ta en temperaturavlesning og send den til en server.
Denne koden er en god start. Ikke bare faller strømforbruket ved hjelp av allerede innebygde metoder, det slår av det potensielt kostbare analog til digital konvertering (som kan bruke strøm selv når tomgang) og brun ut deteksjon som stopper Arduino-kjørekoden når inngangsspenningen blir for lav.
Dette er et enkelt, men effektivt mål for å begynne å kutte ned hvor mye kraft Arduino trekker. Vi kan gå mye dypere enn dette skjønt!
2. Arduino innebygd strømsparing
Arduino programmeringsspråk har sin egen innebygde sove funksjonalitet utviklet for å hjelpe med strømsparing. Den sovende funksjonen, brukes sammen med avbryte klausuler, la Arduino våkne igjen.
Arduino har spesifikke pinner designet for å avbryte søvnsyklusen, og du kan få tilgang til dem ved hjelp av oppsettfunksjonen:
#define interruptPin 2 void setup () // avbryte pin må være Arduino pin 2 eller 3 på Uno // sett pin for å trekke opp modus pinMode (interruptPin, INPUT_PULLUP);
Nå som dette er satt opp som en avbruddstast, kan du trygt gå om å sende din Arduino til å sove. En forenklet måte å gjøre dette på er å skape to små funksjoner:
void sendToSleep () // gjør det mulig å sove - vær oppmerksom på at denne primene sover, ikke starter den! sleep_enable (); // Vedlegg avbryt, spesifiser pin, metode for å ringe på avbrudd, // og avbruddstilstandene, i dette tilfellet når tappen trekkes lavt. attachInterrupt (interruptPin, wakeUpAgain, LOW); // egentlig aktiver søvnmodus sleep_cpu (); // koden fortsetter på fra her etter avbryt Serial.println ("Just woke."); void wakeUpAgain () // stop sleep mode sleep_disable (); // klare avbruddsavbruddInterrupt (interrputPin);
Koden ovenfor er en forenklet måte å sende din Arduino til sovemodus, og du kan vekke den opp igjen ved å koble til pin 2 til GND tappen. Mens Arduino Uno er i dvalemodus, barberer den rundt 11mA av det totale kraftuttaket, og hvis du bruker en Pro Mini i stedet, kan du forvente å gå fra 25mA vanlig strømforbruk til bare 0,57mA.
Avbrudd er en fin måte å få strømforbruket ned, og The Kurks blogger har noen detaljerte innlegg om dem, noe som bidrar til å demystifisere avbrudd for nybegynnere.
3. Senk Arduino Clock Speed
Klokkefrekvensen til din Arduino bestemmer hvor mange operasjoner den kan utføre per sekund. De fleste Arduino-kortene kjører på en 8 eller 16 MHz-prosessor, selv om noen av offshoot-kortene som Teensy 3.6 har en hastighet på opptil 180 MHz! Dette er grunnen til at mange DIY-hackere liker å bruke Teensy boards 7 Kule prosjekter du kan bygge med en Teensy 7 Kule prosjekter du kan bygge med en Teensy Teensy er et flott alternativ til Arduino, og disse fantastiske prosjektene viser bare hva du kan gjøre med en Teensy ! Les mer om Arduino i deres DIY-prosjekter.
Alt denne prosessorkraften kommer til en strømkostnad, og for mange brukstilfeller som bruker hele klokkefrekvensen er overkill. Dette er hvor regulering av klokkehastigheten gjennom programvare kan gjøre en forskjell.
Det ville være min mening om ikke å advare deg, Hvis du endrer klokkens hastighet, kan det oppstå problemer med opplastingen og kan forlate deg med en Arduino du kan ikke laste opp skisser til, hvis gjort feil.
Hvis du ønsker å prøve å endre klokkehastigheten, sammen med å lage verktøy i Arduino IDE slik at du kan endre CPU-frekvensen på fly, kan Pieter Ps detaljerte veiledning hjelpe deg med å komme i gang.
4. Skift Power-Hungry Arduino Components
Arduino Uno er det mest populære styret for nybegynnere, og de fleste Arduino-settene leverer enten en offisiell eller klonmodell. Dens større formfaktor og hot swappable mikrochips gjør den perfekt til eksperimentering, og dens brede kapasitet for inngangspenninger sammen med ombordspenningsomforming for 3.3v-komponenter gjør den egnet til nesten alle formål.
Alt denne funksjonaliteten kommer ikke billig når det gjelder strømforbruk. Med dette i tankene er det en rekke ting du kan gjøre for å fysisk endre en Arduino Uno for å spare strøm.
Spenningsregulatoren på Arduino Uno forårsaker den største strømforsyningen på brettet. Dette er ikke spesielt overraskende, da det må slippe opptil 7v trygt fra strømforsyningen til brettet selv. Noen har forsøkt å komme seg rundt dette ved å erstatte regulatoren med mer effektive, men dette løser ikke problemet.
Patrick Fenner av DefProc engineering kom opp med en flott løsning i hans bloggpost som dekker Uno strømsparingsstrategier. Ved å erstatte spenningsregulatoren helt med en DC-DC-buck-omformer, klarte han å halvparten av mikrokontrollerens strømforbruk.
5. Lag din egen Arduino
En sikker brann måte å bare bruke strømmen som trengs for prosjektet ditt, er å designe en mikrokontroller til dine egne spesifikasjoner. Tidligere har vi vist hvordan du kan bygge din egen Arduino Ikke bruk penger på en Arduino - Bygg din egen for mye mindre Ikke bruk penger på en Arduino - Bygg din egen for mye mindre Jeg elsker mine Arduinoer. På et hvilket som helst tidspunkt har jeg ganske mange prosjekter på farten - prototyping er bare så lett med dem. Men noen ganger vil jeg holde prosjektet funksjonelt uten å kjøpe ... Les mer for en brøkdel av kostnaden for et offisielt styre.
I tillegg til å ha mye mer kontroll over størrelsen og omfanget av kretsen, kan dette gi strømforbruk ned til 15,15 mA i standby og så lite som 0,36 mA i dvalemodus. Disse tallene er hentet fra det utrolig detaljerte innlegget fra Nick Gammon på hans forum.
Dette innlegget dekker mange andre aspekter ved Arduino strømsparing, og er en fantastisk ressurs å henvise til når man prøver å presse litt mer tid ut av en mobil strømforsyning.
Bruk Arduino for store ideer og et lite strømfotspor
Når du jobber med dine første nybegynnere Arduino-prosjekter, er strømforbruket sannsynligvis ikke for mye av en bekymring.
Etter hvert som ideene dine blir større og krever mer tanke, er det vel verdt å lære måter å effektivisere oppsettet ditt. Mellom sørg for at du får riktig Arduino-bord Arduino Kjøpsguide: Hvilket styre bør du få? Arduino Kjøpsguide: Hvilket styre bør du få? Det er så mange forskjellige typer Arduino boards der ute, du vil bli tilgitt for å være forvirret. Hvilken bør du kjøpe for prosjektet ditt? La oss hjelpe, med denne Arduino kjøpesiden! Les mer og sett opp for å få mest mulig ut av det, du kan gå langt for å lage virkelig unike og nyttige enheter. Lykke til og fortsett å tinkere!
Utforsk mer om: Arduino, batterilevetid, maskinvare tips.