Table des matières:

Mesure de l'humidité à l'aide du HYT939 et du Raspberry Pi : 4 étapes
Mesure de l'humidité à l'aide du HYT939 et du Raspberry Pi : 4 étapes

Vidéo: Mesure de l'humidité à l'aide du HYT939 et du Raspberry Pi : 4 étapes

Vidéo: Mesure de l'humidité à l'aide du HYT939 et du Raspberry Pi : 4 étapes
Vidéo: Monitoring temperature and humidity using the Particle Photon 2024, Novembre
Anonim
Image
Image

HYT939 est un capteur d'humidité numérique qui fonctionne sur le protocole de communication I2C. L'humidité est un paramètre essentiel lorsqu'il s'agit de systèmes médicaux et de laboratoires. Afin d'atteindre ces objectifs, nous avons donc essayé d'interfacer HYT939 avec raspberry pi. Dans ce tutoriel, l'interfaçage du module capteur HYT939 avec raspberry pi est démontré et sa programmation à l'aide du langage Java a également été illustrée.

Pour lire les valeurs d'humidité, nous avons utilisé raspberry pi avec un adaptateur I2c. Cet adaptateur I2C rend la connexion au module capteur facile et plus fiable.

Étape 1: Matériel requis:

Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis

Le matériel requis pour accomplir la tâche est le suivant:

1. HYT939

2. Framboise Pi

3. Câble I2C

4. Bouclier I2C pour Raspberry Pi

5. Câble Ethernet

-

Étape 2: connexion matérielle:

Raccordement matériel
Raccordement matériel
Raccordement matériel
Raccordement matériel

La section de raccordement matériel explique essentiellement les connexions de câblage requises entre le capteur et le raspberry pi. Assurer des connexions correctes est la nécessité de base tout en travaillant sur n'importe quel système pour la sortie souhaitée. Ainsi, les connexions requises sont les suivantes:

Le HYT939 fonctionnera sur I2C. Voici l'exemple de schéma de câblage, montrant comment câbler chaque interface du capteur.

Prête à l'emploi, la carte est configurée pour une interface I2C, en tant que telle, nous vous recommandons d'utiliser cette connexion si vous êtes par ailleurs agnostique. Tout ce dont vous avez besoin, c'est de quatre fils !

Seules quatre connexions sont nécessaires pour les broches Vcc, Gnd, SCL et SDA et celles-ci sont connectées à l'aide d'un câble I2C.

Ces connexions sont illustrées dans les images ci-dessus.

Étape 3: Code Java pour la mesure de l'humidité:

Code Java pour la mesure de l'humidité
Code Java pour la mesure de l'humidité
Code Java pour la mesure de l'humidité
Code Java pour la mesure de l'humidité

L'avantage d'utiliser raspberry pi est qu'il vous offre la flexibilité du langage de programmation dans lequel vous souhaitez programmer la carte afin d'interfacer le capteur avec elle. Exploitant cet avantage de cette carte, nous démontrons ici sa programmation en Java. Le code java pour HYT939 peut être téléchargé depuis notre communauté github qui est Dcube Store.

En plus de la facilité des utilisateurs, nous expliquons le code ici également:

Comme première étape de codage, vous devez télécharger la bibliothèque pi4j dans le cas de Java, car cette bibliothèque prend en charge les fonctions utilisées dans le code. Donc, pour télécharger la bibliothèque, vous pouvez visiter le lien suivant:

pi4j.com/install.html

Vous pouvez également copier le code Java fonctionnel de ce capteur à partir d'ici:

importer com.pi4j.io.i2c. I2CBus;

importer com.pi4j.io.i2c. I2CDevice;

importer com.pi4j.io.i2c. I2CFactory;

importer java.io. IOException;

classe publique HYT939

{

public static void main(String args) lève une exception

{

// Créer I2CBus

Bus I2CBus = I2CFactory.getInstance(I2CBus. BUS_1);

// Obtenir le périphérique I2C, l'adresse I2C HYT939 est 0x28 (40)

Périphérique I2CDevice = bus.getDevice (0x28);

// Envoie la commande en mode normal

device.write((byte)0x80);

Thread.sleep(500);

// Lecture de 4 octets de données

// humidité msb, humidité lsb, temp msb, temp lsb

octet données = nouvel octet[4];

device.read(données, 0, 4);

// Convertir les données en 14 bits

double humidité = (((data[0] & 0x3F) * 256) + (data[1] & 0xFF)) * (100.0 / 16383.0);

double cTemp = ((((données[2] & 0xFF) * 256) + (données[3] & 0xFC)) / 4) * (165,0 / 16383,0) - 40;

double fTemp = (cTemp * 1,8) + 32;

// Sortie des données à l'écran

System.out.printf("L'humidité relative est: %.2f %%RH %n", humidité);

System.out.printf("La température en Celsius est: %.2f C %n", cTemp);

System.out.printf("La température en Fahrenheit est: %.2f F %n", fTemp);

}

}

La librairie qui facilite la communication i2c entre le capteur et la carte est pi4j, ses différents packages I2CBus, I2CDevice et I2CFactory aident à établir la connexion.

importer com.pi4j.io.i2c. I2CBus;importer com.pi4j.io.i2c. I2CDevice; importer com.pi4j.io.i2c. I2CFactory; importer java.io. IOException;

Les fonctions write() et read() sont utilisées pour écrire des commandes particulières sur le capteur pour le faire fonctionner dans un mode particulier et lire respectivement la sortie du capteur. La partie suivante du code illustre l'utilisation de ces fonctions.

// Envoie la commande en mode normal device.write((byte)0x80); Thread.sleep(500); // Lecture de 4 octets de données // humidité msb, humidité lsb, temp msb, temp lsb byte data = new byte[4]; device.read(données, 0, 4);

La sortie du capteur est également montrée dans l'image ci-dessus.

Étape 4: Candidatures:

Applications
Applications

HYT939 étant un capteur d'humidité numérique efficace, il est utilisé dans les systèmes médicaux, les autoclaves. La mesure du point de rosée sous pression et les systèmes de séchage trouvent également l'utilisation de ce module de capteur. Dans divers laboratoires où le niveau d'humidité approprié est un paramètre essentiel pour mener des expériences, ce capteur peut y être déployé pour les mesures d'humidité.

Conseillé: