Turinys:

Dalelių fotonas - HDC1000 temperatūros jutiklio pamoka: 4 žingsniai
Dalelių fotonas - HDC1000 temperatūros jutiklio pamoka: 4 žingsniai

Video: Dalelių fotonas - HDC1000 temperatūros jutiklio pamoka: 4 žingsniai

Video: Dalelių fotonas - HDC1000 temperatūros jutiklio pamoka: 4 žingsniai
Video: Ar šviesa yra banga ar dalelė? | Fizika prie kavos 2024, Rugsėjis
Anonim
Image
Image

„HDC1000“yra skaitmeninis drėgmės jutiklis su integruotu temperatūros jutikliu, kuris užtikrina puikų matavimo tikslumą esant labai mažai galiai. Prietaisas matuoja drėgmę remdamasis nauju talpiniu jutikliu. Drėgmės ir temperatūros jutikliai yra sukalibruoti gamykloje. Jis veikia nuo -40 ° C iki +125 ° C temperatūros diapazone. Čia yra jo demonstravimas su dalelių fotonu.

1 žingsnis: ko jums reikia..

Ko tau reikia..!!
Ko tau reikia..!!

1. Dalelių fotonas

2. HDC1000

3. I²C kabelis

4. I²C skydas dalelių fotonui

2 veiksmas: prijungimas:

Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys

Paimkite dalelių fotono I2C skydą ir švelniai stumkite jį ant dalelių fotono kaiščių.

Tada vieną I2C kabelio galą prijunkite prie HDC1000 jutiklio, o kitą - prie I2C skydo.

Sujungimai parodyti aukščiau esančiame paveikslėlyje.

3 žingsnis: kodas:

Kodas
Kodas

HDC1000 dalelių kodą galima atsisiųsti iš mūsų „GitHub“saugyklos- „Dcube Store“.

Čia yra nuoroda į tą patį:

github.com/DcubeTechVentures/HDC1000…

HDC1000 duomenų lapą rasite čia:

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

Dalelių kodui panaudojome dvi bibliotekas - application.h ir spark_wiring_i2c.h. Norint palengvinti I2C ryšį su jutikliu, reikalinga „Spark_wiring_i2c“biblioteka.

Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:

// Platinama su laisvos valios licencija.

// Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka susijusių darbų licencijas.

// HDC1000

// Šis kodas skirtas dirbti su „HDC1000_I2CS I2C Mini“moduliu, kurį galima įsigyti „Dcube Store“.

#įtraukti

#įtraukti

// HDC1000 I2C adresas yra 0x40 (64)

#define Addr 0x40

plūdė cTemp = 0,0, fTemp = 0,0, drėgmė = 0,0;

int temp = 0, hum = 0;

negaliojanti sąranka ()

{

// Nustatyti kintamąjį

Particle.variable („i2cdevice“, „HDC1000“);

Dalelė.kintamas ("drėgmė", drėgmė);

Particle.variable ("cTemp", cTemp);

// Inicijuoti I2C komunikaciją

Wire.begin ();

// Inicijuoti serijinį ryšį, nustatyti duomenų perdavimo spartą = 9600

Serial.begin (9600);

// Pradėti I2C perdavimą

Wire.beginTransmission (Addr);

// Pasirinkite konfigūracijos registrą

Wire.write (0x02);

// Temperatūra, įjungta drėgmė, rezoliucija = 14 bitų, šildytuvas įjungtas

Wire.write (0x30);

// Sustabdyti I2C perdavimą

Wire.endTransmission ();

vėlavimas (300);

}

tuštumos kilpa ()

{

nepasirašyti int duomenys [2];

// Pradėti I2C perdavimą

Wire.beginTransmission (Addr);

// Siųsti temperatūros matavimo komandą

Wire.write (0x00);

// Sustabdyti I2C perdavimą

Wire.endTransmission ();

vėlavimas (500);

// Prašyti 2 baitų duomenų

Wire.requestFrom (Addr, 2);

// Skaityti 2 baitus duomenų

// temp msb, temp lsb

jei (Wire.available () == 2)

{

duomenys [0] = Wire.read ();

duomenys [1] = Wire.read ();

}

// Konvertuoti duomenis

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

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

fTemp = cTemp * 1,8 + 32;

// Pradėti I2C perdavimą

Wire.beginTransmission (Addr);

// Siųsti drėgmės matavimo komandą

Wire.write (0x01);

// Sustabdyti I2C perdavimą

Wire.endTransmission ();

vėlavimas (500);

// Prašyti 2 baitų duomenų

Wire.requestFrom (Addr, 2);

// Skaityti 2 baitus duomenų

// temp msb, temp lsb

jei (Wire.available () == 2)

{

duomenys [0] = Wire.read ();

duomenys [1] = Wire.read ();

}

// Konvertuoti duomenis

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

drėgmė = (hum / 65536,0) * 100,0;

// Išvesti duomenis į prietaisų skydelį

Particle.publish ("Santykinė drėgmė:", Styga (drėgmė));

Particle.publish ("Temperatūra Celsijaus laipsniais:", Styga (cTemp));

Particle.publish ("Temperatūra Farenheitu:", Styga (fTemp));

vėlavimas (1000);

}

4 žingsnis: programos:

HDC1000 gali būti naudojamas šildymui, vėdinimui ir oro kondicionavimui (ŠVOK), išmaniesiems termostatams ir kambario monitoriams. Šis jutiklis taip pat naudojamas spausdintuvuose, rankiniuose matuokliuose, medicinos prietaisuose, krovinių gabenime ir automobilių priekinio stiklo rūke.

Rekomenduojamas: