[retour d'expérience] Economie de courant

Bonjour,

Juste un petit retour d'expérience qui peut, peut-être, intéresser quelqu'un.

J'ai fait un enregistreur de points gps dans le but de localiser des photos. J'ai tout d'abord développé un proto avec ma vielle carte arduino, un gps EM411 de dealextreme et un support de carte SD bon marché d'ebay. Puis, je me suis passé de la carte Arduino et j'ai utilisé, avec le même programe, un Atmega328 tout seul, sans quartz, à 8mhz. L'alimentation se fait fait en 5v via un connecteur USB femelle. En mode autonome, je l'alimente avec un accu li-ion de 3.7v via un convertisseur step-up prévu pour usb.

Les premiers test avec un accu chargé et un relevé de points toutes les 30s m'ont donné une utilisation de 20h.
Je souhaitais avoir une plus longue autonomie.
J'ai donc créé un mode "piéton" en utilisant la librairie low power pour éteindre l'arduino entre deux acquisitions, éteignant aussi l'alimentation du gps et de la carte SD. Lors du rallumage du microprocesseur, j'allume le GPS et le lis jusqu'à ce qu'il trouve un point (ce qui peux prendre 5 à 20s). Entre deux lectures infructueuses du GPS, j'éteins l'atmega pendant 3s. Le seul point faible est que le gps reste allumé tant qu'il n'y pas de satellite visible (tunnel, métro, magasin...).

J'ai maintenant 4 modes de fonctionnement :
Mode 1 : Allumé en permanence, un point toutes les 10s (autonomie avec accu pas testée)
Mode 2 : Allumé en permanence, un point toutes les 30s (autonomie avec accu : 20h)
Mode 3 : Allumé en permanence, un point toutes les minutes (autonomie avec accu pas testée)
Mode piéton : Allumé toutes les minutes pour capture de point (autonomie avec accu : 8 jours, avec satellites toujours visibles)

churchill

Merci Churchill c'est intéressant.
Ce qui serait bien c'est de pouvoir mettre des chiffres de conso devant chaque composant en fonction du mode.
Notamment, compte-tenu qu'il te faut 20s pour réacquérir une position sur le GPS, est-ce que ca vaut la peine de l'éteindre?
Si jamais tu laisses le GPS ON, tu pourrais essayer d'arrêter les messages NMEA quand tu n'en a pas besoin. La liaison série en stand-by peut faire légèrement baisser la conso (commandes $PSRF à envoyer au GPS).

Sur l'ATMega, a quelle fréquence tournes tu ? Plus tu baisses la fréquence, moins tu consomme. et il ne te faut pas forcément plus de temps pour réaliser tes tâches.

As tu utilisé un 328-PU standard ou un 328P-PU pico power ?

C'est dommage aussi d'être obligé de faire un step-up sur l'accu. Est-ce que le GPS peut tourner à moins de 5V ?
L'ATmega doit pouvoir tourner jusqu'à 2V, idem la carte SD.

Regarde aussi du coté de ce sujet :

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1224194680/0

Au final mon horloge complète consomme moins de 8mA.

Interessant
Merci

Je n'ai pas voulu pousser plus loin la chasse aux watts, car une autonomie de 1 à 8 jour me satisfait pleinement.
Mais c'est effectivement un sujet très intéressant : on s'aperçoit vite qu'avec peu de difficulté on peut rendre nos gadgets plus vert :slight_smile:

barbudor:
Ce qui serait bien c'est de pouvoir mettre des chiffres de conso devant chaque composant en fonction du mode.
Notamment, compte-tenu qu'il te faut 20s pour réacquérir une position sur le GPS, est-ce que ca vaut la peine de l'éteindre?

Même s'il faut 20s (en général ça tourne tout de même plutôt à 5), sur 1 acquisition par minute, ça fait 40s sans conso, et donc a-priori 2/3 de plus d'autonomie sans rien faire de spécial

barbudor:
Si jamais tu laisses le GPS ON, tu pourrais essayer d'arrêter les messages NMEA quand tu n'en a pas besoin. La liaison série en stand-by peut faire
légèrement baisser la conso (commandes $PSRF à envoyer au GPS).

Je ne connais pas cette possibilité. Il faut que je voie si mon récepteur à cette fonction.

barbudor:
Sur l'ATMega, a quelle fréquence tournes tu ? Plus tu baisses la fréquence, moins tu consomme. et il ne te faut pas forcément plus de temps pour réaliser tes tâches.

Je suis à 8 mhz, mais l'atmega n'est pas beaucoup sollicité : lecture GPS et écriture sur SD, sur la minute, il doit être allumé 1-2 sec maxi a bisto de nas. Le plus gros consommateur, c'est le GPS.

barbudor:
As tu utilisé un 328-PU standard ou un 328P-PU pico power ?

C'est un standard

barbudor:
C'est dommage aussi d'être obligé de faire un step-up sur l'accu. Est-ce que le GPS peut tourner à moins de 5V ?
L'ATmega doit pouvoir tourner jusqu'à 2V, idem la carte SD.

Pour le GPS c'est en 4.5v et 5.5v. Le step up est tout de même (théoriquement) assez efficient.

Si vous voulez des pistes, en voici, en voilà:

J'ai beaucoup de respect pour ce monsieur qui officie énormément sur arduino aussi !
Je lui enverrais bien une médaille, mais je pense qu'il devrait en recevoir une officiellement, voilà je l'ai dit !

@zeric
Merci pour le lien. Article bien fait et très intéressant