Microbit - Problème de mesure de tension

Sur les expériences et manipulations, buts, pertinence, déroulement, explication scientifique, organisation pratique et trucs et astuces... Pour les documents pédagogiques, merci de les placer dans la section du niveau concerné.

Microbit - Problème de mesure de tension

Messagede Wissam » 12 Juin 2023, 17:19

Bonjour bonjour,

J’ai constaté lors de différentes mesures de tensions que les valeur sétait significativement différentes selon la broche utilisée. La plupart du temps, on utilise pin0, pin1 ou pin2, et je pense que c’est pour cela que je ne l’avais pas remarqué avant.

Lors du test, 2 résistances de 100 ohms sont alimentées en 3.3V et on mesure la tension d’une des résistances à l’aide de la fonction read_analog().

Les pin1 et pin1 renvoient des valeurs très proches de 588 et 589 alors que le 3, et le 10 renvoient une valeur de 512.
A priori, ce sont les derniers qui donnent la valeurs la plus cohérente puisque le 2 résistances ont la même valeur.

Ma question est simple : quelqu’un a-t-il déjà rencontré ce problème?

Voici le code

Code: Tout sélectionner
from microbit import *
display.off()
while True:
    print(pin1.read_analog(), pin2.read_analog(), pin3.read_analog())
    print(pin3.get_mode())
    sleep(1000)
Wissam
 
Messages: 244
Inscription: 19 Avr 2016, 09:59
Académie: Versailles
Poste: Enseignant en Lycée

Re: Microbit - Problème de mesure de tension

Messagede physicus » 12 Juin 2023, 20:09

En lisant la documentation des MicroBit
https://tech.microbit.org/hardware/edgeconnector/#pins-p3-p4-p6-p7-p9-p10
je cite
pins: P3, P4, P6, P7, P9, P10

These pins are coupled to the LED matrix display, and also its associated ambient light sensing mode. To disable the display driver feature (which will automatically disable the light sensing feature) call the DAL function display.enable(false). To turn the display driver back on again later, call the DAL function display.enable(true).

Note also that the LED 3x9 matrix connects LEDs with associated resistors across these pins, so you should take that into account when designing circuits to use these pins for other purposes.


il y a une résistance de 100 000 ohms en parallèle sur la broche même avec la led désactivée

On le voit sur le schéma électronique https://github.com/microbit-foundation/microbit-v2-hardware/blob/main/V2.21/MicroBit_V2.2.1_nRF52820%20schematic.PDF

Cela explique la différence de lecture.

Il y a aussi d'autres connections https://microbit-micropython.readthedocs.io/en/v1.0.1/pin.html, je cite
Note

The micro:bit has external weak (10M) pull-ups fitted on pins 0, 1 and 2 only, in order for the touch sensing to work.

There are also external (10k) pull-ups fitted on pins 5 and 11, in order for buttons A and B to work.

GPIO pins are also used for the display. 6 of these are routed to the edge connector at 3, 4, 6, 7, 9. and 10. If you want to use these pins for another purpose, you may need to turn the display off.





il faudrait faire un "buffer" avec un amplificateur opérationnel pour qu'il n'y ait aucun courant qui passe par cette résistance
physicus
 
Messages: 833
Inscription: 13 Aoû 2012, 16:48
Académie: Académie de Strasbourg
Poste: Enseignant en Lycée

Re: Microbit - Problème de mesure de tension

Messagede Wissam » 12 Juin 2023, 21:57

Merci pour la réponse.

Je crois comprendre donc que désactiver l’écran de LED ne suffit pas. cependant, je ne trouve pas l’indication sur la résistance de 100k dans le schema de ton lien, ou est-elle?
Wissam
 
Messages: 244
Inscription: 19 Avr 2016, 09:59
Académie: Versailles
Poste: Enseignant en Lycée

Re: Microbit - Problème de mesure de tension

Messagede physicus » 13 Juin 2023, 06:11

Sur le pdf https://github.com/microbit-foundation/microbit-v2-hardware/blob/main/V2.21/MicroBit_V2.2.1_nRF52820%20schematic.PDF
- descendre en bas de la page
- sur le cadre intitulé "LED Matrix", il y a 5 résistances R45 , R46 , R11, R48 et R49 qui valent 10^5 Ohms
ça doit être ces résistances qui perturbent la mesure

il faudrait tester la mesure de tension en plaçant un AOP en montage suiveur de tension ("Unit Gain Buffer") qui permet de "recopier" la tension du pont de résistances de 100 ohm sans "fuites de courants" qui perturbe la valeur de la tension du pont diviseur. Cet Aop doit fonctionner sous 3.3V. Il existe peu t être des descriptions de montages pour MicroBit.

NB1: en relisant le schéma électronique, je constate aussi que les plots P0, P1 et P2 sont reliés à des résistances de 10M (cadre "Touch Sensing") donc de nouveau on a des choses branchées entre l'entrée AN du microcontroleur et le capteur qui fournit une tension analogique.

NB2: Je me demande si il n'y a pas des modules de conversion AN pour MicroBit qui permettent d'avoir une mesure propre? Comme ce microcontroleur a une liaison I2C et une autre SPI, ça doit certainement exister, il y a des convertisseurs AN utilisant ce bus I2C ou une liaisons SPI-
Dernière édition par physicus le 13 Juin 2023, 06:21, édité 1 fois.
physicus
 
Messages: 833
Inscription: 13 Aoû 2012, 16:48
Académie: Académie de Strasbourg
Poste: Enseignant en Lycée

Re: Microbit - Problème de mesure de tension

Messagede gts2 » 13 Juin 2023, 06:13

Bonjour,

La résistance de 100k se trouve dans le schéma "LED Matrix" : COL3=P3 et COL5=P10 et je suppose que display.off met tous les RoW à 0.
gts2
 
Messages: 353
Inscription: 19 Fév 2019, 10:49
Académie: Orléans-Tours
Poste: Enseignant en Classes préparatoires

Re: Microbit - Problème de mesure de tension

Messagede Wissam » 13 Juin 2023, 21:48

Merci (je n’avais pas remarqué le bouton « suivant » ^_^ )

En ce qui concerne les amplis op je ne pense pas que nous en ayons au labo.

Je vais chercher voir si on trouve des modules de conversion, mais c’est tout de même assez ennuyeux cette affaire.

Je vais aussi jeter un oeil sur les arduino qui n’ont peut être pas ce problème.
Wissam
 
Messages: 244
Inscription: 19 Avr 2016, 09:59
Académie: Versailles
Poste: Enseignant en Lycée

Re: Microbit - Problème de mesure de tension

Messagede physicus » 14 Juin 2023, 05:28

Il me semble qu'il existe des platines d'adaptation MicroBit vers module Groove. Mais je ne connais pas bien ce système.

Concernant l'Arduino Uno, les 6 entrées Analogique Numériques sont directement connectées au micro contrôleur. Les seules entrées sorties reliées à des LED sont les 0,1 et 13 mais elles ne sont utilisées qu'en entrée sortie logique (0V/5V).

À savoir également qu'il est possible de changer de tension de référence pour numériser un signal https://www.arduino.cc/reference/en/language/functions/analog-io/analogreference/

Pour l'Arduino Uno , elle vaut 1.1V. Cela peut être pratique pour des capteurs délivrant des tensions faibles.
physicus
 
Messages: 833
Inscription: 13 Aoû 2012, 16:48
Académie: Académie de Strasbourg
Poste: Enseignant en Lycée


Retourner vers Les manipulations, les TP et autres activités expérimentales

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité