Page 1 sur 1

Soucis avec la mesure de la tension d'alim

Publié : 21 nov. 2017, 18:10
par Gilles BILLARD
Hello,
J'ai réalisé une (plusieurs, en réalité) platine destinée à monitorer la température d'un congélateur au format MySensors; Elle est alimentée par un accu Li-Ion 3V
La tension d'alim en amont du booster 3.3v est monitorée via l'entée A0 et un pont diviseur
La ref est interne et a 1.1v
Le pont diviseur 1/3 est formé de 2 résistances élevées pour avoir une conso mini mais compatible avec la résistance (impédance) d'entrée de l'arduino
J'ai choisi 1Mohm et 2.2Mohm
Si je ne connecte pas le point milieu a l'entrée et que je force A0 a GND, je lis bien 1.1v au milieu du diviseur pour 3.3v d'alim (environ), une mesure a zéro, et un téléreport "batterie faible"

Mais dès que je connecte le point milieu à A0, la tension MONTE a 2.4v

Calculs faits avec plusieurs mesures, je trouve que l'arduino se comporte comme si son entrée était connectée au + via 210 kohm

Pas vraiment normal pour une entrée analogique donnée pour avoir 10Mohm

Du coup, pas besoin de vous dire que le report de la charge batterie est faux.

Qu'en pensez vous ?

Re: Soucis avec la mesure de la tension d'alim

Publié : 26 janv. 2018, 16:26
par Gilles BILLARD
Re
J'ai creusé un peu et j'ai changé de pont diviseur et de processeur:
Le phénomène est toujours présent; J'ai reporté mes mesures sur un petit Excel et ce coup ci, la résistance d'entrée calculée est un pullup de 1.14 MΩ.
J'ignore pourquoi, a moins que je me sois planté dans mes calculs la 1ere fois...

Je suis donc allé voir comment est fait le circuit d'entrée du multiplexeur (28.6.1. Analog Input Circuitry) qui se trouve avant l'échantilloneur bloqueur du CAN et j'ai découvert que le circuit a mesurer doit avoir une impédance d'entrée inférieure a 10K.
(The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less. If such
a source is used, the sampling time will be negligible. If a source with higher impedance is used, the
sampling time will depend on how long time the source needs to charge the S/H capacitor, with can vary
widely. The user is recommended to only use low impedance sources with slowly varying signals, since
this minimizes the required charge transfer to the S/H capacitor.)
Voila donc le problème ! Avec un pont dans les environs de 1MΩ/330KΩ je suis bien au dessus de l'impédance prescrite.
Comme je ne souhaite pas que le pont consomme durant le sommeil du processeur, j'ai donc fait un pont avec un potentiomètre multitours de 10KΩ et je le mets a GND via une sortie numérique que je passe a zéro juste avant la mesure, puis que je repasse a 1 juste après.
Après 48h de test, ce coup ci, ca semble bon et cohérent.
Je peux enfin voir mes batteries se décharger et avoir un report correct du pourcentage de charge ainsi que de la tension réelle avant le booster 3.3v.
Actuellement alimenté par du Lithium, je pense passer au super condensateur rapidement (dès que je les aurai reçu de Chine)
Maintenant, ce qui m'étonne beaucoup, c'est que sur le site MySensors il soit mis comme exemple un pont 1MΩ/470KΩ (https://www.mysensors.org/build/battery)
Quelqu'un pourrait-il, cabler vite fait un Arduino sur un breadboard et me dire s'il trouve comme moi ?

Re: Soucis avec la mesure de la tension d'alim

Publié : 28 janv. 2018, 10:14
par lxshooter
Salut.
Tu as essayé de mettre un condensateur céramique de plus ou moins 100nF sur la résistance du bas, comme ça tu t'affranchi pas mal de l'impédance du pont de mesure

Envoyé de mon MI 5 en utilisant Tapatalk

Re: Soucis avec la mesure de la tension d'alim

Publié : 03 févr. 2018, 12:52
par hbachetti
Salut à tous

Je suis nouvel inscrit sur ce forum et je suis développeur logiciel embarqué.

Le principe utilisé généralement pour la mesure du niveau de la batterie est de mesurer la référence interne de l'ADC (1.1V) en utilisant comme référence l'alimentation de l'ARDUINO, ce qui permet d'en déduire la tension d'alimentation.
Cela permet d'éviter un pont diviseur qui consomme et a une impédance importante.
J'ai réalisé un thermomètre MYSENSORS en utilisant cette technique :
https://riton-duino.blogspot.fr/2018/01 ... ie-le.html

hope it helps
@+

Re: Soucis avec la mesure de la tension d'alim

Publié : 04 févr. 2018, 10:18
par Gilles BILLARD
lxshooter a écrit :Salut.
Tu as essayé de mettre un condensateur céramique de plus ou moins 100nF sur la résistance du bas, comme ça tu t'affranchi pas mal de l'impédance du pont de mesure

Envoyé de mon MI 5 en utilisant Tapatalk
Oui , (désolé pour ce retour tardif car je n'ai pas été informé d'un réponse), j'ai bien mis 100nF en pied de diviseur.
++

Re: Soucis avec la mesure de la tension d'alim

Publié : 04 févr. 2018, 10:25
par Gilles BILLARD
hbachetti a écrit :Salut à tous

Je suis nouvel inscrit sur ce forum et je suis développeur logiciel embarqué.

Le principe utilisé généralement pour la mesure du niveau de la batterie est de mesurer la référence interne de l'ADC (1.1V) en utilisant comme référence l'alimentation de l'ARDUINO, ce qui permet d'en déduire la tension d'alimentation.
Cela permet d'éviter un pont diviseur qui consomme et a une impédance importante.
J'ai réalisé un thermomètre MYSENSORS en utilisant cette technique :
https://riton-duino.blogspot.fr/2018/01 ... ie-le.html

hope it helps
@+
C'est exactement comme cela que tout a commencé (comme dirait David Vincent); mais ne me satisfaisant pas de l'indication approximative en % et surtout, la jugeant curieuse, c'est la que j'ai su que les envahiss... j'ai commencé a faire des mesures et que constaté le pb décrit ci-dessus.
++

Re: Soucis avec la mesure de la tension d'alim

Publié : 04 févr. 2018, 17:55
par hbachetti
Apparemment la fonction sendBatteryLevel() envoie un pourcentage. Ce qui sera difficile à contourner, à moins que tu utilises une autre fonction ?

Re: Soucis avec la mesure de la tension d'alim

Publié : 18 févr. 2018, 20:23
par Gilles BILLARD
hbachetti a écrit :Apparemment la fonction sendBatteryLevel() envoie un pourcentage. Ce qui sera difficile à contourner, à moins que tu utilises une autre fonction ?
Hello,
C'est exact.
j'ai donc désormais, a la fois l'indication en % et la mesure réelle de tension en utilisant la fonction multimètre.
++