Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 žingsnis: Drėgmės ir temperatūros matavimo kodas:
- 4 žingsnis: programos:
Video: Drėgmės ir temperatūros matavimas naudojant HTS221 ir Raspberry Pi: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
HTS221 yra ypač kompaktiškas talpinis skaitmeninis jutiklis, skirtas santykiniam drėgnumui ir temperatūrai. Jame yra jutimo elementas ir mišraus signalo taikymo integruotas grandynas (ASIC), skirtas pateikti matavimo informaciją per skaitmenines nuoseklias sąsajas. Integruotas su daugybe funkcijų, tai yra vienas tinkamiausių jutiklių kritiniams drėgmės ir temperatūros matavimams.
Šioje pamokoje parodyta HTS221 jutiklio modulio sąsaja su aviečių pi ir taip pat iliustruotas jo programavimas naudojant python kalbą. Norėdami nuskaityti drėgmės ir temperatūros vertes, mes naudojome aviečių pi su I2C adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prijungti prie jutiklio modulio.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. HTS221
2. Raspberry Pi
3. I2C kabelis
4. I2C skydas avietėms pi
5. Ethernet kabelis
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyriuje iš esmės paaiškinamos reikalingos laidų jungtys tarp jutiklio ir aviečių pi. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
HTS221 veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.
Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas.
Viskas, ko jums reikia, yra keturi laidai! Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.
Šie ryšiai parodyti aukščiau esančiose nuotraukose.
3 žingsnis: Drėgmės ir temperatūros matavimo kodas:
„Raspberry pi“naudojimo pranašumas yra tai, kad suteikia lankstumo programavimo kalbai, kuria norite programuoti plokštę, kad su ja susietumėte jutiklį. Pasinaudoję šiuo šios plokštės pranašumu, mes čia demonstruojame jos programavimą python'e. HTS221 python kodą galima atsisiųsti iš mūsų „github“bendruomenės, kuri yra „Control Everything Community“.
Be vartotojų patogumo, mes taip pat paaiškiname kodą čia:
Kaip pirmąjį kodavimo žingsnį turite atsisiųsti „smbus“biblioteką „python“atveju, nes ši biblioteka palaiko kode naudojamas funkcijas. Taigi, norėdami atsisiųsti biblioteką, galite apsilankyti šioje nuorodoje:
pypi.python.org/pypi/smbus-cffi/0.5.1
Taip pat galite nukopijuoti šio jutiklio veikiančio python kodą:
importuoti smbus
importo laikas
# Gaukite I2C autobusą
autobusas = smbus. SMBus (1)
# HTS221 adresas, 0x5F (95)
# Pasirinkite vidutinį konfigūracijos registrą, 0x10 (16)
# 0x1B (27) Vidutiniai temperatūros mėginiai = 256, vidutiniai drėgmės mėginiai = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# HTS221 adresas, 0x5F (95)
# Pasirinkite valdymo registrą1, 0x20 (32)
# 0x85 (133) Įjungta, nuolat atnaujinama, duomenų išvesties sparta = 1 Hz
bus.write_byte_data (0x5F, 0x20, 0x85)
laikas. miegas (0,5)
# HTS221 adresas, 0x5F (95)
# Kalibravimo vertes skaitykite iš nepastovios įrenginio atminties
# Drėgmės kalibravimo vertės
# Perskaitykite duomenis iš 0x30 (48), 1 baito
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# Perskaitykite duomenis iš 0x31 (49), 1 baito
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# Perskaitykite duomenis iš 0x36 (54), 2 baitų
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Perskaitykite duomenis iš 0x3A (58), 2 baitų
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = autobusas. skaitymo_baitų duomenys (0x5F, 0x3B)
H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Temperatūros kalibravimo vertės
# Perskaitykite duomenis iš 0x32 (50), 1 baito
T0 = autobusas. Skaitymo_baitų_datai (0x5F, 0x32)
T0 = (T0 ir 0xFF)
# Perskaitykite duomenis iš 0x32 (51), 1 baito
T1 = autobusas. Skaitymo_baitų_datai (0x5F, 0x33)
T1 = (T1 ir 0xFF)
# Perskaitykite duomenis iš 0x35 (53), 1 baito
neapdorotas = autobusas. skaitymo_baito_datai (0x5F, 0x35)
žalias = (neapdorotas ir 0x0F)
# Konvertuokite temperatūros kalibravimo vertes į 10 bitų
T0 = ((neapdorotas ir 0x03) * 256) + T0
T1 = ((neapdorota ir 0x0C) * 64) + T1
# Perskaitykite duomenis iš 0x3C (60), 2 baitų
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = magistralė. skaitymo_baitų duomenys (0x5F, 0x3D)
T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Perskaitykite duomenis iš 0x3E (62), 2 baitai
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = magistralė. skaitymo_baitų duomenys (0x5F, 0x3F)
T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# Perskaitykite duomenis iš 0x28 (40) naudodami komandų registrą 0x80 (128), 4 baitus
# drėgmė msb, drėgmė lsb, temp msb, temp lsb
duomenys = autobusas.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Konvertuokite duomenis
drėgmė = (duomenys [1] * 256) + duomenys [0]
drėgmė = ((1,0 * H1) - (1,0 * H0)) * (1,0 * drėgmė - 1,0 * H2) / (1,0 * H3 - 1,0 * H2) + (1,0 * H0)
temp = (duomenys [3] * 256) + duomenys [2]
jei temperatūra> 32767:
temperatūra -= 65536
cTemp = ((T1 - T0) / 8.0) * (temperatūra - T2) / (T3 - T2) + (T0 / 8.0)
fTemp = (cTemp * 1.8) + 32
# Išveskite duomenis į ekraną
spausdinti „Santykinė drėgmė: %.2f %%“%drėgmė
spausdinti "Temperatūra Celsijaus: %.2f C" %cTemp
spausdinti "Temperatūra Farenheitu: %.2f F" %fTemp
Toliau nurodyta kodo dalis apima bibliotekas, reikalingas teisingam python kodų vykdymui.
importuoti smbus
importo laikas
Kodą galima vykdyti komandų eilutėje įvedus žemiau nurodytą komandą.
$> python HTS221.py
Jutiklio išvestis taip pat parodyta aukščiau esančiame paveikslėlyje vartotojo naudai.
4 žingsnis: programos:
HTS221 gali būti naudojamas įvairiose plataus vartojimo prekėse, tokiose kaip oro drėkintuvai ir šaldytuvai ir tt
Rekomenduojamas:
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir „Arduino Nano“: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir Arduino Nano: HIH6130 yra drėgmės ir temperatūros jutiklis su skaitmenine išvestimi. Šie jutikliai užtikrina ± 4% RH tikslumo lygį. Su pirmaujančiu ilgalaikiu stabilumu pramonėje, tikru temperatūros kompensuojamu skaitmeniniu I2C, patikimumu pramonėje, energijos vartojimo efektyvumu
Drėgmės ir temperatūros matavimas naudojant HTS221 ir „Arduino Nano“: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HTS221 ir Arduino Nano: HTS221 yra ypač kompaktiškas talpinis skaitmeninis jutiklis, skirtas santykiniam drėgnumui ir temperatūrai. Jame yra jutimo elementas ir mišraus signalo taikymo integruotas grandynas (ASIC), kuris pateikia matavimo informaciją skaitmeniniu nuosekliu
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir Raspberry Pi: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HIH6130 ir Raspberry Pi: HIH6130 yra drėgmės ir temperatūros jutiklis su skaitmenine išvestimi. Šie jutikliai užtikrina ± 4% RH tikslumo lygį. Su pirmaujančiu ilgalaikiu stabilumu pramonėje, tikru temperatūros kompensuojamu skaitmeniniu I2C, patikimumu pramonėje, energijos vartojimo efektyvumu
Temperatūros ir drėgmės matavimas naudojant HDC1000 ir Raspberry Pi: 4 žingsniai
Temperatūros ir drėgmės matavimas naudojant HDC1000 ir Raspberry Pi: 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
Drėgmės ir temperatūros matavimas naudojant HTS221 ir dalelių fotoną: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HTS221 ir dalelių fotoną: HTS221 yra ypač kompaktiškas talpinis skaitmeninis jutiklis, skirtas santykiniam drėgnumui ir temperatūrai. Jame yra jutimo elementas ir mišraus signalo taikymo integruotas grandynas (ASIC), kuris pateikia matavimo informaciją skaitmeniniu nuosekliu