En savoir plus... sur le capteur d'humidité

Retour à la page "Capteurs sur entrées analogiques"

Généralement, pour obtenir une valeur correcte de l'humidité relative, il faut connaître aussi la température du milieu ambiant mesuré. Si l'on observe les données techniques, on peut relever (page 4) la différence du taux d'humidité mesuré pour une température ambiante de 0°C, 25°C et 70°C. Pour un taux de 40%, à une température de 25°C on obtient 2V, à une température de 0°C on lit environ 2,1V et pour une température de 70°C, on relève environ 1,9V. L'écart est faible...

Petit rappel:

La tension reçue sur une entrée analogique peut varier de 0V à 5V. Le microcontrôleur convertit immédiatement cette valeur analogique en numérique. Il affecte respectivement une valeur allant de 0 à 256 pour une tension de 0V à 5V. Donc, si sur une entrée se présente une tension de 2V, la valeur numérique sera de 102 (2x256/5)... un simple calcul de proportion. Inversement, pour chaque valeur numérique correspond une tension de 0,0195V (5/256).

Comment convertir la tension délivrée par ce capteur en % d'humidité?

En page 2 des caractéristiques techniques de ce composant on peut lire la formule suivante : RH(%)=(Vout-0,826)/0,0315

0,826 correspond à l'offset, la droite ne passe pas par "0" mais est décalée vers le haut de 0,826V

0,0315 correspond à la pente de la droite

Maintenant, il s'agit de traduire cette formule... Le microcontrôleur convertit immédiatement la tension d'entrée en numérique, on ne peut donc utiliser les valeurs en volt (on ne mélange pas les torchons et les bavoirs... ;-))

La valeur numérique de 0,826 est donc 42 (0,826/0,0195)

La valeur numérique de 0,0315 est donc 1,62 (0,0315/0,0195)

Donc la formule serait : RH(%) = ValNumCaptHum – 42 / 1,62 (ValNumCaptHum : Valeur Numérique du Capteur d'Humidité)

Oui, mais... les nombres à virgule ne peuvent être calculés.... ahah... contournons le problème en multipliant par 100, puis en divisant par 162... ce qui nous donne... enfin... la formule

Hum(%) = ValNumCaptHum – 42 * 100 / 162

La commande à utiliser pour lire une valeur analogique est "readadc" qui place la valeur convertie en numérique dans une variable, par exemple "b0", donc :

Hum(%) = b0 – 42 * 100 / 162

Retour à la page "Capteurs sur entrées analogiques"