Déterminer l'équation d'un capteur analogique

Bonjour à tous,

Préambule :
j’avais écrit quelques articles afin de vous aider à déterminer l’équation d’une courbe en sortie de capteur.
La méthode consistait à esayer de superposer une parabole à la courbe donnée par le fabricant. L’équation de la parabole était alors calculée en fonction des coordonnées de 3 points relevés sur la courbe fournie.

Si la méthode vous intéresse, vous pouvez suivre le fil à partir d’ici

Cette méthode laissait malgré tout une marge d’erreur plus ou moins confortable, car la courbe d’origine n’était pas forcément parabolique (polynomiale d’ordre 2), elle pouvait être de type linéaire, exponentielle, logarithmique ou autre.

But :
Ce tutoriel va vous permettre d’établir l’équation de votre graphique, grâce à l’ajout d’une courbe de tendance (aussi appelée courbe de régression) , certains fabricants ne donnant pas l’équation pour leur produit.

Cas pratique
Pour commencer, prenons l’exemple d’un capteur de distance (télémètre) à infra-rouges (SHARP GP2Y0A02),
image

Voici son abaque :

Méthode :
1. Le relevé
La première étape consiste à faire un relevé des données, de la manière la plus précise possible. Nous nous intéresserons à l’intervalle [20 ; 150] puisque cela correspond à la plage de mesure du capteur.
Pour cela, je conseille d’agrandir le graphique, puis de relever chaque point à la règle en recalculant ses coordonnées grâce à la règle de trois basée sur l’échelle.

Pour la courbe ci-dessus, le relevé donnerait ceci :

Distance (cm) Tension (V)
20 2,5
30 2
40 1,571428571
50 1,257142857
60 1,071428571
70 0,928571429
80 0,814285714
90 0,728571429
100 0,685714286
110 0,6
120 0,557142857
130 0,528571429
140 0,5
150 0,471428571

Le plus difficile est fait :wink:

2. Les données sur Tableur
La deuxième étape consiste à recopier le relevé de données dans un tableur et construire le graphique correspondant

Voir les manipulations sur Excel

1er Graphique : La tension en fonction de la distance
Sélectionnez les données saisies,cliquez dans l’onglet Insertion, cliquez sur Nuages afin d’insérer un graphique en nuage de points. C’est à mon sens celui qui donne de meilleurs résultats.

image

2nd Graphique : La distance en fonction de la tension
Nous aurons besoin d’un second graphique pour déterminer la deuxième équation.
Nous allons donc recopier notre colonne Distance juste après notre colonne Tension
(Cela permettra de conserver les 2 graphiques actifs simultanément sur la feuille)
Il conviendra ensuite d’insérer un graphique type Nuages sur la nouvelle sélection de données.

image

Voir les manipulations OpenCalc

Sélectionnez les données saisies,cliquez sur Diagramme afin d’insérer un graphique. Puis dans le formulaire, sélectionnez le type XY (Dispersion) pour un graphique en nuage de points. C’est à mon sens celui qui donne de meilleurs résultats. Validez par terminer
image

1er Graphique : La tension en fonction de la distance

image

2nd Graphique : la distance en fonction de la tension

image

3. La courbe de tendance
Excel et OpenCalc permettent l’ajout de courbes de tendances sur un graphique. Pas besoins de faire les calculs fastidieux avec la méthode du moindre carré ou toute autre méthode permettant de calculer une courbe de régression.

Une fois que vous avez obtenu un graphique dans le tableur, vous pouvez cliquer sur la courbe avec le bouton droit de la souris, puis dans le menu contextuel,sélectionner l’option Ajouter une courbe de tendance…

Ajout d’une courbe de tendance sur Excel :
image
Insertion d’une courbe de tendance sur OpenCalc :

Par défaut, Excel et OpenCalc affichent une courbe de type linéaire.
imageimage

Excel :


OpenCalc :
image
N’oubliez pas de cocher l’option « afficher l’équation sur le graphique ».

Vous pourrez alors rechercher la courbe de tendance appropriée par simples clics.
Pour notre exemple, la courbe la plus proche a une équation exprimée en puissances de x

Excel :
image
OpenCalc :
image

Sur Excel, la courbe de tendance en rouge se superpose parfaitement et le coefficient de détermination est excellent (0.996)

image

De même sur OpenCalc

image

Nous venons de déterminer l’équation de Tension=f(Distance)

Suivant le même procédé, nous déterminerons l’équation de Distance=f(Tension)
sur Excel :
image
ou Sur OpenCalc :
image

Conclusion :

D’autres types de courbes peuvent être satisfaisants, il convient d’utiliser celui qui aura l’équation la plus facile à paramétrer dans l’IPX (car je ne suis pas sur que les fonctions logarithmiques soient prises en compte) et qui aura le meilleur coefficient de détermination (le coeff doit être supérieur à 0.70)

Ces 2 formules serviront à renseigner l’entrée analogique de l’IPX
: Analog -> Digital ou Digital->Analog

Dans certains cas, il faudra paramétrer l’entrée analogique avec le type « Volt »
la tension sera alors « lue » par IPX, la formule sera ensuite appliquée uniquement dans un widget HTML associé à un petit script Javascript (lecture dans une source de données)

(Graphiques réalisés avec Microsoft Excel 2010 et Open Office 4.1.4)

7 J'aimes

Merci pour cette démonstration @fgtoul. Tu parlais de faire un wiki sur le sujet, tu le ranges où dans ce cas là.
Cdt.

Ben, pour faire plus vite, j’ai fait ce tuto.
La rédaction d’un Wiki prend plus de temps. :sweat_smile:
Sur le tuto vous pouvez réagir et commenter :writing_hand:, contrairement au Wiki.
Donc faites moi part de vos commentaires ici et, plus tard je prendrai vos réactions en compte si je rédige le Wiki :smiley:

bonjour,
j’ai mis le tuto ci-dessus à jour avec Excel et OpenOffice Calc (tableur gratuit)
cdt

j’ai rédigé le WIKI qui reprend ce tuto.
Ultérieurement, je le complèterai avec le paramétrage de l’IPX800 V4 pour ce capteur SHARP.
http://gce-electronics.com/wiki/index.php?title=Déterminer_l’équation_d’un_Capteur_analogique

EDIT : nouveau lien vers le Wiki :
https://gce.ovh/wiki/index.php?title=Déterminer_l'équation_d'un_Capteur_analogique

4 J'aimes