Orodha ya maudhui:

Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: 4 Hatua
Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: 4 Hatua

Video: Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: 4 Hatua

Video: Upimaji wa Unyevu na Joto Kutumia HTS221 na Raspberry Pi: 4 Hatua
Video: I AM POSSESSED BY DEMONS 2024, Julai
Anonim
Image
Image

HTS221 ni sensorer ya hali ya juu ya hali ya hewa yenye unyevu na joto. Inajumuisha kipengee cha kuhisi na matumizi ya ishara iliyochanganywa mzunguko maalum uliounganishwa (ASIC) kutoa habari ya kipimo kupitia njia kuu za dijiti. Imejumuishwa na huduma nyingi hii ni moja ya sensorer zinazofaa zaidi kwa vipimo muhimu vya unyevu na joto.

Katika mafunzo haya kuingiliana kwa moduli ya sensorer ya HTS221 na pi ya rasipberry imeonyeshwa na programu yake kwa kutumia lugha ya chatu pia imeonyeshwa. Ili kusoma viwango vya unyevu na joto, tumetumia pi ya rasipberry na adapta ya I2C. Adapter hii ya I2C inafanya unganisho kwa moduli ya sensa iwe rahisi na ya kuaminika zaidi.

Hatua ya 1: Vifaa vinahitajika:

Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika

Vifaa ambavyo tunahitaji kutimiza lengo letu ni pamoja na vifaa vifuatavyo vya vifaa:

1. HTS221

2. Raspberry Pi

3. Cable ya I2C

4. I2C Shield kwa rasipberry pi

5. Cable ya Ethernet

Hatua ya 2: Kuunganishwa kwa vifaa:

Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa

Sehemu ya uunganishaji wa vifaa kimsingi inaelezea uunganisho wa wiring unaohitajika kati ya sensorer na pi ya raspberry. Kuhakikisha unganisho sahihi ni hitaji la msingi wakati unafanya kazi kwenye mfumo wowote wa pato unalotaka. Kwa hivyo, viunganisho vinavyohitajika ni kama ifuatavyo.

HTS221 itafanya kazi juu ya I2C. Hapa kuna mfano wa mchoro wa wiring, unaonyesha jinsi ya kuweka waya kila kiunganishi cha sensa.

Nje ya sanduku, bodi imesanidiwa kwa kiolesura cha I2C, kwa hivyo tunapendekeza utumie uunganisho huu ikiwa wewe ni agnostic.

Unachohitaji ni waya nne! Viunganisho vinne tu vinahitajika Vcc, Gnd, SCL na SDA pini na hizi zimeunganishwa kwa msaada wa kebo ya I2C.

Uunganisho huu umeonyeshwa kwenye picha hapo juu.

Hatua ya 3: Nambari ya Upimaji wa Unyevu na Joto:

Nambari ya Upimaji wa Unyevu na Joto
Nambari ya Upimaji wa Unyevu na Joto

Faida ya kutumia rasipiberi pi ni kwamba, inakupa kubadilika kwa lugha ya programu ambayo unataka kupanga bodi ili kuunganisha kihisi nayo. Kuunganisha faida hii ya bodi hii, tunaonyesha hapa programu yake katika chatu. Nambari ya chatu ya HTS221 inaweza kupakuliwa kutoka kwa jamii yetu ya github ambayo ni Dhibiti Jumuiya ya Kila kitu.

Pamoja na urahisi wa watumiaji, tunaelezea nambari hapa pia:

Kama hatua ya kwanza ya usimbuaji unahitaji kupakua maktaba ya smbus ikiwa kuna chatu, kwa sababu maktaba hii inasaidia kazi zinazotumiwa kwenye nambari. Kwa hivyo, kupakua maktaba unaweza kutembelea kiunga kifuatacho:

pypi.python.org/pypi/smbus-cffi/0.5.1

Unaweza kunakili nambari inayofanya kazi ya chatu kutoka hapa pia:

kuagiza smbus

muda wa kuagiza

# Pata basi ya I2C

basi = smbus. SMBus (1)

Anwani ya # HTS221, 0x5F (95)

# Chagua rejista ya usanidi wastani, 0x10 (16)

# 0x1B (27) Sampuli za wastani wa joto = 256, Sampuli za wastani wa unyevu = 512

