Բովանդակություն:

Particle Photon - HDC1000 ջերմաստիճանի տվիչի ձեռնարկ ՝ 4 քայլ
Particle Photon - HDC1000 ջերմաստիճանի տվիչի ձեռնարկ ՝ 4 քայլ

Video: Particle Photon - HDC1000 ջերմաստիճանի տվիչի ձեռնարկ ՝ 4 քայլ

Video: Particle Photon - HDC1000 ջերմաստիճանի տվիչի ձեռնարկ ՝ 4 քայլ
Video: Particle Photon - HDC1000 Temperature Sensor Tutorial 2024, Նոյեմբեր
Anonim
Image
Image

HDC1000- ը թվային խոնավության տվիչ է `ինտեգրված ջերմաստիճանի տվիչով, որն ապահովում է չափման գերազանց ճշգրտություն շատ ցածր էներգիայի դեպքում: Սարքը չափում է խոնավությունը `հիմնված նոր հզորունակության տվիչի վրա: Խոնավության և ջերմաստիճանի տվիչները գործարանային չափագրված են: Այն գործում է ամբողջ -40 ° C- ից +125 ° C ջերմաստիճանի սահմաններում: Ահա դրա ցուցադրումը մասնիկ ֆոտոնով:

Քայլ 1: Այն, ինչ ձեզ հարկավոր է..

Այն, ինչ ձեզ պետք է.. !!
Այն, ինչ ձեզ պետք է.. !!

1. Ֆոտոն մասնիկ

2. HDC1000

3. I²C մալուխ

4. I²C վահան մասնիկի ֆոտոնի համար

Քայլ 2: Միացում

Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում

Վերցրեք I2C վահանը մասնիկի ֆոտոնի համար և նրբորեն մղեք այն մասնիկի ֆոտոնի կապանքների վրա:

Այնուհետև I2C մալուխի մի ծայրը միացրեք HDC1000 սենսորին, իսկ մյուս ծայրը ՝ I2C վահանին:

Կապերը ցուցադրվում են վերևի նկարում:

Քայլ 3: Կոդ

Կոդ
Կոդ

HDC1000- ի մասնիկների ծածկագիրը կարելի է ներբեռնել մեր GitHub շտեմարանից `Dcube Store- ից:

Ահա նույնի հղումը.

github.com/DcubeTechVentures/HDC1000…

HDC1000- ի տվյալների թերթիկը կարելի է գտնել այստեղ ՝

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

Մասնիկների կոդի համար մենք օգտագործել ենք երկու գրադարան, որոնք են application.h և spark_wiring_i2c.h: Spark_wiring_i2c գրադարանը պահանջվում է սենսորի հետ I2C հաղորդակցությունը հեշտացնելու համար:

Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.

// Տարածված է ազատ կամքի լիցենզիայով:

// Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:

// HDC1000

// Այս ծածկագիրը նախատեսված է Dcube Store- ում առկա HDC1000_I2CS I2C մինի մոդուլի հետ աշխատելու համար:

#ներառում

#ներառում

// HDC1000 I2C հասցեն ՝ 0x40 (64)

#սահմանեք Addr 0x40

բոց cTemp = 0.0, fTemp = 0.0, խոնավություն = 0.0;

int temp = 0, hum = 0;

դատարկ կարգավորում ()

{

// Սահմանել փոփոխական

Particle.variable («i2cdevice», «HDC1000»);

Մասնիկ. Փոփոխական («խոնավություն», խոնավություն);

Particle.variable («cTemp», cTemp);

// Նախնականացնել I2C հաղորդակցությունը

Wire.begin ();

// Սկզբնականացնել սերիական հաղորդակցությունը, սահմանել բաուդ արագություն = 9600

Serial.begin (9600);

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ընտրեք կազմաձևման գրանցամատյան

Wire.write (0x02);

// Temերմաստիճանը, խոնավությունը միացված է, լուծումը = 14 բիթ, վառարանը միացված է

Wire.write (0x30);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

ուշացում (300);

}

դատարկ շրջան ()

{

անստորագիր int տվյալներ [2];

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ուղարկել ջերմաստիճանի չափման հրաման

Wire.write (0x00);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

ուշացում (500);

// Պահանջել 2 բայթ տվյալներ

Մետաղալար. Խնդրում ենք (Addr, 2);

// Կարդացեք 2 բայթ տվյալներ

// temp msb, temp lsb

եթե (Wire.available () == 2)

{

տվյալներ [0] = Wire.read ();

տվյալներ [1] = Wire.read ();

}

// Փոխարկել տվյալները

temp = ((տվյալներ [0] * 256) + տվյալներ [1]);

cTemp = (temp / 65536.0) * 165.0 - 40;

fTemp = cTemp * 1.8 + 32;

// Սկսել I2C փոխանցումը

Wire.beginTransmission (Addr);

// Ուղարկել խոնավության չափման հրաման

Wire.write (0x01);

// Դադարեցնել I2C փոխանցումը

Wire.endTransmission ();

ուշացում (500);

// Պահանջել 2 բայթ տվյալներ

Մետաղալար. Խնդրում ենք (Addr, 2);

// Կարդացեք 2 բայթ տվյալներ

// temp msb, temp lsb

եթե (Wire.available () == 2)

{

տվյալներ [0] = Wire.read ();

տվյալներ [1] = Wire.read ();

}

// Փոխարկել տվյալները

հում = ((տվյալներ [0] * 256) + տվյալներ [1]);

խոնավություն = (բզզոց / 65536.0) * 100.0;

// Տվյալների մուտքագրում վահանակ

Particle.publish ("Հարաբերական խոնավություն.", String (խոնավություն));

Particle.publish ("Cերմաստիճանը Celsius:", լարային (cTemp));

Particle.publish ("ahերմաստիճանը Ֆարենհայտում.", Լարային (fTemp));

ուշացում (1000);

}

Քայլ 4: Դիմումներ

HDC1000- ը կարող է օգտագործվել ջեռուցման, օդափոխման և օդորակման (HVAC), խելացի ջերմաչափերի և սենյակի մոնիտորների մեջ: Այս սենսորը նաև իր կիրառությունն է գտնում Տպիչների, Ձեռքի հաշվիչների, Բժշկական սարքերի, Բեռների առաքման, ինչպես նաև Ավտոմոբիլային դիմապակու պղտորման մեջ:

Խորհուրդ ենք տալիս: