Advertentie

Arduino-borden hebben het gezicht van doe-het-zelftechnologie veranderd. Simpele projecten zoals creëren miniatuur Arduino verkeerslichten zijn perfect om beginners te leren over basiselektronica en programmeren.

Arduino's zijn perfect voor thuisprojecten en kunnen onderweg worden gebruikt door er een batterij aan te bevestigen. Het probleem is dat zelfs de dikste batterij snel leeg zal raken door zelfs een klein Arduino-bord.

Als je echt wilt dat je Arduino voor de lange termijn werkt, zul je wat aanpassingen en veranderingen moeten aanbrengen.

1. Arduino Low-Power softwarebibliotheken

Er zijn verschillende softwarebibliotheken beschikbaar die het stroomverbruik van uw Arduino kunnen veranderen. Door de Arduino voor een bepaalde tijd in een diepe slaap te zetten, kan tussen de bewerkingen energie worden bespaard. Dit is met name handig voor microcontrollers die sensormetingen uitvoeren in afgelegen gebieden zoals weerstations of subcircuits detecteren voor grotere apparaten.

De Low-Power bibliotheek

instagram viewer
door Github user rocketscream is een voorbeeld van een eenvoudig te gebruiken bibliotheek die perfect is om wat energie te besparen. Overweeg de volgende code, gebaseerd op enkele van de voorbeeldcode van de bibliotheek:

#include "LowPower.h" // setup () uw sensoren / LED's hier ongeldige lus () {// Deze volgende regel schakelt de Arduino 8 seconden lang uit // ADC betekent analoog naar digitaal conversie en BOD voor bruin out detectie // beide zijn uitgeschakeld tijdens de slaapperiode om energie te besparen LowPower.powerDown (SLEEP_8S, ADC_OFF, BOD_OFF); // Na elke slaap kunt u de Arduino instrueren om zijn taken hier uit te voeren - bijvoorbeeld een temperatuurmeting doen en naar een server sturen. }

Deze code is een goed begin. Het vermindert niet alleen het stroomverbruik met behulp van reeds ingebouwde methoden, het schakelt ook de mogelijk dure uit analoog naar digitaal conversie (die zelfs in rust stroom kan gebruiken) en de bruin uit detectie waardoor de Arduino-code wordt gestopt wanneer de ingangsspanning te laag wordt.

Dit is een eenvoudige maar effectieve maatregel om te beginnen met het verminderen van het vermogen dat uw Arduino trekt. We kunnen echter veel dieper gaan dan dit!

2. Arduino Ingebouwde energiebesparing

De programmeertaal Arduino heeft zijn eigen ingebouwde slaap functionaliteit ontworpen om te helpen met energiebesparing. De slaapfunctie, gebruikt in combinatie met onderbreken clausules, laat de Arduino weer wakker worden.

Arduino heeft specifieke pinnen die zijn ontworpen om de slaapcyclus te onderbreken en je kunt ze openen met behulp van de setup-functie:

#define interruptPin 2 ongeldige setup () {// pin onderbreken MOET Arduino pin 2 of 3 zijn op Uno // stel de pin in om de modus pinMode op te halen (interruptPin, INPUT_PULLUP); }

Nu dit is ingesteld als een interrupt-pin, kunt u uw Arduino veilig in slaap brengen. Een vereenvoudigde manier om dit te doen is door twee kleine functies te creëren:

