6) Notes diverses
Positionnement du capteur
Pour des mesures précises de l'humidité de l'air, le capteur doit placé à l'ombre, à
l'abri de la pluie et dans un endroit où l'air à mesurer circule librement. Il doit être aussi éloigné que
possible de toutes surfaces exposées au soleil qui fausseraient ainsi les mesures en créant
des micro-climats. En effet, pour une même quantité d'humidité absolue, l'air se réchauffant
au contact d'une surface aura une humidité relative plus basse. Si on ne peut pas éviter ces
micro-climats dans le positionnement du capteur, on peut compenser partiellement ce phénomène
pour autant qu'on dispose d'une mesure fiable de la température de l'air (voir ci-dessous).
Contrairement au capteur de température, le capteur d'humidité ne peut pas être rendu étanche.
Il doit être positionné à l'abri de l'eau et des poussières ou pollutions importantes, tout en
ayant accès à l'air qui doit être mesuré. Il conviendra donc de placer le circuit électronique du
capteur à l'intérieur d'un boîtier avec des trous de ventilation.
Autres usages
Les usages sont multiples, notamment partout où l'humidité présente un risque lorsqu'elle pas
située entre des limites acceptables (dépot d'oeuvres d'art, de produits périssables, serres maraîchères,
agriculture, étables, etc).
Mesure de la température et de l'humidité avec le même capteur
Le capteur d'humidité fournit aussi la température et avec
une petite modification des scripts on pourra tracer les deux courbes avec ce seul capteur.
Cependant, le capteur de température est plus facile à positionner et est étanche, et il sera souvent
plus facile d'utiliser deux capteurs séparés. Pour faire une lecture séparée de la température et de
l'humidité avec le seul capteur d'humidité, on peut utiliser les commandes suivantes:
./digitemp -q -t 3 | cut -d" " -f7
(température).
./digitemp -q -t 3 -H"%h"
(humidité).
Dans cet exemple, le capteur est le quatrième dans le fichier de configuration .digitemp.
Plusieurs capteurs sur le même bus 1-Wire
Chaque capteur possède une identification unique sur 64 bits. Ces identifications sont programmées à la fabrication
des circuits: DS2438 pour le capteur d'humidité et
DS18S20 pour le capteur de température. Il est donc possible de
monter plusieurs capteurs en parallèle sur un même bus 1-Wire, le logiciel
d'acquisition devant adresser chaque capteur à tour de rôle pour en récupérer les valeurs. Avec
Digitemp, lorsqu'on exécute la commande:
./digitemp -i -s /dev/ttyS0
GNU Public License v2.0 - http://www.brianlane.com
Turning off all DS2409 Couplers
...
Searching the 1-Wire LAN
1008AC4D00080043 : DS1820/DS18S20/DS1920 Temperature Sensor
10FFD83A000800E8 : DS1820/DS18S20/DS1920 Temperature Sensor
261F7F5500000045 : DS2438 Temperature, A/D Battery Monior
ROM #0 : 1008AC4D00080043
ROM #1 : 10FFD83A000800E8
ROM #2 : 261F7F5500000045
Wrote .digitemprc
le logiciel crée un fichier de configuration .digitemprc contenant
les adresses des capteurs branchés sur le bus (dans cet example, 2 capteurs de température
et 1 capteur d'humidité). Ensuite, avec la commande suivante on fera une lecture des valeurs de tous les capteurs.
./digitemp -a
DigiTemp v3.3.2 Copyright 1996-2004 by Brian C. Lane
GNU Public License v2.0 - http://www.brianlane.com
Nov 07 09:25:59 Sensor 0 C: 22.50 F: 72.50
Nov 07 09:26:01 Sensor 1 C: 8.56 F: 47.41
Nov 07 09:26:03 Sensor 2 C: 9.94 F: 49.89 H: 62%
Afin de différencier la provenance des mesures obtenues, on peut simplement écrire ces
résultats dans un fichier que l'on parcourra avec un script pour y extraire les données de chaque
capteur. C'est la méthode préférée pour un grand nombre de capteurs. On peut aussi, à partir du fichier
de configuration original .digitemprc, créer un fichier de configuration
unique à chaque capteur sous un nouveau nom et lancer la commande avec l'option
-c pour lire chaque capteur indépendamment. C'est cette
méthode que j'ai utilisé pour tracer les courbes graphiques de température et d'humidité.
On trouvera le script ici. Enfin, troisième méthode, on garde un fichier de
configuration unique et
on utilise l'option -t de digitemp.
Correction de température
Il arrive qu'on ne peut pas placer le capteur d'humidité à l'endroit souhaité, alors qu'on
peut y placer une sonde température, et que l'air qu'on mesure, bien que contenant la même
humidité absolue, a une température différente et par conséquant une valeur d'humidité relative
faussée. Dans certaines conditions, de petites variations de température peuvent provoquer
des variations importantes de l'humidité relative. La formule ci-dessous permet de calculer
la valeur de l'humidité relative compensée pour la température.
HR2 = (HR1 * e^x1)/e^x2
où:
x1 = T1 * 0.06235398 et x2 = T2 * 0.06235398
où nous avons: HR2=humidité relative compensée, HR1=humidité relative mesurée,
T1=température de l'air au point de la mesure, T2=température de l'air au
point souhaité de mesure, e=2.7183...