Բովանդակություն:
- Քայլ 1: Պահանջվում է սարքավորում
- Քայլ 2: Սարքավորման միացում
- Քայլ 3. Խոնավության և ջերմաստիճանի չափման կոդ
- Քայլ 4: Դիմումներ
Video: Խոնավության և ջերմաստիճանի չափում ՝ օգտագործելով HTS221 և ազնվամորի Pi: 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
HTS221- ը ծայրահեղ կոմպակտ տարողունակ թվային սենսոր է հարաբերական խոնավության և ջերմաստիճանի համար: Այն ներառում է զգայուն տարր և խառը ազդանշանների կիրառման հատուկ ինտեգրալ միացում (ASIC) `թվային սերիական միջերեսների միջոցով չափման տեղեկատվությունը տրամադրելու համար: Ինտեգրված այսքան շատ հատկանիշներով սա խոնավության և ջերմաստիճանի կրիտիկական չափումների ամենահարմար սենսորներից է:
Այս ձեռնարկում ցուցադրվում է HTS221 սենսորային մոդուլի և ազնվամորու pi- ի հետ փոխկապակցումը, ինչպես նաև պատկերված է դրա ծրագրավորումը պիթոնի լեզվով: Խոնավության և ջերմաստիճանի արժեքները կարդալու համար մենք օգտագործել ենք ազնվամորի pi- ն I2C ադապտերով: Այս I2C ադապտերը դյուրին և հուսալի է դարձնում սենսորային մոդուլի հետ կապը:
Քայլ 1: Պահանջվում է սարքավորում
Նյութերը, որոնք մեզ անհրաժեշտ են մեր նպատակին հասնելու համար, ներառում են հետևյալ ապարատային բաղադրիչները.
1. HTS221
2. Ազնվամորի Պի
3. I2C մալուխ
4. I2C Shield ազնվամորու pi- ի համար
5. Ethernet մալուխ
Քայլ 2: Սարքավորման միացում
Սարքավորումների միացման բաժինը հիմնականում բացատրում է սենսորի և ազնվամորու pi- ի միջև պահանջվող լարերի միացումները: Connectionsանկալի ելքի համար ցանկացած համակարգի վրա աշխատելիս հիմնական անհրաժեշտությունն է հիմնական կապերի ապահովումը: Այսպիսով, անհրաժեշտ կապերը հետևյալն են.
HTS221- ը կաշխատի I2C- ով: Ահա միացման սխեմայի օրինակ, որը ցույց է տալիս, թե ինչպես միացնել սենսորի յուրաքանչյուր միջերեսը:
Տուփից դուրս, տախտակը կազմաձևված է I2C ինտերֆեյսի համար, ուստի խորհուրդ ենք տալիս օգտագործել այս կապը, եթե այլապես ագնոստիկ եք:
Ձեզ անհրաժեշտ է չորս լար: Միայն չորս միացում է պահանջվում Vcc, Gnd, SCL և SDA կապում, որոնք միացված են I2C մալուխի օգնությամբ:
Այս կապերը ցուցադրվում են վերը նշված նկարներում:
Քայլ 3. Խոնավության և ջերմաստիճանի չափման կոդ
Ազնվամորու pi- ի օգտագործման առավելությունն այն է, որ ձեզ տալիս է ծրագրավորման այն լեզվի ճկունությունը, որով ցանկանում եք ծրագրավորել տախտակը `սենսորը դրա հետ միացնելու համար: Օգտվելով այս տախտակի այս առավելությունից ՝ մենք այստեղ ցուցադրում ենք դրա ծրագրավորումը պիթոնում: HTS221- ի Python կոդը կարելի է ներբեռնել մեր github համայնքից, որը Control Everything համայնքն է:
Ինչպես նաև օգտվողների հեշտության համար, մենք այստեղ բացատրում ենք ծածկագիրը.
Որպես կոդավորման առաջին քայլ անհրաժեշտ է ներբեռնել smbus գրադարանը պիթոնի դեպքում, քանի որ այս գրադարանը աջակցում է կոդի մեջ օգտագործվող գործառույթներին: Այսպիսով, գրադարանը ներբեռնելու համար կարող եք այցելել հետևյալ հղումը.
pypi.python.org/pypi/smbus-cffi/0.5.1
Այս սենսորի աշխատանքային պիթոնի ծածկագիրը կարող եք պատճենել նաև այստեղից.
ներմուծել smbus
ներմուծման ժամանակը
# Ձեռք բերեք I2C ավտոբուս
ավտոբուս = smbus. SMBus (1)
# HTS221 հասցե, 0x5F (95)
# Ընտրեք միջին կազմաձևման գրանցամատյան, 0x10 (16)
# 0x1B (27) averageերմաստիճանի միջին նմուշներ = 256, խոնավության միջին նմուշներ = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# HTS221 հասցե, 0x5F (95)
# Ընտրեք կառավարման ռեգիստր 1, 0x20 (32)
# 0x85 (133) Միացում, շարունակական թարմացում, տվյալների ելքային արագություն = 1 Հց
bus.write_byte_data (0x5F, 0x20, 0x85)
ժամանակ. քուն (0.5)
# HTS221 հասցե, 0x5F (95)
# Կարդացեք Calibration- ի արժեքները սարքի անկայուն հիշողությունից
# Խոնավության ստուգաչափման արժեքներ
# Կարդացեք տվյալները 0x30 (48) -ից, 1 բայթ
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# Կարդացեք տվյալները 0x31 (49) -ից, 1 բայթ
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# Կարդացեք տվյալները 0x36- ից (54), 2 բայթ
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Կարդացեք տվյալները 0x3A- ից (58), 2 բայթ
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Peratերմաստիճանի ստուգաչափման արժեքներ
# Կարդացեք տվյալները 0x32 (50) -ից, 1 բայթ
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 & 0xFF)
# Կարդացեք տվյալները 0x32 (51) -ից, 1 բայթ
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 & 0xFF)
# Կարդացեք տվյալները 0x35 (53) -ից, 1 բայթ
հում = bus.read_byte_data (0x5F, 0x35)
հում = (հում և 0x0F)
# Փոխարկեք ջերմաստիճանի ստուգաչափման արժեքները 10 բիթ
T0 = ((հում և 0x03) * 256) + T0
T1 = ((հում և 0x0C) * 64) + T1
# Կարդացեք տվյալները 0x3C- ից (60), 2 բայթ
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Կարդացեք տվյալները 0x3E- ից (62), 2 բայթ
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Կարդացեք տվյալները 0x28 (40) -ից ՝ 0x80 (128) հրամանի գրանցամատյանով, 4 բայթ
# խոնավություն msb, խոնավություն lsb, ջերմաստիճան msb, ջերմաստիճան lsb
տվյալներ = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Փոխակերպեք տվյալները
խոնավություն = (տվյալներ [1] * 256) + տվյալներ [0]
խոնավություն = ((1.0 * H1) - (1.0 * H0)) * (1.0 * խոնավություն - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0)
temp = (տվյալներ [3] * 256) + տվյալներ [2]
եթե ջերմաստիճանը> 32767:
ջերմաստիճան -= 65536
cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0)
fTemp = (cTemp * 1.8) + 32
# Ելքի տվյալները էկրանին
տպել "Հարաբերական խոնավություն. %.2f %%" %խոնավություն
տպել "elsերմաստիճանը Celsius: %.2f C" %cTemp
տպել "ahերմաստիճանը Ֆարենհայտում. %.2f F" %fTemp
Ստորև նշված կոդի մասը ներառում է գրադարանները, որոնք անհրաժեշտ են պիթոնի ծածկագրերի ճիշտ կատարման համար:
ներմուծել smbus
ներմուծման ժամանակը
Կոդը կարող է կատարվել `հրամանի տողում մուտքագրելով ստորև նշված հրամանը:
$> python HTS221.py
Սենսորի ելքը նույնպես ցուցադրված է վերևի նկարում ՝ օգտագործողի տեղեկանքի համար:
Քայլ 4: Դիմումներ
HTS221- ը կարող է օգտագործվել սպառողական տարբեր ապրանքների մեջ, ինչպիսիք են օդի խոնավացուցիչները և սառնարանները և այլն: Այս սենսորը նաև իր կիրառությունն է գտնում ավելի լայն ասպարեզում, ներառյալ Smart home automation, Industrial automation, շնչառական սարքավորումներ, ակտիվների և ապրանքների հետևում:
Խորհուրդ ենք տալիս:
Խոնավության և ջերմաստիճանի չափում ՝ օգտագործելով HIH6130 և Arduino Nano: 4 քայլ
Խոնավության և ջերմաստիճանի չափում HIH6130- ի և Arduino Nano- ի միջոցով. HIH6130- ը խոնավության և ջերմաստիճանի տվիչ է `թվային ելքով: Այս տվիչները ապահովում են. 4% RH ճշգրտության մակարդակ: Արդյունաբերության առաջատար երկարաժամկետ կայունությամբ, իսկական ջերմաստիճանի փոխհատուցվող թվային I2C- ով, արդյունաբերության առաջատար հուսալիությամբ, էներգաարդյունավետությամբ
Խոնավության և ջերմաստիճանի չափում ՝ օգտագործելով HTS221 և Arduino Nano: 4 քայլ
Խոնավության և ջերմաստիճանի չափում ՝ օգտագործելով HTS221 և Arduino Nano: HTS221- ը ծայրահեղ կոմպակտ տարողունակ թվային սենսոր է հարաբերական խոնավության և ջերմաստիճանի համար: Այն ներառում է զգայուն տարր և խառը ազդանշանների կիրառման հատուկ ինտեգրալ միացում (ASIC) ՝ թվային սերիայի միջոցով չափման տեղեկատվությունը տրամադրելու համար
Խոնավության չափում ՝ օգտագործելով HYT939 և ազնվամորի պի ՝ 4 քայլ
Խոնավության չափում HYT939- ի և Raspberry Pi- ի միջոցով. HYT939- ը խոնավության թվային տվիչ է, որն աշխատում է I2C հաղորդակցության արձանագրության վրա: Խոնավությունը առանցքային պարամետր է, երբ խոսքը վերաբերում է բժշկական համակարգերին և լաբորատորիաներին: Այսպիսով, այս նպատակներին հասնելու համար մենք փորձեցինք HYT939- ը կապել ազնվամորու pi- ի հետ: Ես
Խոնավության և ջերմաստիճանի չափում ՝ օգտագործելով HIH6130 և ազնվամորի Պի. 4 քայլ
Խոնավության և ջերմաստիճանի չափում HIH6130- ի և Raspberry Pi- ի միջոցով. HIH6130- ը խոնավության և ջերմաստիճանի տվիչ է `թվային ելքով: Այս տվիչները ապահովում են. 4% RH ճշգրտության մակարդակ: Արդյունաբերության առաջատար երկարաժամկետ կայունությամբ, իսկական ջերմաստիճանի փոխհատուցվող թվային I2C- ով, արդյունաբերության առաջատար հուսալիությամբ, էներգաարդյունավետությամբ
Խոնավության և ջերմաստիճանի չափում `օգտագործելով HTS221 և մասնիկի ֆոտոն` 4 քայլ
Խոնավության և ջերմաստիճանի չափում HTS221- ի և մասնիկի ֆոտոնի միջոցով. HTS221- ը ծայրահեղ կոմպակտ տարողունակ թվային սենսոր է հարաբերական խոնավության և ջերմաստիճանի համար: Այն ներառում է զգայուն տարր և խառը ազդանշանների կիրառման հատուկ ինտեգրալ միացում (ASIC) ՝ թվային սերիայի միջոցով չափման տեղեկատվությունը տրամադրելու համար