andika_data ya basi (0x5F, 0x10, 0x1B)

Anwani ya # HTS221, 0x5F (95)

# Chagua rejista ya kudhibiti1, 0x20 (32)

# 0x85 (133) Washa umeme, sasisho la kuendelea, kiwango cha pato la data = 1 Hz

andika_data ya basi (0x5F, 0x20, 0x85)

saa. kulala (0.5)

Anwani ya # HTS221, 0x5F (95)

# Soma maadili ya Upimaji kutoka kwa kumbukumbu isiyoweza kubadilika ya kifaa

# Thamani za Upimaji Unyevu

# Soma data nyuma kutoka 0x30 (48), 1 byte

val = bus.read_byte_data (0x5F, 0x30)

H0 = val / 2

# Soma data nyuma kutoka 0x31 (49), 1 byte

val = bus.read_byte_data (0x5F, 0x31)

H1 = val / 2

# Soma data nyuma kutoka 0x36 (54), 2 ka

val0 = bus.read_byte_data (0x5F, 0x36)

val1 = basi. soma_byte_data (0x5F, 0x37)

H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Soma data nyuma kutoka 0x3A (58), 2 ka

val0 = bus.read_byte_data (0x5F, 0x3A)

val1 = basi. soma_byte_data (0x5F, 0x3B)

H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Maadili ya Upimaji wa Joto

# Soma data nyuma kutoka 0x32 (50), 1 byte

T0 = bus.read_byte_data (0x5F, 0x32)

T0 = (T0 & 0xFF)

# Soma data nyuma kutoka 0x32 (51), 1 byte

T1 = bus.read_byte_data (0x5F, 0x33)

T1 = (T1 & 0xFF)

# Soma data nyuma kutoka 0x35 (53), 1 byte

mbichi = bus.read_byte_data (0x5F, 0x35)

mbichi = (mbichi & 0x0F)

# Badilisha bei ya upimaji wa joto iwe 10-bits

T0 = ((mbichi & 0x03) * 256) + T0

T1 = ((mbichi & 0x0C) * 64) + T1

# Soma data nyuma kutoka 0x3C (60), 2 ka

val0 = bus.read_byte_data (0x5F, 0x3C)

val1 = basi. soma_byte_data (0x5F, 0x3D)

T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Soma data nyuma kutoka 0x3E (62), 2 ka

val0 = bus.read_byte_data (0x5F, 0x3E)

val1 = basi. soma_byte_data (0x5F, 0x3F)

T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Soma data nyuma kutoka 0x28 (40) na rejista ya amri 0x80 (128), 4 ka

# unyevu msb, unyevu lsb, temp msb, temp lsb

data = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)

# Badilisha data

unyevu = (data [1] * 256) + data [0]

unyevu = ((1.0 * H1) - (1.0 * H0)) * (1.0 * unyevu - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0)

temp = (data [3] * 256) + data [2]

ikiwa muda> 32767:

temp - = 65536

cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0)

fTemp = (cTemp * 1.8) + 32

# Pato data kwa screen

chapa "Unyevu wa Jamaa:%.2f %%"% unyevu

chapisha "Joto kwa Celsius:%.2f C"% cTemp

chapisha "Joto katika Fahrenheit:%.2f F"% fTemp

Sehemu ya nambari iliyotajwa hapa chini ni pamoja na maktaba zinazohitajika kwa utekelezaji sahihi wa nambari za chatu.

kuagiza smbus

muda wa kuagiza

Nambari inaweza kutekelezwa kwa kuandika amri iliyotajwa hapo chini katika mwongozo wa amri.

$> chatu HTS221.py

Pato la sensorer pia linaonyeshwa kwenye picha hapo juu kwa kumbukumbu ya mtumiaji.

Hatua ya 4: Maombi:

Maombi
Maombi

HTS221 inaweza kuajiriwa katika bidhaa anuwai za watumiaji kama viboreshaji hewa na majokofu n.k. Sensor hii pia hupata matumizi yake katika uwanja mpana pamoja na mitambo ya Smart nyumbani, mitambo ya Viwanda, vifaa vya kupumua, ufuatiliaji wa mali na bidhaa.

Ilipendekeza: