Obsah:

Měření vlhkosti pomocí HYT939 a Raspberry Pi: 4 kroky
Měření vlhkosti pomocí HYT939 a Raspberry Pi: 4 kroky

Video: Měření vlhkosti pomocí HYT939 a Raspberry Pi: 4 kroky

Video: Měření vlhkosti pomocí HYT939 a Raspberry Pi: 4 kroky
Video: Měřič vlhkosti dřeva Powerfix z Lidlu 2024, Červenec
Anonim
Image
Image

HYT939 je digitální snímač vlhkosti, který pracuje na komunikačním protokolu I2C. Vlhkost je klíčovým parametrem, pokud jde o lékařské systémy a laboratoře, takže abychom dosáhli těchto cílů, pokusili jsme se propojit HYT939 s malinovým pi. V tomto tutoriálu je ukázáno propojení senzorového modulu HYT939 s malinovým pi a bylo také ukázáno jeho programování pomocí jazyka Java.

Ke čtení hodnot vlhkosti jsme použili malinu pi s adaptérem I2c. Tento adaptér I2C umožňuje snadné a spolehlivější připojení k modulu senzoru.

Krok 1: Požadovaný hardware:

Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware

Hardware potřebný k provedení úkolu je následující:

1. HYT939

2. Raspberry Pi

3. Kabel I2C

4. I2C štít pro Raspberry Pi

5. Ethernetový kabel

-

Krok 2: Připojení hardwaru:

Připojení hardwaru
Připojení hardwaru
Připojení hardwaru
Připojení hardwaru

Sekce zapojení hardwaru v zásadě vysvětluje zapojení kabelů požadovaná mezi snímačem a malinovým pi. Zajištění správného připojení je základní nutností při práci na jakémkoli systému pro požadovaný výstup. Požadovaná připojení jsou tedy následující:

HYT939 bude fungovat přes I2C. Zde je příklad schématu zapojení, které ukazuje, jak zapojit jednotlivá rozhraní senzoru.

Po vybalení je deska nakonfigurována pro rozhraní I2C, proto doporučujeme tuto přípojku použít, pokud jste jinak agnostik. Vše, co potřebujete, jsou čtyři dráty!

Jsou vyžadována pouze čtyři připojení Vcc, Gnd, SCL a SDA piny a ty jsou spojeny pomocí kabelu I2C.

Tato spojení jsou ukázána na obrázcích výše.

Krok 3: Java kód pro měření vlhkosti:

Java kód pro měření vlhkosti
Java kód pro měření vlhkosti
Java kód pro měření vlhkosti
Java kód pro měření vlhkosti

Výhodou použití raspberry pi je, že vám poskytuje flexibilitu programovacího jazyka, ve kterém chcete desku programovat, abyste s ní mohli propojit senzor. S využitím této výhody této desky zde předvádíme její programování v Javě. Java kód pro HYT939 lze stáhnout z naší komunity github, kterou je Dcube Store.

Stejně jako pro snadnost uživatelů vysvětlujeme kód také zde:

Jako první krok kódování si musíte stáhnout knihovnu pi4j v případě Java, protože tato knihovna podporuje funkce použité v kódu. Chcete -li si stáhnout knihovnu, můžete navštívit následující odkaz:

pi4j.com/install.html

Pracovní java kód pro tento senzor můžete zkopírovat také zde:

importovat com.pi4j.io.i2c. I2CBus;

importovat com.pi4j.io.i2c. I2CDevice;

importovat com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

veřejná třída HYT939

{

public static void main (String args ) vyvolá výjimku

{

// Vytvořte I2CBus

Sběrnice I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// Získejte zařízení I2C, adresa HYT939 I2C je 0x28 (40)

I2CDevice zařízení = bus.getDevice (0x28);

// Odeslání příkazu normálního režimu

device.write ((byte) 0x80);

Thread.sleep (500);

// Přečíst 4 bajty dat

// vlhkost msb, vlhkost lsb, temp msb, temp lsb

byte data = nový byte [4];

device.read (data, 0, 4);

// Převeďte data na 14 bitů

dvojnásobná vlhkost = (((data [0] & 0x3F) * 256) + (data [1] & 0xFF)) * (100,0 / 16383,0);

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

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

// Výstup dat na obrazovku

System.out.printf ("Relativní vlhkost je: %.2f %% RH %n", vlhkost);

System.out.printf ("Teplota ve stupních Celsia je: %.2f C %n", cTemp);

System.out.printf ("Teplota ve stupních Fahrenheita je: %.2f F %n", fTemp);

}

}

Knihovna, která usnadňuje i2c komunikaci mezi senzorem a deskou, je pi4j, její různé balíčky I2CBus, I2CDevice a I2CFactory pomáhají navázat spojení.

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

Funkce write () a read () se používají k zápisu některých konkrétních příkazů do senzoru, aby fungoval v určitém režimu a čtení výstupu senzoru. Následující část kódu ukazuje použití těchto funkcí.

// Odeslání příkazu normálního režimu device.write ((byte) 0x80); Thread.sleep (500); // Přečíst 4 bajty dat // vlhkost msb, vlhkost lsb, temp msb, temp lsb byte data = nový byte [4]; device.read (data, 0, 4);

Výstup snímače je také zobrazen na obrázku výše.

Krok 4: Aplikace:

Aplikace
Aplikace

HYT939 jako účinný digitální snímač vlhkosti se používá v lékařských systémech, autoklávech. Tento senzorový modul také využívá měření tlakového rosného bodu a systémy sušení. V různých laboratořích, kde je klíčovým parametrem pro provádění experimentů příslušná úroveň vlhkosti, lze tento senzor tam nasadit pro měření vlhkosti.

Doporučuje: