Բովանդակություն:
Video: Raspberry Pi HTS221 Հարաբերական խոնավության և ջերմաստիճանի ցուցիչ Java ձեռնարկ. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
HTS221- ը ծայրահեղ կոմպակտ տարողունակ թվային սենսոր է հարաբերական խոնավության և ջերմաստիճանի համար: Այն ներառում է զգայուն տարր և խառը ազդանշանների կիրառման հատուկ ինտեգրալ միացում (ASIC) `թվային սերիական միջերեսների միջոցով չափման տեղեկատվությունը տրամադրելու համար: Ինտեգրված այսքան շատ հատկանիշներով սա խոնավության և ջերմաստիճանի կրիտիկական չափումների ամենահարմար սենսորներից է: Ահա java կոդով ցուցադրումը ՝ օգտագործելով Raspberry Pi- ն:
Քայլ 1: Այն, ինչ ձեզ հարկավոր է..
1. Ազնվամորի Պի
2. HTS221
3. I²C մալուխ
4. I²C Shield ազնվամորի Pi- ի համար
5. Ethernet մալուխ
Քայլ 2: Միացումներ
Վերցրեք I2C վահան ազնվամորու pi- ի համար և նրբորեն մղեք այն ազնվամորի pi- ի gpio կապանքների վրա:
Այնուհետև I2C մալուխի մի ծայրը միացրեք HTS221 սենսորին, իսկ մյուս ծայրը ՝ I2C վահանին:
Միացրեք Ethernet մալուխը pi- ին կամ կարող եք օգտագործել WiFi մոդուլ:
Կապերը ցուցադրվում են վերևի նկարում:
Քայլ 3: Կոդ
HTS221- ի համար պիթոնի ծածկագիրը կարելի է ներբեռնել մեր github պահոցից `Dcube Store- ից
Ահա նույնի հղումը.
github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java
Մենք օգտագործել ենք pi4j գրադարանը java կոդի համար, ազնվամորի pi- ի վրա pi4j տեղադրելու քայլերը նկարագրված են այստեղ.
pi4j.com/install.html
Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.
// Տարածված է ազատ կամքի լիցենզիայով:
// Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:
// HTS221
// Այս ծածկագիրը նախատեսված է HTS221_I2CS I2C մինի մոդուլի հետ աշխատելու համար:
ներմուծել com.pi4j.io.i2c. I2CBus;
ներմուծել com.pi4j.io.i2c. I2CD սարք;
ներմուծել com.pi4j.io.i2c. I2CFactory;
ներմուծում java.io. IOException;
հանրային դաս HTS221 {public static void main (String args ) նետում է Բացառություն
{
// Ստեղծել I2CBus
I2CBus ավտոբուս = I2CFactory.getInstance (I2CBus. BUS_1);
// Ստացեք I2C սարք, HTS221 I2C հասցեն ՝ 0x5F (95)
I2CDevice սարք = bus.getDevice (0x5F);
// Ընտրեք միջին կազմաձևման գրանցամատյան
// Temերմաստիճանի միջին նմուշներ = 16, խոնավության միջին նմուշներ = 32
device.write (0x10, (բայթ) 0x1B);
// Ընտրեք հսկիչ գրանցամատյան 1
// Միացնել, արգելափակել տվյալների թարմացումը, տվյալների արագությունը o/p = 1 Հց
device.write (0x20, (բայթ) 0x85);
Thread.sleep (500);
// Կարդացեք Calibration- ի արժեքները սարքի անկայուն հիշողությունից
// Խոնավության ստուգաչափման արժեքներ
բայթ val = նոր բայթ [2];
// Կարդացեք 1 բայթ տվյալներ 0x30 հասցեից (48)
val [0] = (բայթ) սարք. կարդալ (0x30);
// Կարդացեք 1 բայթ տվյալներ 0x31 (49) հասցեից
val [1] = (բայթ) սարք. կարդալ (0x31);
int H0 = (val [0] & 0xFF) / 2;
int H1 = (val [1] & 0xFF) / 2;
// Կարդացեք 1 բայթ տվյալներ 0x36 հասցեից (54)
val [0] = (բայթ) սարք. կարդալ (0x36);
// Կարդացեք 1 բայթ տվյալներ 0x37 հասցեից (55)
val [1] = (բայթ) սարք. կարդալ (0x37);
int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Կարդացեք 1 բայթ տվյալներ 0x3A հասցեից (58)
val [0] = (բայթ) սարք. կարդալ (0x3A);
// Կարդացեք 1 բայթ տվյալներ 0x3B հասցեից (59)
val [1] = (բայթ) սարք. կարդալ (0x3B);
int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Temերմաստիճանի ստուգաչափման արժեքներ
// Կարդացեք 1 բայթ տվյալներ 0x32 հասցեից (50)
int T0 = ((բայթ) սարք. կարդալ (0x32) & 0xFF);
// Կարդացեք 1 բայթ տվյալներ 0x33 հասցեից (51)
int T1 = ((բայթ) սարք. կարդալ (0x33) & 0xFF);
// Կարդացեք 1 բայթ տվյալներ 0x35 հասցեից (53)
int raw = ((բայթ) սարք. կարդալ (0x35) & 0x0F);
// Փոխարկեք ջերմաստիճանի չափման արժեքները 10 բիթ
T0 = ((հում և 0x03) * 256) + T0;
T1 = ((հում և 0x0C) * 64) + T1;
// Կարդացեք 1 բայթ տվյալներ 0x3C հասցեից (60)
val [0] = (բայթ) սարք. կարդալ (0x3C);
// Կարդացեք 1 բայթ տվյալներ 0x3D (61) հասցեից
val [1] = (բայթ) սարք. կարդալ (0x3D);
int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Կարդացեք 1 բայթ տվյալներ 0x3E հասցեից (62)
val [0] = (բայթ) սարք. կարդալ (0x3E);
// Կարդացեք 1 բայթ տվյալներ 0x3F հասցեից (63)
val [1] = (բայթ) սարք. կարդալ (0x3F);
int T3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Կարդացեք 4 բայթ տվյալներ
// hum msb, hum lsb, temp msb, temp lsb
բայթ տվյալներ = նոր բայթ [4]; device.read (0x28 | 0x80, տվյալներ, 0, 4);
// Փոխարկել տվյալները
int hum = ((տվյալները [1] & 0xFF) * 256) + (տվյալները [0] & 0xFF);
int temp = ((տվյալները [3] & 0xFF) * 256) + (տվյալները [2] & 0xFF);
եթե (ջերմաստիճան> 32767)
{
ջերմաստիճան -= 65536;
}
կրկնակի խոնավություն = ((1.0 * H1) - (1.0 * H0)) * (1.0 * հում - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
կրկնակի cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);
կրկնակի fTemp = (cTemp * 1.8) + 32;
// Ելքի տվյալները էկրանին
System.out.printf ("Հարաբերական խոնավություն. %.2f %% RH %n", խոնավություն);
System.out.printf («elsերմաստիճանը Celsius: %.2f C %n», cTemp);
System.out.printf («Fերմաստիճանը Ֆարենհայտում ՝ %.2f F %n», fTemp);
}
}
Քայլ 4: Դիմումներ
HTS221- ը կարող է օգտագործվել սպառողական տարբեր ապրանքների մեջ, ինչպիսիք են օդի խոնավացուցիչները և սառնարանները և այլն: Այս սենսորը նաև իր կիրառությունն է գտնում ավելի լայն ասպարեզում, ներառյալ Smart home automation, Industrial automation, շնչառական սարքավորումներ, ակտիվների և ապրանքների հետևում:
Խորհուրդ ենք տալիս:
Raspberry Pi SHT25 Խոնավության և ջերմաստիճանի տվիչ Python ձեռնարկ. 4 քայլ
Raspberry Pi SHT25 Խոնավության և ջերմաստիճանի տվիչ Python ձեռնարկ. SHT25 I2C Խոնավության և ջերմաստիճանի տվիչ ± 1.8%RH ± 0.2 ° C I2C մինի մոդուլ: Խոնավության և ջերմաստիճանի բարձր ճշգրտության SHT25 սենսորը դարձել է արդյունաբերական չափանիշ ՝ ձևի գործոնի և խելամտության առումով ՝ ապահովելով տրամաչափված, գծային սենսորային նշաններ
Arduino Nano - HTS221 Հարաբերական խոնավության և ջերմաստիճանի տվիչների ձեռնարկ. 4 քայլ
Arduino Nano - HTS221 Հարաբերական խոնավության և ջերմաստիճանի տվիչների ձեռնարկ. HTS221- ը ծայրահեղ կոմպակտ տարողունակ թվային սենսոր է հարաբերական խոնավության և ջերմաստիճանի համար: Այն ներառում է զգայուն տարր և խառը ազդանշանների կիրառման հատուկ ինտեգրալ միացում (ASIC) ՝ թվային սերիայի միջոցով չափման տեղեկատվությունը տրամադրելու համար
Raspberry Pi - HIH6130 I2C խոնավության և ջերմաստիճանի տվիչ Python ձեռնարկ. 4 քայլ
Raspberry Pi - HIH6130 I2C Խոնավության և ջերմաստիճանի տվիչ Python ձեռնարկ. HIH6130- ը խոնավության և ջերմաստիճանի տվիչ է ՝ թվային ելքով: Այս տվիչները ապահովում են. 4% RH ճշգրտության մակարդակ: Արդյունաբերության առաջատար երկարաժամկետ կայունությամբ, իսկական ջերմաստիճանի փոխհատուցվող թվային I2C- ով, արդյունաբերության առաջատար հուսալիությամբ, էներգաարդյունավետությամբ
Raspberry Pi - HIH6130 I2C խոնավության և ջերմաստիճանի տվիչ Java ձեռնարկ. 4 քայլ
Ազնվամորի Pi - HIH6130 I2C Խոնավության և ջերմաստիճանի տվիչ Java ձեռնարկ. HIH6130- ը խոնավության և ջերմաստիճանի տվիչ է ՝ թվային ելքով: Այս տվիչները ապահովում են. 4% RH ճշգրտության մակարդակ: Արդյունաբերության առաջատար երկարաժամկետ կայունությամբ, իսկական ջերմաստիճանի փոխհատուցվող թվային I2C- ով, արդյունաբերության առաջատար հուսալիությամբ, էներգաարդյունավետությամբ
Անլար խոնավության մոնիտոր (ESP8266 + խոնավության ցուցիչ) ՝ 5 քայլ
Անլար խոնավության մոնիտոր (ESP8266 + խոնավության ցուցիչ). Ես մաղադանոս եմ գնում կաթսայում, և օրվա մեծ մասը հողը չորացել էր: Այսպիսով, ես որոշեցի կատարել այս նախագիծը ՝ մաղադանոսով կաթսայի մեջ հողի խոնավությունը զգալու մասին, ստուգելու համար, երբ ինձ պետք է ջուր լցնել հողը: Կարծում եմ, որ այս սենսորը (Capacitive խոնավության ցուցիչ v1.2) լավ է