Accueil

5 astuces d’économie d’énergie Arduino qui vous permettront de courir pendant des jours

Added 2018-07-04


Les cartes Arduino ont changé le visage de la technologie de bricolage. Des projets simples comme la création Programmation Arduino pour les débutants: tutoriel de projet sur les contrôleurs de feux de signalisation feux de signalisation miniatures Arduino  sont parfaits pour enseigner aux débutants les bases de l'électronique et de la programmation.

Les Arduinos sont parfaits pour les projets domestiques et peuvent être utilisés en déplacement en y attachant une batterie. Le problème est que même la plus petite batterie sera vidée rapidement, même par une petite carte Arduino.

Si vous voulez vraiment que votre Arduino soit sur le long terme, vous devrez faire quelques ajustements et modifications.

1. Bibliothèques logicielles Arduino Low Power

Plusieurs bibliothèques de logiciels disponibles peuvent modifier la consommation d’énergie de votre Arduino. En laissant l'Arduino en veille profonde pendant un certain temps, vous pouvez économiser de l'énergie entre vos opérations. Ceci est particulièrement utile pour les microcontrôleurs effectuant des lectures de capteurs dans des zones éloignées telles que des stations météorologiques ou des sous-circuits de détection pour des appareils plus volumineux.

le Bibliothèque de faible puissance  Rocketscream, par l'utilisateur de Github, est un exemple de bibliothèque facile à utiliser, parfaite pour économiser de l'énergie. Considérez le code suivant, basé sur certains exemples de code de la bibliothèque:


#include "LowPower.h"

// configure () vos capteurs / LED ici

boucle vide ()
{
  // Cette ligne suivante met l'arduino hors tension pendant 8 secondes.
  // ADC signifie conversion analogique-numérique et DBO pour la détection de délétion
  // les deux sont éteints pendant la période de veille pour économiser de l'énergie
  LowPower.powerDown (SLEEP_8S, ADC_OFF, BOD_OFF);
  
  // Après chaque sommeil, vous pouvez demander à l'Arduino d'exécuter ses tâches ici - par exemple, prendre une lecture de la température et l'envoyer à un serveur.
}

Ce code est un bon début. Non seulement il réduit la consommation d’énergie à l’aide de méthodes déjà intégrées, mais il désactive également le coût potentiellement élevé. conversion analogique-numérique  (qui peut utiliser le courant même quand il est inactif) et le détection de panne  qui arrête le code en cours d’Arduino lorsque sa tension d’entrée devient trop basse.

C’est une mesure simple mais efficace pour commencer à réduire la quantité d’énergie tirée par votre Arduino. Nous pouvons aller beaucoup plus loin que ça!

2. Économie d'énergie intégrée Arduino

Le langage de programmation Arduino a sa propre fonction intégrée dormir  fonctionnalité conçue pour aider à économiser de l'énergie. La fonction de sommeil, utilisée en tandem avec interrompre  clauses, permettent à l’Arduino de se réveiller.

Arduino possède des broches spécifiques conçues pour interrompre le cycle de veille, et vous pouvez y accéder en utilisant la fonction de configuration:


#define interrupteurPin 2

void setup()
{
  // la broche d'interruption DOIT être la broche Arduino 2 ou 3 sur Uno
  // place la goupille en mode pull up
  pinMode (interruptPin, INPUT_PULLUP);
}

Maintenant que ceci est configuré comme une broche d’interruption, vous pouvez en toute sécurité mettre votre Arduino en veille. Une façon simplifiée de le faire est de créer deux petites fonctions:


annuler sendToSleep ()
{
  // enable sleep - notez ce premier sommeil, pas le démarre!
  sleep_enable ();
  // attache l'interruption, spécifie le code PIN, la méthode pour appeler l'interruption,
  // et les conditions d'interruption, dans ce cas lorsque la broche est tirée bas.
  attachInterrupt (interruptPin, wakeUpAgain, LOW);
  // active le mode veille
  sleep_cpu ();
  // le code continue à partir d'ici après interruption
  Serial.println ("Je viens de me réveiller.");
}

void wakeUpAgain ()
{
  // arrête le mode veille
  sleep_disable ();
  // efface l'interruption
  detachInterrupt (interrputPin);
}

Le code ci-dessus est un moyen simplifié d’envoyer votre Arduino en mode veille et vous pouvez le réactiver en le connectant. broche 2  au GND  épingle. Alors que l’Arduino Uno est en mode veille, la consommation totale de courant est réduite d’environ 11 mA. Si vous utilisez plutôt un Pro Mini, vous pouvez vous attendre à une consommation d’énergie normale de 25 mA à seulement 0,57 mA.

Les interruptions sont un excellent moyen de réduire votre consommation d’énergie, et Le blog de Kurks contient quelques articles détaillés à ce sujet. , qui aident à démystifier les interruptions pour les débutants.

3. Ralentissez la vitesse de l'horloge Arduino

Toute cette puissance de traitement a un coût en énergie et, dans de nombreux cas d'utilisation, l'utilisation de la vitesse d'horloge complète est excessive. C’est là que la régulation de la vitesse d’horloge par logiciel peut faire la différence.

Ce serait négligent de ma part de ne pas vous avertir, changer la vitesse d'horloge peut causer des problèmes au chargeur de démarrage  et peut vous laisser avec un Arduino que vous ne pouvez pas télécharger des croquis, si fait de manière incorrecte.

Si vous voulez essayer de changer votre vitesse d'horloge, avec la création d'outils dans l'IDE Arduino pour vous permettre de changer la fréquence du processeur à la volée, Guide détaillé de Pieter P  peut vous aider à démarrer.

4. Remplacez les composants Arduino gourmands en énergie

L'Arduino Uno est le tableau le plus populaire pour les débutants et la plupart des kits Arduino fournissent un modèle officiel ou un modèle clone. Son facteur de forme plus important et ses puces remplaçables à chaud le rendent parfait pour l'expérimentation, et sa grande capacité de tensions d'entrée ainsi que la conversion de tension intégrée pour les composants 3,3 V le rendent utilisable dans presque tous les cas.

Toutes ces fonctionnalités ne sont pas bon marché en termes d’utilisation de l’énergie. Dans cette optique, vous pouvez modifier physiquement un Arduino Uno pour économiser de l’énergie.

Le régulateur de tension sur l’Arduino Uno provoque la plus grosse consommation de courant sur la carte. Ce n’est pas particulièrement surprenant, car il faut laisser tomber jusqu’à 7V en toute sécurité de l’entrée d’alimentation à la carte elle-même. Certains ont essayé de contourner ce problème en remplaçant le régulateur par des plus efficaces, mais cela ne résout pas vraiment le problème.

Patrick Fenner de l’ingénierie DefProc a proposé une excellente solution dans son blog  couvrant les stratégies d'économie d'énergie Uno. En remplaçant entièrement le régulateur de tension par un convertisseur abaisseur CC-CC, il a réussi à réduire de moitié la consommation d'énergie du microcontrôleur.

5. Faites votre propre Arduino

En plus d'avoir un contrôle beaucoup plus important sur la taille et la portée de votre circuit, cela peut ramener la consommation d'énergie à 15,15 mA en veille et à seulement 0,36 mA en mode veille. Ces chiffres sont tirés de la poste incroyablement détaillé  par Nick Gammon sur son forum.

Ce message couvre de nombreux autres aspects de l’économie d’énergie Arduino et constitue une ressource fantastique à consulter lorsque vous essayez de gagner un peu plus de temps sur une source d’alimentation mobile.

Utilisez Arduino pour les grandes idées et une petite empreinte de puissance

Quand tu travailles sur 15 grands projets Arduino pour les débutants vos premiers projets Arduino pour débutants , la consommation d’énergie n’est probablement pas un problème.






Nuage de tags

Choix de L'éditeur


Thomas Becket

Je suis un écrivain indépendant qui couvre la programmation et les logiciels.
Je suis étudiant en informatique et je m'intéresse à la programmation, aux logiciels et à la technologie
Gadgets technologiques et critiques 2019