Obsah:

Měření teploty a vlhkosti pomocí HDC1000 a fotonu částic: 4 kroky
Měření teploty a vlhkosti pomocí HDC1000 a fotonu částic: 4 kroky

Video: Měření teploty a vlhkosti pomocí HDC1000 a fotonu částic: 4 kroky

Video: Měření teploty a vlhkosti pomocí HDC1000 a fotonu částic: 4 kroky
Video: IQAROS - ukázka měření teploty a vlhkosti ve skladech a výrobnách MICRORISCu 2024, Červenec
Anonim
Image
Image

HDC1000 je digitální snímač vlhkosti s integrovaným snímačem teploty, který poskytuje vynikající přesnost měření při velmi nízkém výkonu. Zařízení měří vlhkost na základě nového kapacitního senzoru. Snímače vlhkosti a teploty jsou kalibrovány z výroby. Je funkční v celém teplotním rozsahu -40 ° C až +125 ° C.

V tomto tutoriálu bylo ukázáno propojení senzorového modulu HDC1000 s fotonem částic. Ke čtení hodnot teploty a vlhkosti jsme použili částice 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

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

1. HDC1000

2. Foton částic

3. Kabel I2C

4. I2C štít pro částicový foton

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í potřebná pro připojení mezi snímačem a fotonem částic. 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í:

HDC1000 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: Kód pro měření teploty a vlhkosti:

Kód pro měření teploty a vlhkosti
Kód pro měření teploty a vlhkosti

Začněme nyní kódem částic.

Při použití senzorového modulu s částicemi zahrnujeme knihovnu application.h a spark_wiring_i2c.h. Knihovna „application.h“a spark_wiring_i2c.h obsahuje funkce, které usnadňují komunikaci i2c mezi senzorem a částicem.

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

#zahrnout

#zahrnout

// Adresa HDC1000 I2C je 0x40 (64)

#define Addr 0x40

dvojnásobek cTemp = 0,0, fTemp = 0,0, vlhkost = 0,0;

int temp = 0, hum = 0;

neplatné nastavení ()

{

// Nastavit proměnnou

Proměnná částice ("i2cdevice", "HDC1000");

Částice.proměnná ("vlhkost", vlhkost);

Particle.variable ("cTemp", cTemp);

// Inicializace komunikace I2C

Wire.begin ();

// Inicializace sériové komunikace, nastavení přenosové rychlosti = 9600

Serial.begin (9600);

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Vyberte konfigurační registr

Wire.write (0x02);

// Teplota, vlhkost povolena, rozlišení = 14 bitů, topení zapnuto

Wire.write (0x30);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (300);

}

prázdná smyčka ()

{

nepodepsaná int data [2];

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Odeslání příkazu měření teploty

Wire.write (0x00);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (500);

// Vyžádejte si 2 bajty dat

Wire.requestFrom (Addr, 2);

// Přečíst 2 bajty dat

// temp msb, temp lsb

pokud (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Převod dat

temp = ((data [0] * 256) + data [1]);

cTemp = (temp / 65536,0) * 165,0 - 40;

fTemp = cTemp * 1,8 + 32;

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Odeslání příkazu měření vlhkosti

Wire.write (0x01);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (500);

// Vyžádejte si 2 bajty dat

Wire.requestFrom (Addr, 2);

// Přečíst 2 bajty dat

// temp msb, temp lsb

pokud (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Převod dat

hukot ((data [0] * 256) + data [1]);

vlhkost = (hum / 65536,0) * 100,0;

// Výstup dat na řídicí panel

Particle.publish („Relativní vlhkost:“, Řetězec (vlhkost));

zpoždění (1000);

Particle.publish ("Teplota ve stupních Celsia:", řetězec (cTemp));

zpoždění (1000);

Particle.publish ("Teplota ve stupních Fahrenheita:", řetězec (fTemp));

zpoždění (1000);

}

Funkce Particle.variable () vytváří proměnné pro uložení výstupu senzoru a funkce Particle.publish () zobrazuje výstup na palubní desce webu.

Výstup snímače je uveden na obrázku výše pro vaši referenci.

Krok 4: Aplikace:

Aplikace
Aplikace

HDC1000 lze použít v topení, větrání a klimatizaci (HVAC), inteligentních termostatech a pokojových monitorech. Tento senzor najde své uplatnění také v tiskárnách, ručních měřičích, zdravotnických prostředcích, nákladní přepravě a v mlze automobilového čelního skla.

Doporučuje: