Fabrication d'un capteur analogique à l'aide du micro:bit

Comment fonctionne un capteur analogique?

Étape 1 : Assemblage du capteur de température

Pour assembler le capteur analogique maison, vous aurez besoin d'une plaquette diviseur de tension, un transducteur résistif, 3 pinces alligator et un Micrp:bit.

  • Le transducteur doit être visé dans le bornier du pont de résistance.
  • Le potentiomètre doit être ajusté à la valeur de référence du transducteur.
  • La broche GND du Micro:bit doit être connectée au GND du pont de résistance.
  • La broche 3V du Micro:bit doit être connectée au 3V du pont de résistance.
  • La broche P0 du Micro:bit doit être connectée à la broche S du pont de résistance.

Étape 2 : Écrire un programme pour voire les données brutes du transducteur

La tension générée par le pont de résistance (formé par le transducteur et la résistance de référence) varira entre 0V et 3V. Cette tension sera convertie par le convertisseur analogique-numérique du Micro:bit. Il en résultera un chiffre qui variera de 0 à 1023.

Vous devez écrire un programme capable de lire le signal analogique et qui vous retournera une valeur "brute" comprise entre 0 et 1023.

Étape 3 : Prises de données pour l'étalonnage

Vous devez maintenant comparer le comportement du transducteur à une variation du phénomène physique.

Pour la comparaison, vous devez utiliser un instrument de mesure fiable ayant une bonne précision.

Vous devez prendre simultanément les mesures de l'instrument de mesure et du transducteur.

Vous aurez besoin d'une dizaine de données au minimum.

Exemple de tableau de données:

Étape 4 : Trouver l'équation d'étalonnage du transducteur

Afin de simplifier cet exemple, une équation du premier degré a été utilisée. Dans les faits, rares sont les transducteurs qui ont un comportement linéaire. Cette approximation est possible en limitant notre le capteur à une petite plage de mesures possibles.
  • Si ce n'est pas déjà fait, transférer vos données dans un chiffrier. (Pour de l'aide afin d'utiliser Google Sheet cliquer ici);
  • À partir de vos données, créer un graphique à points;
  • Ajouter une courbe de tendance;
  • Noter l'équation de la courbe de tendance.

Étape 5 : Implantation de l'équation d'étalonnage

Modifier le programme de votre capteur maison afin de convertir les données brutes du convertisseur analogique-numérique vers des données significatives qui porteront les unités appropriées.

Exemple de programme :

Question : Que pouvons-nous ajouter à ce programme pour modifier la fréquence d'échantillonnage?

Étape 6 : Tronquage des chiffres non-significatifs

Vous constaterez que le Micro:bit présente la mesure avec un grand nombre de chiffres après la virgule. Tous ces chiffres ne sont pas significatifs! Tronquons la mesure à 1 chiffre après la virgule.

Exemple d'une fonction permettant de transformer les données brutes et les tronquer afin d'obtenir une mesure à une seule décimale :

Question : Expliquer le fonctionnement de la fonction "1_décimale".

Étape 7 : Prise multiple de données et calcule de la moyenne

Il est normal de voir les mesures fluctuer autour d'une valeur moyenne. Pour diminuer cette fluctuation, vous pouvez profiter de la grande capacité de calcul du Micro:bit afin de prendre très rapidement un plusieurs mesures et calculer une moyenne de ces mesures.

Défis 1 : Modifier votre programme afin que le Micro:bit prenne 5 mesures par seconde et calcule une moyenne. Pour ce faire, vous devrez créer 5 variables.

Étape 7 : Pour aller plus loin... les tableaux!

Pour les braves, il est possible d'accroitre l'efficacité et l'efficience du code afin de prendre encore plus de mesures en un temps très rapide (sans faire exploser le nombre de variables à définir) et de calculer une moyenne. Pour cela, il sera nécessaire de faire appel à une structure de programmation que l'on nomme les "tableaux".

Voici un exemple d'un programme qui collectera dans un tableau 400 mesures par seconde! Toutes les secondes, le programme n'affichera que la moyenne des 400 mesures (avec un seul chiffre après la virgule) :

Explications du code :

La première boucle sert à créer et remplir un tableau des données (qui s'appelle "données") issues de la broche analogique P0. L'index permet de définir la position de chacune des données.

La deuxième boucle, à chacune de ses itérations, ajoutera la donnée contenu à l'index à la variable "somme".