La métrologie appliquée aux capteurs
Cette page est une tentative pour réaliser des mesures correctes à partir de capteurs électroniques.
Objectifs
Réaliser des mesures fiables
Prendre en considération les tolérances de nos capteurs
Mesurer efficacement et le moins possible pour économiser la consommation électrique
Réduire le taux d'erreur
Produire des données de qualité
Une première application basique
Un petit objet connecté qui mesure divers paramètre atmosphérique.
J'utilise un ESP8266 avec un capteur BME280 et un capteur DHT22.
Avec le BME280
Je mesure 3 grandeurs :
Avec le DHT22
Je mesure 2 grandeurs :
Température (en °C)
Humidité relative (en %)
Avec l'ESP8266
Je mesure :
Liste des problèmes rencontrés
Les capteurs ont une précision discutable mais documentée
Les valeurs mesurés varient d'une mesure à l'autre
De temps à autres, les capteurs retournent des mesures incorrectes
De temps à autres, les capteurs ne retournent aucune mesure
Première approche naive
On effectue un minimum de 3 mesure sur chaque grandeur à une fréquence de mesure de 0,5 Hz (1 mesure toute les 2 secondes).
Si lors d'une mesure on rencontre une erreur, on effectue une mesure supplémentaire sur toutes les métriques (car cela ne coûte pas beaucoup plus cher de mesurer toutes les grandeurs, le plus consommateur en énergie étant le temps d'attente entre les mesures à entretenir la connexion Wi-Fi).
On effectue au maximum un nombre limité de mesure. Si un capteur ne répond aucune valeur correcte on abandonne.
De toute les mesures effectués, on écarte les erreurs, et on prend la valeur médiane.
=> Quel Algo pour la médiane ?
Bonus : Filtrage des données
On peut essayer d'affiner la sélection de la mesure en filtrant les mesures qui se situe hors de la tolérance du capteurs.
=> Comment ? Quel Algo pour le filtrage ?