Différences entre les versions de « Lissage des mesures analogiques »

De GCE Electronics
Aller à la navigation Aller à la recherche
Ligne 19 : Ligne 19 :


Lorsque le temps est écoulé, un objet fonction divise ce total par 500 afin de récupérer une valeur moyenne des mesures relevées pendant une seconde.
Lorsque le temps est écoulé, un objet fonction divise ce total par 500 afin de récupérer une valeur moyenne des mesures relevées pendant une seconde.
Cette méthode permet de récupérer une mesure moyenne pendant la seconde écoulée.


Grâce à cette méthode, Il est possible de récupérer un grand nombre de valeurs sur un temps assez court afin d'éliminer les pics dus au bruit.
Grâce à cette méthode, Il est possible de récupérer un grand nombre de valeurs sur un temps assez court afin d'éliminer les pics dus au bruit.

Version du 14 décembre 2023 à 16:28

Introduction

Lissage numérique

Fonction lissage.jpg
Nom Lissage numérique
Famille IPX800 V5
Wiki créé le 14/12/2023
Wiki mis à jour le 14/12/2023
Auteur @fgtoul

Les capteurs analogiques sont souvent très sensibles à l’environnement dans lequel ils sont installés, ce qui peut entraîner des données bruyantes et fluctuantes. Pour lisser ces données, il est possible d’utiliser un filtre numérique, tel que les moyennes mobiles, pour obtenir des courbes plus lisibles. Les moyennes mobiles sont calculées en prenant la moyenne des données sur une fenêtre glissante de taille fixe. Cela permet de réduire les fluctuations et de rendre les données plus faciles à interpréter. Les moyennes mobiles peuvent être utilisées pour exécuter des scénarios basés sur des seuils prédéfinis.

Principe

Prenons par exemple un échantillonnage réalisé à raison d'une mesure toutes les 2 millisecondes.

La valeur relevée est alors additionnée dans un objet compteur, le comptage sera opérationnel pendant une seconde.

Lorsque le temps est écoulé, un objet fonction divise ce total par 500 afin de récupérer une valeur moyenne des mesures relevées pendant une seconde.

Grâce à cette méthode, Il est possible de récupérer un grand nombre de valeurs sur un temps assez court afin d'éliminer les pics dus au bruit.

Cependant, lorsque la seconde est écoulée, il faut réinitialiser le compteur pour réinitialiser le calcul de la moyenne sur la nouvelle seconde en cours, ce qui nous fait perdre les bénéfices du lissage.

Pour contourner cela, nous pouvons utiliser 2 compteurs qui seront alors activés alternativement.

Pendant qu'un compteur gardera en mémoire la moyenne calculée sur la seconde précédente, l'autre compteur permettra le calcul sur la seconde en cours.

Le diagramme :

Lissage numérique- diagramme 1.jpg

Fonctionnement

Le clignotant "MESURES" permet un échantillonnage des mesures à la milliseconde. A chaque front montant, la valeur du capteur est incrémentée dans le compteur dont l'entrée Enable est activée.

L'activation alternative des compteurs est faite par le clignotant "ALTERNANCE". Ce dernier se charge de désactiver un compteur pendant qu'il active et réinitialise l'autre.

La fonction récupère alors la valeur du compteur désactivé pour calculer la moyenne sur la seconde écoulée. Vous noterez dans la formule que la valeur d'un compteur est utilisée uniquement si c'est l'autre qui est actif.

Le résultat de la fonction sera réactualisé à chaque seconde écoulée.


En fonction de la nature des valeurs mesurées et du bruit généré par l'environnement (visible sur les courbes de mesures), il sera possible d'allonger les variables Ta et TB du clignotant ALTERNANCE.

Il faudra penser à réajuster la formule de l'objet fonction, de même si nous modifions la fréquence d'échantillonnage sur le clignotant MESURES.

Dans l'exemple, nous avons une moyenne de 500 valeurs.

Nous pourrions automatiser cela en ajoutant un paramètre définissant la période durant laquelle les valeurs seront prises en compte dans la moyenne.

Si nous réglons par exemple à 2 secondes, nous aurons alors un échantillonnage de 1000 valeurs.

La formule de la fonction a été ajustée pour calculer automatiquement la moyenne sur un nombre variable de valeurs.

Lissage numérique- diagramme 2.jpg

Autre méthode sans compteurs

Voici une méthode de lissage présentée par @Michel94