Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Vérifier et calibrer votre capteur d'humidité pour des mesures précises

Quelle est la précision de votre capteur d'humidité ? Découvrez-le avec ce projet.

Les capteurs d'humidité sont courants, relativement peu coûteux et existent en de nombreuses variantes. Trop souvent, on consulte la fiche technique, on les utilise avec une interface, et (tant que les valeurs « semblent raisonnables ») on accepte les résultats.

Dans ce projet, nous montrons comment aller plus loin et vérifier la précision d'un capteur d'humidité. Nous illustrons également une méthode générale de calibration de capteur et l'appliquons pour calibrer les résultats afin d'améliorer la précision des mesures d'humidité.

Configuration de test utilisée dans le projet (de gauche à droite, carte microcontrôleur Quark D2000, interface capteur, capteur HIH5030 dans un micro-environnement).

Fondamentaux du projet

Pour vérifier la précision d'un capteur, les valeurs obtenues sont comparées à une référence standard. Pour vérifier la précision d'un capteur d'humidité, nous utilisons la méthode des « sels saturés » pour produire les standards. Simplement, certains sels (composés ioniques comme le sel de table ou le chlorure de potassium), dissous dans une solution aqueuse, produisent une atmosphère d'humidité connue (voir PDF de référence).

Ces propriétés chimiques servent à créer des micro-environnements d'humidité relative (HR) connue (standards de référence), et les capteurs sont lus à l'intérieur. Concrètement, nous préparons une solution dans un bocal scellé pour préserver l'atmosphère, puis plaçons le capteur connecté dans le bocal scellé. Ensuite, le capteur est lu répétitivement et les valeurs enregistrées.

En répétant la procédure avec plusieurs sels différents, chacun produisant une HR différente, nous pouvons développer un profil pour le capteur testé. Comme nous connaissons l'HR de chaque micro-environnement, nous pouvons évaluer les écarts de nos lectures par rapport à ces valeurs connues, et ainsi évaluer la précision du capteur.

Si les écarts sont substantiels mais pas insurmontables, nous pouvons appliquer des procédures de calibration mathématiques en logiciel pour augmenter la précision des mesures.

Un mot sur la sécurité

Avant d'aller plus loin, il est essentiel de manipuler les produits chimiques utilisés dans ce projet de manière responsable.

Sels utilisés

En général, plus vous pouvez produire d'atmosphères HR pour standards de référence, meilleure sera la caractérisation du capteur testé. Il y a cependant toujours une limite de ressources en pratique. Dans ce projet, quatre standards de référence ont été utilisés et les sels choisis pour produire les standards couvrent une gamme de valeurs HR possibles, mais aussi avec considération pour la sécurité, la disponibilité et le coût.

Les sels ci-dessous ont été choisis. Dans le cas du chlorure de sodium (sel de table), du sel casher pur a été obtenu à bas prix dans une épicerie locale. Si vous suivez cette voie, évitez le sel de table avec additifs, comme l'iode ou agents anti-agglomérants.

Sels utilisés dans le projet
Sel % HR (à 25°C) Source Fiche de sécurité
Chlorure de lithium 11,30 Home Science Tools FDS LiCl
Chlorure de magnésium 32,78 Home Science Tools FDS MgCl
Chlorure de sodium 75,29 Divers (voir texte) FDS NaCl
Chlorure de potassium 84,34 Home Science Tools FDS KCl

Création d'un micro-environnement

Il existe des normes pour presque tout et il y en a même une pour créer une HR stable à partir d'une solution aqueuse (voir ASTM E104 – 02(2012)). Bien que mon établi, et probablement le vôtre, ne soit pas un laboratoire d'essai officiel, il vaut la peine de suivre les spécifications de la norme au plus près possible.

Notez aussi que les résultats présentés dans ce projet, bien que collectés avec soin, ne doivent pas être interprétés comme reflétant ou indiquant une déclaration globale sur la précision d'une marque de capteur. Seuls un petit nombre de capteurs ont été testés et ceux utilisés avaient des âges et des historiques d'utilisation différents.

Pour chaque sel, un mélange pâteux a été créé en ajoutant de l'eau distillée à une consistance similaire à du sable très humide. Quatre ou cinq cuillères à soupe de produit chimique et une cuillère à soupe d'eau distillée peuvent être essayées, mais vous devrez peut-être un peu expérimenter.

Le mélange a été fait dans un petit bocal avec un joint hermétique. Verre ou même plastique devrait bien fonctionner, tant qu'il maintient l'atmosphère à l'intérieur. Un petit trou peut être fait dans le couvercle pour passer les fils de connexion vers l'interface capteur puis vers le microcontrôleur. Le capteur connecté est ensuite positionné à environ 1,5-2,5 cm au-dessus du mélange. Prenez garde que le capteur ne contacte jamais directement la solution ou il sera probablement endommagé. Pour maintenir la connexion en place et sceller le trou du couvercle, de la pâte de contact facilement amovible peut être utilisée.

Il est important de laisser suffisamment de temps pour l'équilibration avant de prendre la lecture finale. J'ai testé ce point empiriquement, prenant des lectures chaque minute jusqu'à six heures dans certains cas. Dans mon expérience, c'était plus long que nécessaire et j'ai retenu 90-120 minutes d'équilibration pour chaque capteur et sel. Puis une moyenne des cinq dernières lectures a été utilisée pour la valeur finale. Pour tous les cas, les cinq valeurs montraient très peu, voire aucune différence.

De plus, toutes les lectures ont été prises à environ 25° C (± 1°) température ambiante, et la valeur HR utilisée pour chaque standard était celle listée pour 25° C (voir ce PDF pour les valeurs).

Capteur HIH5030 sur carte porteuse dans un micro-environnement contenant du chlorure de sodium.

Matériel

Microcontrôleur

Dans ce projet, nous interfaçons les capteurs en utilisant un microcontrôleur Quark D2000. Le D2000 est une carte 3V avec interfaces I2C et analogique-numérique.

Gardez à l'esprit, cependant, que la plupart des autres microcontrôleurs avec les interfaces appropriées peuvent être utilisés.

Interfaces capteurs

Capteurs testés dans le projet ; A) HIH8121, B) HIH5030, C) DHT-22 (AM2302), D) HIH6030 (sur carte porteuse).

Quatre types différents de capteurs d'humidité ont été testés : DHT-22 (deux utilisés), HIH5030, HIH6030 et HIH8121. Les schémas ci-dessous illustrent les interfaces simples utilisées pour chaque type de capteur, et la consultation des fiches techniques liées fournira des informations de base pour les circuits.

Interface DHT-22 vers D2000.

DHT-22 BOM : U1, capteur DHT-22 ; R1, résistance 4,7kΩ ; C1, condensateur 0,1 µF.

Interface HIH5030 vers D2000.

HIH5030 BOM : U1, capteur HIH3050 ; U2, amplificateur MCP601P ; C1, condensateur 1,0 µF ; C2, condensateur 0,1 µF.

Interface HIH6030 vers D2000.

HIH6030 BOM : U1, capteur HIH6030 ; R1 et R2, résistance 2,2 kΩ ; C1, condensateur 0,22 µF ; C2, condensateur 0,1 µF.

Interface HIH8121 vers D2000.

HIH8121 BOM : U1, capteur HIH8121 ; R1 et R2, résistance 2,2 kΩ ; C1, condensateur 0,22 µF.

Logiciel capteur

Tous les programmes pour collecter les données des capteurs sont écrits en langage C et peuvent être téléchargés en cliquant sur le bouton « Humidity Sensor Project Code ». Chacun est commenté et direct. Pour chaque capteur, le programme lit simplement le capteur chaque minute et envoie la valeur à un moniteur série. Ils devraient donc être faciles à adapter à votre application particulière.

Captures d'écran de la sortie de DHT22.c (gauche) et HIH5030.c (droite).

Procédure d'évaluation des capteurs

Le tableau ci-dessous contient les données de l'évaluation des capteurs dans chacun des quatre micro-environnements.

% HR pour les capteurs testés (OBS = valeur observée, ERR = erreur comme différence du standard, RMSE = erreur quadratique moyenne)
DHT #1 DHT #2 HIH5030 HIH6030 HIH8121
HR de référence OBS ERR OBS ERR OBS ERR OBS ERR OBS ERR
11,30 (LiCl) 12,56 1,26 16,29 4,99 13,02 1,72 20,79 9,49 12,31 1,01
32,78 (MgCl) 32,36 -0,42 33,79 1,01 33,46 0,68 40,77 7,99 32,43 -0,35
75,29 (NaCl) 73,04 -2,25 74,50 -0,79 77,74 2,45 83,83 8,54 76,63 1,34
84,34 (KCl) 82,30 -2,04 82,15 -2,19 85,84 1,50 93,43 9,09 85,01 0,67
RMSE 1,657 2,799 1,708 8,796 0,920

Une fois que vous avez collecté les données de performance du capteur dans des environnements stables d'humidité relative connue, vous pouvez évaluer numériquement la précision d'un capteur.

Notez que dans le tableau, nous avons calculé l'erreur pour chaque capteur à chaque standard HR. Nous ne pouvons pas, cependant, simplement moyenniser ces valeurs pour évaluer le capteur car certaines valeurs sont positives et d'autres négatives. Si nous prenions simplement une moyenne, la valeur résultante minimiserait l'erreur moyenne puisque les valeurs positives et négatives s'annuleraient.

Au lieu de cela, nous calculons une erreur quadratique moyenne (RMSE) pour caractériser la précision du capteur. La formule du RMSE est ci-dessous :

où O est la valeur observée du capteur et I est la valeur idéale du capteur (c.-à-d., le standard de référence). Pour calculer le RMSE, nous élevons au carré chaque erreur (l'écart par rapport au standard de référence), puis calculons la moyenne arithmétique de ces valeurs, et enfin prenons la racine carrée de la moyenne.

Une fois que vous avez caractérisé la précision du capteur, vous pouvez utiliser le RMSE pour décider s'il est nécessaire de calibrer le capteur. Dans certains cas, le RMSE est petit et complètement acceptable pour votre application et vous pouvez raisonnablement décider qu'aucune calibration n'est requise.

Par exemple, les résultats pour le HIH8121 sont impressionnants. Le RMSE est inférieur à 1 % et tous les points d'échantillonnage ont une erreur inférieure à 2 %.

D'un autre côté, dans certains cas, vous pouvez constater que la réponse du capteur est si médiocre et irrégulière que vous décidez simplement qu'un autre capteur est requis pour votre application.

La décision de calibrer doit toujours prendre en compte le degré de précision nécessaire pour la tâche. Néanmoins, nous pouvons améliorer la précision des lectures du capteur par calibration, pour tous les capteurs du tableau.

Procédure de calibration du capteur

Pour calibrer un capteur, nous devons d'abord déterminer mathématiquement la fonction qui relie les valeurs idéales aux valeurs observées. Une procédure de régression linéaire peut être utilisée pour déterminer cette fonction.

Le mot « linéaire » dans le nom de la procédure de régression ne signifie pas une fonction linéaire. Au lieu de cela, le terme fait référence à une combinaison linéaire de variables. La fonction résultante peut être linéaire ou curviligne. Les trois fonctions polynomiales ci-dessous représentent toutes une régression linéaire (note : nous ignorons le cas degré 0 qui n'est pas utile dans ce contexte).

  1. y = ax + b (premier degré, linéaire)
  2. y = ax2 + bx + c (deuxième degré, quadratique)
  3. y = ax3 + bx2 + cx + d (troisième degré, cubique)

Dans le projet actuel, nous calculons les valeurs des capteurs en utilisant quatre standards de référence (c.-à-d., n = 4). Ainsi, un polynôme de troisième degré est le polynôme de plus haut degré que nous puissions calculer. Il est toujours vrai que le polynôme de plus haut degré possible est n – 1, et dans ce cas cela signifie 3 (4 – 1).

Les procédures des moindres carrés sont ordinairement utilisées pour la régression linéaire. Dans cette procédure, une ligne est ajustée de sorte que la somme des distances de chaque donnée à la ligne soit aussi petite que possible. Il existe de nombreux programmes disponibles qui utilisent les procédures des moindres carrés pour effectuer la régression linéaire. Vous pouvez même utiliser Excel (cliquez ici pour plus d'informations).

Il convient également de noter que nous n'avons pas à utiliser la régression linéaire. Nous pourrions utiliser la régression non-linéaire. Des exemples de régression non-linéaire aboutissent à une fonction de puissance ou une fonction de Fourier. La régression linéaire, cependant, est bien adaptée aux données de notre projet et, de plus, la correction logicielle (calibration) est facilement implémentée. En fait, dans ce projet, je ne pense pas que vous gagneriez grand-chose en utilisant la régression non-linéaire.

Choix du polynôme

En théorie, nous voulons utiliser le polynôme qui s'ajuste le mieux aux données. C'est-à-dire, le polynôme qui produit le plus petit coefficient de détermination, noté r2 (ou R2, prononcé « R carré »). Plus r2 est proche de 1, meilleur est l'ajustement. Avec l'estimation des moindres carrés, il est toujours vrai que plus le degré du polynôme utilisé est élevé, meilleur est l'ajustement.

Vous n'avez pas, cependant, à utiliser automatiquement le polynôme de plus haut degré possible. Puisque la calibration se fera en logiciel, il peut y avoir des cas où l'utilisation d'un polynôme de degré inférieur représente un avantage en vitesse et/ou mémoire, surtout si la précision gagnée en utilisant un polynôme de degré supérieur est très faible.

Ci-dessous, nous démontrons les procédures de calibration pour le capteur HIH6030 en utilisant des polynômes de différents degrés, et ce faisant, nous illustrerons la procédure générale applicable à tout degré de polynôme que vous choisirez d'utiliser.

En utilisant les données du tableau précédent, nous effectuons d'abord la procédure de régression des moindres carrés pour déterminer les coefficients de chaque polynôme. Ces valeurs proviendront du logiciel de régression utilisé. Les résultats sont ci-dessous, incluant les valeurs de r2.

  1. Linéaire : y = ax + b ; a = 1,0022287, b = -8,9105659, r2 = 0,9996498
  2. Quadratique : y = ax2 + bx + c ; a = -0,0012638, b = 1,1484601, c = -12,0009745, r2 = 0,9999944
  3. Cubique : y = ax3 + bx2 + cx + d ; a = 0,0000076, b = -2,4906103, c = 1,2061971, d = -12,7681425, r2 = 0,9999999

Les valeurs observées peuvent maintenant être modifiées en utilisant les fonctions calculées. C'est-à-dire, les lectures du capteur peuvent être calibrées comme illustré dans le tableau ci-dessous (notez que les valeurs OBS, Corrigé, et ERR sont arrondies à deux décimales).

Valeurs observées et calibrées du HIH6030 en utilisant des polynômes
BRUT 1er Degré 2ème Degré 3ème Degré
HR Ref OBS ERR Corrigé ERR Corrigé ERR Corrigé ERR
11,30 20,79 9,49 11,93 0,63 11,36 0,06 11,30 0,00
32,78 40,77 7,99 31,95 -0,83 32,83 0,05 32,78 0,00
75,29 83,83 8,54 75,11 -0,18 75,85 0,55 75,29 0,00
84,34 93,43 9,09 84,73 0,39 84,83 0,49 84,34 0,00
RMSE 8,795736 0,562146 0,371478 0,00212

On voit que les trois polynômes ont produit une diminution significative du RMSE par rapport aux mesures observées, et c'est pourquoi on calibre. Le graphique ci-dessous illustre l'amélioration en utilisant le polynôme de 1er degré. Notez comment les points de données calibrés (corrigés) se trouvent maintenant près de la diagonale idéale.

Lire plus d'informations….

Comment vérifier et calibrer un capteur d'humidité

Projet / Article actuel peut aussi être trouvé en utilisant :


Processus de fabrication

  1. Capteurs d'humidité : Fonctionnement et applications clés
  2. Raspberry Pi et HDC2010 : guide complet de configuration du capteur I2C température et humidité
  3. Construire un capteur de température distant avec Raspberry Pi et Python – Guide étape par étape
  4. Construire une station météo Raspberry Pi qui envoie les données météo quotidiennes par email
  5. Construire un système de surveillance température et lumière multi-capteurs avec Raspberry Pi et DS18B20
  6. Maîtriser le contrôle des capteurs et actionneurs sur Raspberry Pi : Accéléromètre, Servo et Streaming de données
  7. Construire un système aéroponique automatisé avec Raspberry Pi et capteur d'humidité
  8. Surveillance Précise de Température et Humidité avec SHT15 sur Windows 10 IoT Core
  9. Guide Étape par Étape pour l'Inspection et le Diagnostic des Problèmes de Moteurs CC