Consommation d'énergie
Les cartes Arduino utilisent un peu de puissance par rapport à d'autres systèmes embarqués avec des fonctionnalités similaires.
Il y a trois facteurs principaux:
Le régulateur linéaire 5 V NCP1117 ( fiche technique ) de l'Arduino UNO R3 ( schéma ) a un courant de repos d'environ 6 mA.
L'ATMega328P ( fiche technique ) consomme environ 5 mA à 8 MHz et 5 V, et probablement plus du double à 16 MHz.
user2973: L'ATMega16U2 utilisé pour les communications USB consomme également environ 13 mA.
Les LED et autres périphériques consomment également du courant. Dans votre circuit, le rétro-éclairage LCD consomme probablement 4 mA également.
Lors de la chute de 9V à 5V via un régulateur linéaire, près de la moitié de la puissance est perdue par le régulateur en raison de sa chute de 4V. Duncan remarque que cela double presque la consommation d'énergie au repos de 9V ainsi que la puissance nécessaire pour chaque mA de 5V, car 4 / 9ème de la puissance est gaspillée sous forme de chaleur par le régulateur de tension. Un régulateur de commutation efficace produirait 5 V avec peu d'énergie gaspillée, réduisant efficacement la consommation de courant vue par la batterie de 4 / 9ème.
Une batterie duracell 9V ( fiche technique ) passe de 9V à 7V en environ 7,5 heures avec une consommation de courant de 50mA. Par conséquent, une estimation approximative est que votre circuit consomme environ 25 mA, ce qui semble à peu près correct en fonction de la description de votre circuit.
Remarque, la durée de vie des piles alcalines n'est pas linéaire par rapport au courant. Pour des courants très faibles (<1mA), la durée de vie d'une pile alcaline se rapproche de celle d'une pile au lithium.
Prendre du courant
Voici quelques conseils pour réduire la consommation actuelle:
Régulateur: remplacez le régulateur par un régulateur à faible courant de repos, ou mieux encore, un régulateur à découpage (également à faible courant de repos). Un régulateur à découpage utilise des «impulsions» de courant et certains inducteurs et condensateurs externes pour donner une sortie de tension stable raisonnable. Il ne gaspille pas d'énergie comme avec la chute de tension du régulateur linéaire et une efficacité de 90% élevée est possible.
- Il existe des convertisseurs abaissés (abaissés) qui prennent la batterie en entrée, puis se connectent directement à 5V et GND, en contournant le VIN et le régulateur. Celui-ci de Pololu monte et descend à la fois et a un courant de repos de 0,1 mA.
- Alternativement, vous pouvez utiliser des piles alcalines de 1,5 V et un convertisseur élévateur (élévateur) pour obtenir la tension jusqu'à 5 V (par exemple, ce produit de Sparkfun). Il semble que les convertisseurs boost soient plus généralement stockés.
- Enfin, vous pouvez acheter une batterie au lithium rechargeable avec écran de chargement. Cet avantage n'est pas d'avoir à acheter de nouvelles batteries, et pour un tout petit peu plus gros qu'une batterie 9V, celle au lithium a une capacité beaucoup plus grande. Un produit vraiment cool est le kit étanche stalker seeeduino qui comprend un circuit de charge, une batterie, un panneau solaire et d'autres goodies.
ATMEGA328P: Plutôt que d' utiliser delay
pour le moment et le filage en loop
attente sans fin pour que quelque chose arrive, ré-écrire votre code afin qu'il va dormir entre lit capteur, etc. Il y a quelques bibliothèques de puissance faible là - bas qui utilisent la minuterie de chien de garde pour réveil périodique du sommeil qui est pratique. Vous pouvez obtenir la consommation actuelle de l'ATMega328P en dessous de 0,1 mA pendant le sommeil.
LCD: Désactivez le rétroéclairage, ou même la totalité de l'écran LCD. Ajoutez un bouton à la conception que l'utilisateur peut appuyer pour activer l'écran LCD et l'éteindre après une période d'inactivité définie.
Périphériques: la plupart des puces périphériques ont également un mode veille qui réduit considérablement leur consommation d'énergie. Retirez les voyants d'alimentation et autres indicateurs qui ne sont pas nécessaires.
ATMegu16U2: user2973 commentaires Il semble que cette puce est assez avide de pouvoir ( user2973 ). Il pourrait être supprimé pour économiser de l'énergie et utiliser simplement l'UART à la place, mais cela semble exagéré. Il existe des cartes Arduino Pro qui ne sont que des Arduino sans os sans interface USB qui pourraient être utilisées à la place de l'UNO.
Piles: D'autres piles alcalines ont une capacité beaucoup plus grande. Par exemple, un 1.5V AA a plus de 2000mAh pour les faibles courants. L'utilisation de piles AA et d'un convertisseur boost peut augmenter le temps avant le remplacement de la batterie. Utilisez des cellules D (16000mAh) et cela fonctionnera pendant un bon moment. :RÉ
Sommaire
Avec une alimentation et un codage appropriés, vous pouvez obtenir une durée de vie raisonnable d'une batterie. En utilisant les principes ci-dessus, j'ai créé une carte dérivée Arduino qui mesure quelques capteurs et stocke les lectures sur une carte SD toutes les demi-secondes. Il peut durer environ 4 mois sur 2 piles AA, il est donc définitivement possible d'avoir une faible puissance et de rester dans l'écosystème Arduino.
La puce que j'ai utilisée pour la faible puissance de ma carte est la LTC3525-3.3V. Il prend une tension d'entrée aussi faible que 0,8V et augmente jusqu'à 3,3V et une version 5V est également disponible. J'ai conçu un PCB pour cette puce car il n'y avait pas de cassure prête à l'emploi, et dans la fiche technique il y a des modèles de référence. Le principal critère de choix de cette puce était qu'elle avait toujours un rendement élevé à des courants très faibles. Certains autres convertisseurs ont besoin d'une petite consommation de courant minimum.
Le plus gros consommateur d'énergie sur la carte a finalement été la carte micro SD. Elle peut varier entre 0,1mA et 1,5mA de courant de repos selon le fabricant. J'ai trouvé que les cartes Verbatim et Lexar consomment le moins d'énergie. Je vais poser cette question EE.SE à jour avec les résultats de mes tests de consommation d'énergie de la carte micro SD.