Obsah:

Meranie vlhkosti pomocou HYT939 a Raspberry Pi: 4 kroky
Meranie vlhkosti pomocou HYT939 a Raspberry Pi: 4 kroky

Video: Meranie vlhkosti pomocou HYT939 a Raspberry Pi: 4 kroky

Video: Meranie vlhkosti pomocou HYT939 a Raspberry Pi: 4 kroky
Video: Часть 5 - Аудиокнига Уолдена Генри Дэвида Торо (глы 12–15) 2024, November
Anonim
Image
Image

HYT939 je digitálny snímač vlhkosti, ktorý pracuje na komunikačnom protokole I2C. Vlhkosť je kľúčovým parametrom, pokiaľ ide o lekárske systémy a laboratóriá, takže aby sme dosiahli tieto ciele, pokúsili sme sa prepojiť HYT939 s malinovou pi. V tomto návode je demonštrované prepojenie senzorového modulu HYT939 s malinou pi a bolo ukázané aj jeho programovanie v jazyku Java.

Na čítanie hodnôt vlhkosti sme použili malinu pi s adaptérom I2c. Vďaka tomuto adaptéru I2C je pripojenie k senzorovému modulu jednoduché a spoľahlivejšie.

Krok 1: Potrebný hardvér:

Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér

Hardvér, ktorý je potrebný na splnenie úlohy, je nasledujúci:

1. HYT939

2. Raspberry Pi

3. Kábel I2C

4. I2C štít pre Raspberry Pi

5. Ethernetový kábel

-

Krok 2: Pripojenie hardvéru:

Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru

Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi senzorom a malinovým pi. Zabezpečenie správneho pripojenia je základnou potrebou pri práci na akomkoľvek systéme s požadovaným výstupom. Potrebné spojenia sú teda tieto:

HYT939 bude fungovať cez I2C. Tu je príklad schémy zapojenia, ktorá ukazuje, ako prepojiť každé rozhranie snímača.

Hneď po vybalení je doska nakonfigurovaná na rozhranie I2C, preto vám toto pripojenie odporúčame použiť, ak ste inak agnostik. Všetko, čo potrebujete, sú štyri drôty!

Vyžadujú sa iba štyri pripojenia Vcc, Gnd, SCL a SDA piny, ktoré sú prepojené pomocou kábla I2C.

Tieto spojenia sú znázornené na obrázkoch vyššie.

Krok 3: Java kód na meranie vlhkosti:

Java kód na meranie vlhkosti
Java kód na meranie vlhkosti
Java kód na meranie vlhkosti
Java kód na meranie vlhkosti

Výhodou použitia maliny pi je, že vám poskytuje flexibilitu programovacieho jazyka, v ktorom chcete dosku programovať, aby ste s ňou mohli prepojiť senzor. S využitím tejto výhody tejto dosky tu demonštrujeme jej programovanie v Jave. Java kód pre HYT939 si môžete stiahnuť z našej komunity github, ktorou je Dcube Store.

Rovnako ako pre jednoduchosť používateľov, vysvetľujeme kód aj tu:

Ako prvý krok kódovania si musíte stiahnuť knižnicu pi4j v prípade jazyka Java, pretože táto knižnica podporuje funkcie použité v kóde. Ak si chcete stiahnuť knižnicu, môžete navštíviť nasledujúci odkaz:

pi4j.com/install.html

Pracovný kód java pre tento senzor môžete skopírovať aj tu:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

verejná trieda HYT939

{

public static void main (String args ) hodí výnimku

{

// Vytvorte I2CBus

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

// Získať zariadenie I2C, adresa HYT939 I2C je 0x28 (40)

I2CDevice zariadenie = bus.getDevice (0x28);

// Odoslanie príkazu normálneho režimu

device.write ((byte) 0x80);

Thread.sleep (500);

// Prečítajte 4 bajty údajov

// vlhkosť msb, vlhkosť lsb, temp msb, temp lsb

bajt dáta = nový bajt [4];

device.read (údaje, 0, 4);

// Previesť údaje na 14-bitové

dvojnásobná vlhkosť = (((údaje [0] & 0x3F) * 256) + (údaje [1] a 0xFF)) * (100,0 / 16383,0);

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

dvojnásobok fTemp = (cTemp * 1,8) + 32;

// Výstup údajov na obrazovku

System.out.printf ("Relatívna vlhkosť je: %.2f %% relatívna vlhkosť %n", vlhkosť);

System.out.printf ("Teplota v stupňoch Celzia je: %.2f C %n", cTemp);

System.out.printf ("Teplota vo Fahrenheite je: %.2f F %n", fTemp);

}

}

Knižnica, ktorá uľahčuje komunikáciu i2c medzi senzorom a doskou, je pi4j a jej rôzne balíky I2CBus, I2CDevice a I2CFactory pomáhajú nadviazať spojenie.

importovať com.pi4j.io.i2c. I2CBus; importovať com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException;

Funkcie write () a read () sa používajú na zápis niektorých konkrétnych príkazov do snímača, aby fungoval v konkrétnom režime, respektíve na čítanie výstupu snímača. Nasledujúca časť kódu ukazuje použitie týchto funkcií.

// Odoslanie príkazu v normálnom režime device.write ((byte) 0x80); Thread.sleep (500); // Prečítajte 4 bajty dát // vlhkosť msb, vlhkosť lsb, temp msb, temp lsb byte data = nový byte [4]; device.read (údaje, 0, 4);

Výstup senzora je tiež zobrazený na obrázku vyššie.

Krok 4: Aplikácie:

Aplikácie
Aplikácie

HYT939 ako účinný digitálny snímač vlhkosti sa používa v lekárskych systémoch, autoklávoch. Tento senzorový modul využíva aj systém merania tlaku a rosného bodu a sušičky. V rôznych laboratóriách, kde je kľúčovým parametrom na vykonávanie experimentov príslušná úroveň vlhkosti, je možné tento senzor tam nasadiť na meranie vlhkosti.

Odporúča: