Obsah:
- Krok 1: Potrebný hardvér:
- Krok 2: Pripojenie hardvéru:
- Krok 3: Kód na meranie vlhkosti a teploty:
- Krok 4: Aplikácie:
Video: Meranie vlhkosti a teploty pomocou HTS221 a Raspberry Pi: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
HTS221 je ultrakompaktný kapacitný digitálny snímač relatívnej vlhkosti a teploty. Obsahuje snímací prvok a integrovaný obvod špecifický pre zmiešaný signál (ASIC) na poskytovanie informácií o meraní prostredníctvom digitálnych sériových rozhraní. Integrovaný s toľkými funkciami, je to jeden z najvhodnejších senzorov pre kritické merania vlhkosti a teploty.
V tomto návode je demonštrované prepojenie senzorového modulu HTS221 s malinovou pí a bolo tiež znázornené jeho programovanie v jazyku python. Na čítanie hodnôt vlhkosti a teploty sme použili malinu pi s adaptérom I2C. Vďaka tomuto adaptéru I2C je pripojenie k senzorovému modulu jednoduché a spoľahlivejšie.
Krok 1: Potrebný hardvér:
Materiály, ktoré potrebujeme na dosiahnutie nášho cieľa, obsahujú nasledujúce hardvérové komponenty:
1. HTS221
2. Raspberry Pi
3. Kábel I2C
4. I2C štít pre malinovú pi
5. Ethernetový kábel
Krok 2: Pripojenie hardvéru:
Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi senzorom a malinovým pi. Zabezpečenie správneho pripojenia je základnou potrebou pri práci na akomkoľvek systéme s požadovaným výstupom. Potrebné spojenia sú teda tieto:
HTS221 bude fungovať cez I2C. Tu je príklad schémy zapojenia, ktorá ukazuje, ako prepojiť každé rozhranie snímača.
Hneď po vybalení je doska nakonfigurovaná na rozhranie I2C, preto vám toto pripojenie odporúčame použiť, ak ste inak agnostik.
Všetko, čo potrebujete, sú štyri drôty! Vyžadujú sa iba štyri pripojenia Vcc, Gnd, SCL a SDA piny, ktoré sú prepojené pomocou kábla I2C.
Tieto spojenia sú znázornené na obrázkoch vyššie.
Krok 3: Kód na meranie vlhkosti a teploty:
Výhodou použitia maliny pi je, že vám poskytuje flexibilitu programovacieho jazyka, v ktorom chcete dosku programovať, aby ste s ňou mohli prepojiť senzor. S využitím tejto výhody tejto dosky tu demonštrujeme jej programovanie v pythone. Pythonový kód pre HTS221 si môžete stiahnuť z našej komunity github, ktorá je komunitou Control Everything.
Rovnako ako pre jednoduchosť používateľov, vysvetľujeme kód aj tu:
Ako prvý krok kódovania si musíte stiahnuť knižnicu smbus v prípade pythonu, pretože táto knižnica podporuje funkcie použité v kóde. Ak si chcete stiahnuť knižnicu, môžete navštíviť nasledujúci odkaz:
pypi.python.org/pypi/smbus-cffi/0.5.1
Pracovný kód pythonu pre tento senzor môžete skopírovať aj tu:
import smbus
čas importu
# Získajte autobus I2C
bus = smbus. SMBus (1)
# Adresa HTS221, 0x5F (95)
# Vyberte priemerný konfiguračný register, 0x10 (16)
# 0x1B (27) Priemerné teplotné vzorky = 256, vlhké priemerné vzorky = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# Adresa HTS221, 0x5F (95)
# Vyberte riadiaci register1, 0x20 (32)
# 0x85 (133) ZAPNUTÉ, nepretržitá aktualizácia, rýchlosť výstupu údajov = 1 Hz
bus.write_byte_data (0x5F, 0x20, 0x85)
čas.spánok (0,5)
# Adresa HTS221, 0x5F (95)
# Prečítajte si kalibračné hodnoty z energeticky nezávislej pamäte zariadenia
# Hodnoty kalibrácie vlhkosti
# Načítajte údaje späť z 0x30 (48), 1 bajt
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# Načítajte údaje späť z 0x31 (49), 1 bajt
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# Načítajte údaje späť z 0x36 (54), 2 bajtov
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Načítajte údaje späť z 0x3A (58), 2 bajtov
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Hodnoty kalibrácie teploty
# Načítajte údaje späť z 0x32 (50), 1 bajt
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 a 0xFF)
# Načítajte údaje späť z 0x32 (51), 1 bajt
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 a 0xFF)
# Načítajte údaje späť z 0x35 (53), 1 bajt
raw = bus.read_byte_data (0x5F, 0x35)
raw = (surový & 0x0F)
# Konvertujte hodnoty kalibrácie teploty na 10-bitové
T0 = ((surový & 0x03) * 256) + T0
T1 = ((surový a 0x0C) * 64) + T1
# Načítajte údaje späť z 0x3C (60), 2 bajtov
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Načítajte údaje späť z 0x3E (62), 2 bajtov
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Načítajte údaje späť z 0x28 (40) s príkazovým registrom 0x80 (128), 4 bajty
# vlhkosť msb, vlhkosť lsb, teplota msb, teplota lsb
data = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Previesť údaje
vlhkosť = (údaje [1] * 256) + údaje [0]
vlhkosť = ((1,0 * H1) - (1,0 * H0)) * (1,0 * vlhkosť - 1,0 * H2) / (1,0 * H3 - 1,0 * H2) + (1,0 * H0)
temp = (údaje [3] * 256) + údaje [2]
ak je teplota> 32767:
teplota -= 65536
cTemp = ((T1 - T0) / 8,0) * (teplota - T2) / (T3 - T2) + (T0 / 8,0)
fTemp = (cTemp * 1,8) + 32
# Výstup údajov na obrazovku
vytlačiť „Relatívna vlhkosť: %.2f %%“%vlhkosť
vytlačiť "Teplota v stupňoch Celzia: %.2f C" %cTemp
vytlačiť "Teplota vo Fahrenheite: %.2f F" %fTemp
Ďalej uvedená časť kódu obsahuje knižnice potrebné na správne spustenie kódov pythonu.
import smbus
čas importu
Kód je možné vykonať zadaním nižšie uvedeného príkazu do príkazového riadka.
$> python HTS221.py
Výstup senzora je tiež uvedený na obrázku vyššie pre referenciu používateľa.
Krok 4: Aplikácie:
HTS221 je možné použiť v rôznych spotrebiteľských výrobkoch, ako sú zvlhčovače vzduchu a chladničky atď. Tento senzor nachádza svoje uplatnenie aj v širšej oblasti, vrátane inteligentnej domácej automatizácie, priemyselnej automatizácie, respiračných zariadení, sledovania majetku a tovaru.
Odporúča:
Meranie teploty a vlhkosti pomocou DHT11 / DHT22 a Arduino: 4 kroky
Meranie teploty a vlhkosti pomocou DHT11 / DHT22 a Arduino: V tomto návode k Arduino sa naučíme používať snímač DHT11 alebo DHT22 na meranie teploty a vlhkosti pomocou dosky Arduino
Meranie vlhkosti a teploty pomocou HTS221 a Arduino Nano: 4 kroky
Meranie vlhkosti a teploty pomocou HTS221 a Arduino Nano: HTS221 je ultrakompaktný kapacitný digitálny snímač relatívnej vlhkosti a teploty. Obsahuje snímací prvok a integrovaný obvod špecifický pre zmiešaný signál (ASIC) na poskytovanie informácií o meraní prostredníctvom digitálneho sériového
Meranie vlhkosti a teploty pomocou HIH6130 a Raspberry Pi: 4 kroky
Meranie vlhkosti a teploty pomocou HIH6130 a Raspberry Pi: HIH6130 je snímač vlhkosti a teploty s digitálnym výstupom. Tieto senzory poskytujú úroveň presnosti ± 4% relatívnej vlhkosti. Vďaka špičkovej dlhodobej stabilite, skutočnému digitálnemu I2C s teplotnou kompenzáciou, špičkovej spoľahlivosti, energetickej účinnosti
Meranie teploty a vlhkosti pomocou HDC1000 a Raspberry Pi: 4 kroky
Meranie teploty a vlhkosti pomocou HDC1000 a Raspberry Pi: HDC1000 je digitálny snímač vlhkosti s integrovaným snímačom teploty, ktorý poskytuje vynikajúcu presnosť merania pri veľmi nízkom výkone. Zariadenie meria vlhkosť na základe nového kapacitného senzora. Senzory vlhkosti a teploty sú
Meranie vlhkosti a teploty pomocou HTS221 a fotónu častíc: 4 kroky
Meranie vlhkosti a teploty pomocou fotónu HTS221 a časticového fotónu: HTS221 je ultrakompaktný kapacitný digitálny snímač relatívnej vlhkosti a teploty. Obsahuje snímací prvok a integrovaný obvod špecifický pre zmiešaný signál (ASIC) na poskytovanie informácií o meraní prostredníctvom digitálneho sériového