Surveillance de la tension sans référence connue

12

Je travaille sur une petite plate-forme de capteurs qui se décharge de piles. J'adorerais pouvoir déclencher une alerte lorsque la tension devient trop faible. Le problème est que tout ce que j'utilise pour mesurer cette tension sera alimenté par cette même source de tension. Pour ce que ça vaut, j'utilise des clones Arduino Pro-mini (3,3 V) à partir de rechargeables 4xAA (4,8 V pour commencer, mais le système semble fonctionner jusqu'à 2 V environ, y compris l'émetteur XBee).

Quelqu'un at-il des idées intelligentes sur la façon de travailler cela? Il semble que tout ce qui utilise les entrées analogiques de la puce ATmega compare simplement la tension d'entrée avec elle-même. Peut-être vérifier la différence entre ce qui vient du régulateur et ce qui vient des batteries elles-mêmes?

edebill
la source

Réponses:

10

La plupart (tous?) Des AVR avec un ADC ont une tension de référence interne qui est régulée à une valeur constante, indépendamment de l'alimentation en tension. Vérifiez votre fiche technique ... dans la puce que j'utilise, c'est 2.56V. Il existe un registre qui choisit entre la comparaison avec Vcc, AREF ou la référence de tension interne. Vous devez simplement le configurer pour comparer avec la référence de tension interne, ainsi que l'utilisation d'un diviseur de tension afin que la tension maximale ne dépasse jamais 2,56 V.

davr
la source
1
Ceci, normalement une référence de bande interdite, est l'une des références les plus fiables. Ils sont très stables sur une large plage de température.
Kortuk
J'accepte celle-ci car: a) cela me permettrait de mesurer la tension dans le temps et b) pourrait être faisable avec des pièces que j'ai déjà sous la main.
edebill
7

Que diriez-vous d'un superviseur de l'approvisionnement comme ceux du Texas ?

En règle générale, ils surveillent l'alimentation, et si elle descend en dessous d'un seuil fixe, une broche de sortie change d'état.

Vous pouvez ensuite le connecter à la broche d'interruption (ou de réinitialisation) non masquable de votre processeur.

Steve Melnikoff
la source
c'est la meilleure réponse - vous avez vraiment besoin d'une solution matérielle qui soit un comparateur + générateur d'impulsions. La mesure de la tension avec un ADC ne vous protégera pas contre les pépins rapides où la tension d'alimentation chute plus rapidement que l'ADC ne peut la mesurer.
Jason S
Ces risques sont-ils susceptibles de se produire lors de l'exécution sur batterie?
edebill
Si vous avez une charge à courant élevé, peut-être.
Jason S
Ou si le régulateur 3,3 V tombe en panne!
Jason S
1

Si votre Arduino ne prend pas en charge la mesure de la référence de bande interdite interne, utilisez simplement une référence externe.

La tension à la broche d'entrée sera maintenue constante par la diode de référence, mais la valeur que vous lirez variera en fonction de l'alimentation, car les ADC sont référencés à l'alimentation. Si votre référence est de 1,0 V, par exemple, et que votre ADC lit 512 sur 1024, alors vous savez que les rails de tension sont à 2 V.

endolith
la source