ongeldig sendToSleep () {// slaapt mogelijk maken - let op dat deze slaap goed is, niet start! sleep_enable (); // voeg de interrupt toe, specificeer de pin, de methode om interrupt aan te roepen, // en de interruptvoorwaarden, in dit geval wanneer de pin laag wordt getrokken. attachInterrupt (interruptPin, wakeUpAgain, LOW); // activeer eigenlijk de slaapstand sleep_cpu (); // code gaat vanaf hier verder na het onderbreken van Serial.println ("Just awoke."); } nietig wakeUpAgain () {// stop slaapmodus sleep_disable (); // wis de interrupt detachInterrupt (interrputPin); }

De bovenstaande code is een vereenvoudigde manier om je Arduino in de slaapstand te zetten en je kunt hem weer wakker maken door verbinding te maken pin 2 naar de GND pin. Terwijl de Arduino Uno in de slaapstand staat, scheert hij ongeveer 11 mA af van het totale opgenomen vermogen, en als u in plaats daarvan een Pro Mini gebruikt, kunt u verwachten dat deze zal afnemen van 25 mA normaal energieverbruik naar slechts 0,57 mA.

Onderbrekingen zijn een geweldige manier om uw energieverbruik te verminderen, en De Kurks-blog heeft enkele gedetailleerde berichten over hen, die onderbrekingen voor beginners helpen demystificeren.

3. Vertraag de kloksnelheid van de Arduino

De kloksnelheid van uw Arduino bepaalt hoeveel bewerkingen hij per seconde kan uitvoeren. De meeste Arduino-kaarten werken op een 8 of 16 MHz-processor, hoewel sommige van de uitlopers, zoals de Teensy 3.6, verwerkingssnelheden tot 180 MHz hebben! Dit is waarom velen DIY-hackers gebruiken graag Teensy-borden 7 coole projecten die je kunt bouwen met een tienerTeensy is een geweldig alternatief voor Arduino, en deze geweldige projecten laten zien wat je kunt doen met een Teensy! Lees verder over Arduino in hun DIY-projecten.

Al deze verwerkingskracht brengt stroomkosten met zich mee, en voor veel gebruikssituaties die de volledige kloksnelheid gebruiken, is het overdreven. Dit is waar het regelen van de kloksnelheid via software een verschil kan maken.

Het zou nalatig zijn als ik je niet waarschuw, het wijzigen van de kloksnelheid kan bootloaderproblemen veroorzaken en kan je een Arduino achterlaten waar je geen schetsen naar kunt uploaden, als je het verkeerd doet.

Als je wilt proberen je kloksnelheid te veranderen, samen met het maken van tools in de Arduino IDE, zodat je de CPU-frequentie direct kunt wijzigen, De gedetailleerde gids van Pieter P. kan je op weg helpen.

4. Vervang Power-Hungry Arduino Components

De Arduino Uno is het populairste board voor beginners en de meeste Arduino-kits leveren een officieel of kloonmodel. Zijn grotere vormfactor en hot-swappable microchips maken hem perfect voor experimenten en zijn brede capaciteit voor ingangsspanningen samen met ingebouwde spanningsconversie voor 3.3v-componenten is het geschikt voor bijna iedereen doel.

Al deze functionaliteit is niet goedkoop in termen van stroomverbruik. Met dit in gedachten zijn er een aantal dingen die u kunt doen om een ​​Arduino Uno fysiek te wijzigen om stroom te besparen.

De spanningsregelaar op de Arduino Uno veroorzaakt de grootste enkele stroomdaling op het bord. Dit is niet bijzonder verrassend, omdat het veilig tot 7 V moet dalen van de ingangsvoeding naar het bord zelf. Sommigen hebben geprobeerd dit te omzeilen door de regulator te vervangen door efficiëntere, maar dit lost het probleem niet echt op.

Patrick Fenner van DefProc engineering kwam met een geweldige oplossing in zijn blogpost voor Uno energiebesparende strategieën. Door de spanningsregelaar volledig te vervangen door een DC-DC buck converter, wist hij het stroomverbruik van de microcontroller te halveren.

5. Maak je eigen Arduino

Een veilige manier om alleen de stroom te gebruiken die nodig is voor uw project, is door een microcontroller te ontwerpen volgens uw eigen specificaties. In het verleden hebben we laten zien hoe je dat kunt bouw je eigen Arduino Geef geen geld uit aan een Arduino - Bouw je eigen voor veel minderIk hou van mijn Arduinos. Ik heb op elk moment nogal wat projecten onderweg - prototyping is gewoon zo eenvoudig met hen. Maar soms wil ik het project functioneel houden zonder te kopen ... Lees verder voor een fractie van de kosten van een officieel bestuur.

Naast veel meer controle over de grootte en reikwijdte van uw circuit, kan dit het stroomverbruik terugbrengen tot 15,15 mA in stand-by en slechts 0,36 mA in slaapstand. Deze cijfers zijn afkomstig uit de ongelooflijk gedetailleerd bericht door Nick Gammon op zijn forum.

Dit bericht behandelt vele andere aspecten van Arduino-energiebesparing en is een fantastische bron om naar te verwijzen wanneer je probeert wat meer tijd uit een mobiele voeding te persen.

Gebruik Arduino voor grote ideeën en een kleine voetafdruk

Als je aan het werken bent je eerste Arduino-projecten voor beginners, is het energieverbruik waarschijnlijk niet zo'n groot probleem.

Naarmate uw ideeën groter worden en meer aandacht nodig hebben, is het de moeite waard om manieren te leren om uw opstelling te stroomlijnen. Tussen zorg ervoor dat u het juiste Arduino-bord krijgt Arduino Koopgids: welk bord moet je kopen?Er zijn zoveel verschillende soorten Arduino-kaarten dat het je vergeven zou worden als je in de war bent. Welke moet je kopen voor je project? Laat ons helpen met deze Arduino-koopgids! Lees verder en door het in te stellen om er het maximale uit te halen, kun je een heel eind komen om echt unieke en nuttige apparaten te maken. Veel succes en blijf sleutelen!

Ian Buckley is freelance journalist, muzikant, artiest en videoproducent en woont in Berlijn, Duitsland. Als hij niet schrijft of op het podium staat, sleutelt hij aan doe-het-elektronica of code in de hoop een gekke wetenschapper te worden.