Obsah:

Měření vlhkosti pomocí HYT939 a Arduino Nano: 4 kroky
Měření vlhkosti pomocí HYT939 a Arduino Nano: 4 kroky

Video: Měření vlhkosti pomocí HYT939 a Arduino Nano: 4 kroky

Video: Měření vlhkosti pomocí HYT939 a Arduino Nano: 4 kroky
Video: KOM21 Měření vlhkosti 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 arduino nano. V tomto tutoriálu je ukázáno propojení senzorového modulu HYT939 s arduino nano.

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

Komunikační protokol, na kterém senzor funguje, je I2C. I2C je zkratka pro interintegrovaný obvod. Jedná se o komunikační protokol, ve kterém probíhá komunikace prostřednictvím linek SDA (sériová data) a SCL (sériové hodiny). Umožňuje připojení více zařízení současně. Je to jeden z nejjednodušších a nejefektivnějších komunikačních protokolů.

Krok 1: Požadovaný hardware:

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

Materiály, které potřebujeme k dosažení našeho cíle, zahrnují následující hardwarové komponenty:

1. HYT939

2. Arduino Nano

3. Kabel I2C

4. I2C štít pro Arduino nano

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 senzorem a arduino nano. 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: Arduino kód pro měření vlhkosti:

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

Začněme nyní kódem Arduinoo.

Při používání senzorového modulu s Arduinem jsme zahrnuli knihovnu Wire.h. Knihovna „Wire“obsahuje funkce, které usnadňují komunikaci i2c mezi senzorem a deskou Arduino.

Celý kód Arduino je pro pohodlí uživatele uveden níže:

#zahrnout

// Adresa HYT939 I2C je 0x28 (40)

#define Addr 0x28

neplatné nastavení ()

{

// Inicializujte komunikaci I2C jako MASTER

Wire.begin ();

// Inicializace sériové komunikace

Serial.begin (9600);

zpoždění (300);

}

prázdná smyčka ()

{

nepodepsaná int data [4];

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

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

Wire.write (0x80);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (300);

// Vyžádejte si 4 bajty dat

Wire.requestFrom (Addr, 4);

// Přečíst 4 bajty dat

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

pokud (Wire.available () == 4)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

data [2] = Wire.read ();

data [3] = Wire.read ();

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

plovoucí vlhkost = (((data [0] & 0x3F) * 256,0) + data [1]) * (100,0 / 16383,0);

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

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

// Výstup dat na sériový monitor

Serial.print („Relativní vlhkost:“);

Sériový tisk (vlhkost);

Serial.println (" %RH");

Serial.print ("Teplota ve stupních Celsia:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Teplota ve stupních Fahrenheita:");

Serial.print (fTemp);

Serial.println ("F");

}

zpoždění (300);

}

V drátové knihovně Wire.write () a Wire.read () slouží k zápisu příkazů a čtení výstupu senzoru. Následující část kódu ukazuje čtení výstupu snímače.

// Přečíst 4 bajty dat // vlhkost msb, vlhkost lsb, temp msb, temp lsb if (Wire.available () == 4) {data [0] = Wire.read (); data [1] = Wire.read (); data [2] = Wire.read (); data [3] = Wire.read ();

}

Výstup snímače je 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: