Sadržaj:

Foton čestica - vodič za temperaturni senzor HDC1000: 4 koraka
Foton čestica - vodič za temperaturni senzor HDC1000: 4 koraka

Video: Foton čestica - vodič za temperaturni senzor HDC1000: 4 koraka

Video: Foton čestica - vodič za temperaturni senzor HDC1000: 4 koraka
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Jun
Anonim
Image
Image

HDC1000 je digitalni senzor vlažnosti s integriranim senzorom temperature koji pruža izvrsnu točnost mjerenja pri vrlo maloj snazi. Uređaj mjeri vlažnost na osnovu novog kapacitivnog senzora. Senzori vlažnosti i temperature su tvornički kalibrirani. Funkcionalan je u rasponu temperatura od -40 ° C do +125 ° C. Evo njegove demonstracije sa česticama fotona.

Korak 1: Šta vam treba..

Sta ti treba..!!
Sta ti treba..!!

1. Foton čestica

2. HDC1000

3. I²C kabel

4. I²C štit za čestice fotona

Korak 2: Povezivanje:

Veza
Veza
Veza
Veza
Veza
Veza
Veza
Veza

Uzmite I2C štit za foton čestice i nježno ga gurnite preko igle fotona čestica.

Zatim spojite jedan kraj I2C kabela na HDC1000 senzor, a drugi kraj na I2C štit.

Veze su prikazane na gornjoj slici.

Korak 3: Kod:

Šifra
Šifra

Kod čestica za HDC1000 može se preuzeti s našeg GitHub spremišta- Dcube Store.

Evo linka za isto:

github.com/DcubeTechVentures/HDC1000…

Tehnički list HDC1000 možete pronaći ovdje:

www.ti.com.cn/cn/lit/ds/symlink/hdc1000.pdf

Za kod čestica koristili smo dvije biblioteke, a to su application.h i spark_wiring_i2c.h. Za olakšavanje I2C komunikacije sa senzorom potrebna je biblioteka Spark_wiring_i2c.

Kôd možete i kopirati odavde, dat je na sljedeći način:

// Distribuirano s licencom za slobodnu volju.

// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.

// HDC1000

// Ovaj kod je dizajniran za rad s HDC1000_I2CS I2C mini modulom dostupnim u Dcube Storeu.

#include

#include

// HDC1000 I2C adresa je 0x40 (64)

#define Addr 0x40

plovak cTemp = 0,0, fTemp = 0,0, vlažnost = 0,0;

int temp = 0, hum = 0;

void setup ()

{

// Postavi varijablu

Particle.variable ("i2cdevice", "HDC1000");

Čestica.varijabilna ("vlažnost", vlažnost);

Particle.variable ("cTemp", cTemp);

// Inicijalizacija I2C komunikacije

Wire.begin ();

// Pokrećemo serijsku komunikaciju, postavljena brzina prijenosa = 9600

Serial.begin (9600);

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr);

// Odabir registra konfiguracije

Wire.write (0x02);

// Temperatura, omogućena vlažnost zraka, razlučivost = 14 bita, grijač uključen

Wire.write (0x30);

// Zaustavljanje I2C prijenosa

Wire.endTransmission ();

kašnjenje (300);

}

void loop ()

{

nepotpisani int podaci [2];

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr);

// Pošaljite naredbu za mjerenje temp

Wire.write (0x00);

// Zaustavljanje I2C prijenosa

Wire.endTransmission ();

kašnjenje (500);

// Zatražite 2 bajta podataka

Wire.requestFrom (Addr, 2);

// Očitavanje 2 bajta podataka

// temp msb, temp lsb

if (Wire.available () == 2)

{

podaci [0] = Wire.read ();

podaci [1] = Wire.read ();

}

// Pretvorimo podatke

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

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

fTemp = cTemp * 1,8 + 32;

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr);

// Pošaljite naredbu za mjerenje vlažnosti

Wire.write (0x01);

// Zaustavljanje I2C prijenosa

Wire.endTransmission ();

kašnjenje (500);

// Zatražite 2 bajta podataka

Wire.requestFrom (Addr, 2);

// Očitavanje 2 bajta podataka

// temp msb, temp lsb

if (Wire.available () == 2)

{

podaci [0] = Wire.read ();

podaci [1] = Wire.read ();

}

// Pretvorimo podatke

hum = ((podaci [0] * 256) + podaci [1]);

vlažnost = (hum / 65536,0) * 100,0;

// Izlaženje podataka na nadzornu ploču

Particle.publish ("Relativna vlažnost:", niz (vlažnost));

Particle.publish ("Temperatura u Celzijusima:", String (cTemp));

Particle.publish ("Temperatura u Fahrenheitu:", String (fTemp));

kašnjenje (1000);

}

Korak 4: Aplikacije:

HDC1000 se može koristiti u grijanju, ventilaciji i klimatizaciji (HVAC), pametnim termostatima i sobnim monitorima. Ovaj senzor također nalazi svoju primjenu u pisačima, ručnim mjeračima, medicinskim uređajima, otpremi tereta, kao i u zamagljivanju vjetrobrana na automobilima.

Preporučuje se: