5 Arduino energispar tips som kommer att hålla dina igång i flera dagar

5 Arduino energispar tips som kommer att hålla dina igång i flera dagar

Arduino -brädor har förändrat ansiktet på DIY -teknik. Enkla projekt som att skapa miniatyr -Arduino -trafikljus är perfekta för att lära nybörjare om grundläggande elektronik och programmering.





Arduinos är perfekta för hemmaprojekt och kan användas på resande fot genom att fästa ett batteri på dem. Problemet är att även det tjockaste batteriet kommer att ta slut snabbt av även ett litet Arduino -kort.





ska jag få en stationär eller bärbar dator

Om du verkligen vill att din Arduino ska köra på lång sikt måste du göra några justeringar och ändringar.





1. Arduino Low-Power Software Libraries

Det finns flera programbibliotek tillgängliga som kan ändra din Arduinos strömförbrukning. Genom att skicka Arduino in i en djup sömn under en viss tid kan ström sparas mellan operationerna. Detta är särskilt användbart för mikrokontroller som tar sensoravläsningar i avlägsna områden, till exempel väderstationer, eller avkänner underkretsar för större enheter.

De Lågt effektbibliotek by Github -användare rocketscream är ett exempel på ett lättanvänt bibliotek som är perfekt för att spara lite ström. Tänk på följande kod, baserad på några av bibliotekets exempelkod:



#include 'LowPower.h'
// setup() your sensors/LEDs here
void loop()
{
// This next line powers the arduino down for 8 seconds
//ADC means analogue to digital conversion, and BOD for brown out detection
//both are turned off during the sleep period to save power
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);

//After each sleep, you can instruct the Arduino to carry out its tasks here - for example, take a temperature reading and send it to a server.
}

Denna kod är en bra början. Det minskar inte bara energiförbrukningen med hjälp av redan inbyggda metoder, det stänger av det potentiellt dyra analog till digital konvertering (som kan använda ström även när den är inaktiv) och bruna ut upptäckt som stoppar Arduino -körkoden när dess ingångsspänning blir för låg.

Detta är en enkel men effektiv åtgärd för att börja minska hur mycket ström din Arduino drar. Vi kan gå mycket djupare än så här!





2. Arduino Inbyggt energibesparing

Arduino-programmeringsspråket har sitt eget inbyggda sömn funktionalitet utformad för att hjälpa till med energibesparing. Sömnfunktionen, används tillsammans med avbryta klausuler, låt Arduino vakna igen.

Arduino har specifika stift utformade för att avbryta sömncykeln, och du kan komma åt dem med hjälp av installationsfunktionen:





#define interruptPin 2
void setup()
{
//interrupt pin MUST be Arduino pin 2 or 3 on Uno
//set the pin to pull up mode
pinMode(interruptPin, INPUT_PULLUP);
}

Nu när detta är konfigurerat som ett avbrottsstift kan du säkert skicka din Arduino till vila. Ett förenklat sätt att göra detta är att skapa två små funktioner:

void sendToSleep()
{
//enable sleeping - note this primes sleep, not starts it!
sleep_enable();
//attach the interrupt, specify the pin, the method to call on interrupt,
//and the interrupt conditions, in this case when the pin is pulled low.
attachInterrupt(interruptPin, wakeUpAgain, LOW);
//actually activate sleep mode
sleep_cpu();
//code continues on from here after interrupt
Serial.println('Just awoke.');
}
void wakeUpAgain()
{
//stop sleep mode
sleep_disable();
//clear the interrupt
detachInterrupt(interrputPin);
}

Koden ovan är ett förenklat sätt att skicka din Arduino till viloläge, och du kan väcka den igen genom att ansluta stift 2 till GND stift. Medan Arduino Uno är i viloläge rakar den cirka 11 mA från den totala strömförbrukningen, och om du använder en Pro Mini istället kan du räkna med att sjunka från 25 mA vanlig strömförbrukning till bara 0,57 mA.

Avbrott är ett bra sätt att minska din strömförbrukning, och Kurks -bloggen har några detaljerade inlägg om dem , som hjälper till att avmystifiera avbrott för nybörjare.

3. Sakta ner Arduino -klockhastigheten

Klockhastigheten för din Arduino avgör hur många operationer den kan utföra per sekund. De flesta Arduino -kort körs på en 8 eller 16 MHz processor, även om några av offshoot -korten som Teensy 3.6 har bearbetningshastigheter på upp till 180 MHz! Det är därför många DIY -hackare gillar att använda Teensy -brädor över Arduino i sina DIY -projekt.

All denna processorkraft har en energikostnad, och för många användningsfall är full klockhastighet överkill. Det är här reglering av klockhastigheten genom programvara kan göra skillnad.

Det skulle vara föraktligt av mig att inte varna dig, förändring av klockhastigheten kan orsaka bootloaderproblem och kan lämna dig med en Arduino som du inte kan ladda upp skisser till om den görs fel.

Om du vill försöka ändra din klockhastighet, tillsammans med att göra verktyg i Arduino IDE så att du kan ändra CPU -frekvensen i farten, Pieter P: s detaljerade guide kan hjälpa dig att komma igång.

4. Byt ut Power-Hungry Arduino-komponenter

Arduino Uno är det mest populära brädet för nybörjare, och de flesta Arduino -kit levererar antingen en officiell eller klonmodell. Dess större formfaktor och varmbytbara mikrochips gör den perfekt för experiment och den breda kapaciteten för ingångsspänningar tillsammans med inbyggd spänningskonvertering för 3.3v -komponenter gör att den passar för nästan alla ändamål.

All denna funktionalitet blir inte billig när det gäller strömförbrukning. Med detta i åtanke finns det ett antal saker du kan göra för att fysiskt ändra en Arduino Uno för att spara ström.

Spänningsregulatorn på Arduino Uno orsakar det största enskilda strömavloppet på kortet. Detta är inte särskilt förvånande, eftersom det måste sjunka upp till 7v säkert från ingången till själva kortet. Vissa har försökt komma runt detta genom att ersätta regulatorn med mer effektiva, men det här löser inte riktigt problemet.

Patrick Fenner från DefProc engineering kom med en bra lösning i sitt blogginlägg om Uno energisparstrategier. Genom att helt ersätta spänningsregulatorn med en DC-DC-buckomvandlare lyckades han halvera mikroförbrukningens strömförbrukning.

5. Gör din egen Arduino

Ett säkert sätt att bara använda den kraft som behövs för ditt projekt är att designa en mikrokontroller enligt dina egna specifikationer. Tidigare har vi visat hur du kan bygga din egen Arduino för en bråkdel av kostnaden för en officiell styrelse.

Förutom att ha mycket mer kontroll över storleken och omfattningen på din krets, kan detta minska energiförbrukningen till 15,15mA i vänteläge och så lite som 0,36mA i viloläge. Dessa siffror är hämtade från otroligt detaljerat inlägg av Nick Gammon på hans forum.

Det här inlägget täcker många andra aspekter av Arduinos energibesparing och är en fantastisk resurs att hänvisa till när du försöker pressa ut lite mer tid från en mobil strömförsörjning.

Använd Arduino för stora idéer och ett litet kraftavtryck

När du jobbar på dina första nybörjare Arduino -projekt , energiförbrukning är förmodligen inte ett stort bekymmer.

När dina idéer blir större och kräver mer eftertanke är det väl värt att lära sig sätt att effektivisera ditt upplägg. Mellan att se till att du får rätt Arduino -bräda och ställa in det för att få ut mesta möjliga av det kan du gå långt för att göra verkligt unika och användbara enheter. Lycka till och fortsätt pyssla!

min iphone har fastnat på apple -logotypen
Dela med sig Dela med sig Tweet E-post Här är varför FBI utfärdade en varning för Hive Ransomware

FBI utfärdade en varning om en särskilt otäck stam av ransomware. Här är varför du måste vara särskilt försiktig med Hive -ransomware.

Läs Nästa
Relaterade ämnen
  • DIY
  • Batteri-liv
  • Arduino
  • Hårdvarutips
Om författaren Ian Buckley(216 artiklar publicerade)

Ian Buckley är frilansjournalist, musiker, artist och videoproducent som bor i Berlin, Tyskland. När han inte skriver eller på scenen, pysslar han med DIY -elektronik eller kod i hopp om att bli en galet forskare.

Mer från Ian Buckley

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!

Klicka här för att prenumerera