Obsah:
- Krok 1: Požadovaný hardware:
- Krok 2: Připojení hardwaru:
- Krok 3: Kód pro měření vlhkosti a teploty:
- Krok 4: Aplikace:
Video: Měření vlhkosti a teploty pomocí HTS221 a Raspberry Pi: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
HTS221 je ultra kompaktní kapacitní digitální senzor pro relativní vlhkost a teplotu. Obsahuje snímací prvek a integrovaný obvod specifický pro smíšený signál (ASIC), který poskytuje informace o měření prostřednictvím digitálních sériových rozhraní. Integrovaný s tolika funkcemi je jedním z nejvhodnějších senzorů pro kritická měření vlhkosti a teploty.
V tomto tutoriálu je ukázáno propojení senzorového modulu HTS221 s malinovým pi a bylo také ukázáno jeho programování pomocí jazyka python. Ke čtení hodnot vlhkosti a teploty jsme použili malinu pi s adaptérem I2C. Tento adaptér I2C umožňuje snadné a spolehlivější připojení k modulu senzoru.
Krok 1: Požadovaný hardware:
Materiály, které potřebujeme k dosažení našeho cíle, zahrnují následující hardwarové komponenty:
1. HTS221
2. Raspberry Pi
3. Kabel I2C
4. I2C štít pro malinovou pí
5. Ethernetový kabel
Krok 2: Připojení hardwaru:
Sekce zapojení hardwaru v zásadě vysvětluje zapojení kabelů požadovaná mezi snímačem a malinovým pi. Zajištění správného připojení je základní nutností při práci na jakémkoli systému pro požadovaný výstup. Požadovaná připojení jsou tedy následující:
HTS221 bude fungovat přes I2C. Zde je příklad schématu zapojení, které ukazuje, jak zapojit jednotlivá rozhraní senzoru.
Po vybalení je deska nakonfigurována pro rozhraní I2C, proto doporučujeme tuto přípojku použít, pokud jste jinak agnostik.
Vše, co potřebujete, jsou čtyři dráty! Jsou vyžadována pouze čtyři připojení Vcc, Gnd, SCL a SDA piny a ty jsou spojeny pomocí kabelu I2C.
Tato spojení jsou ukázána na obrázcích výše.
Krok 3: Kód pro měření vlhkosti a teploty:
Výhodou použití raspberry pi je, že vám poskytuje flexibilitu programovacího jazyka, ve kterém chcete desku programovat, abyste s ní mohli propojit senzor. S využitím této výhody této desky zde předvádíme její programování v pythonu. Pythonový kód pro HTS221 lze stáhnout z naší komunity github, což je komunita Control Everything.
Stejně jako pro snadnost uživatelů vysvětlujeme kód také zde:
Jako první krok kódování si musíte stáhnout knihovnu smbus v případě pythonu, protože tato knihovna podporuje funkce použité v kódu. Chcete -li si stáhnout knihovnu, můžete navštívit následující odkaz:
pypi.python.org/pypi/smbus-cffi/0.5.1
Pracovní kód pythonu pro tento senzor můžete zkopírovat také zde:
importovat smbus
čas importu
# Získejte autobus I2C
bus = smbus. SMBus (1)
# Adresa HTS221, 0x5F (95)
# Vyberte průměrný konfigurační registr, 0x10 (16)
# 0x1B (27) Průměrné teplotní vzorky = 256, vlhké průměrné vzorky = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# Adresa HTS221, 0x5F (95)
# Vyberte řídicí registr1, 0x20 (32)
# 0x85 (133) Zapnuto, nepřetržitá aktualizace, rychlost výstupu dat = 1 Hz
bus.write_byte_data (0x5F, 0x20, 0x85)
time.sleep (0,5)
# Adresa HTS221, 0x5F (95)
# Přečtěte si kalibrační hodnoty z energeticky nezávislé paměti zařízení
# Hodnoty kalibrace vlhkosti
# Přečtěte data zpět z 0x30 (48), 1 bajt
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# Přečíst data zpět z 0x31 (49), 1 bajt
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# Přečtěte data zpět z 0x36 (54), 2 bajtů
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Přečtěte data zpět z 0x3A (58), 2 bajty
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Hodnoty kalibrace teploty
# Přečtěte data zpět z 0x32 (50), 1 bajt
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 & 0xFF)
# Přečíst data zpět z 0x32 (51), 1 bajt
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 a 0xFF)
# Přečíst data zpět z 0x35 (53), 1 bajt
raw = bus.read_byte_data (0x5F, 0x35)
raw = (raw & 0x0F)
# Převeďte hodnoty kalibrace teploty na 10 bitů
T0 = ((surový & 0x03) * 256) + T0
T1 = ((raw & 0x0C) * 64) + T1
# Přečtěte data zpět z 0x3C (60), 2 bajty
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Přečtěte data zpět z 0x3E (62), 2 bajty
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((hodnota1 a 0xFF) * 256) + (hodnota0 a 0xFF)
# Přečtěte data zpět z 0x28 (40) s příkazovým registrem 0x80 (128), 4 bajty
# vlhkost msb, vlhkost lsb, temp msb, temp lsb
data = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# Převeďte data
vlhkost = (data [1] * 256) + data [0]
vlhkost = ((1,0 * H1) - (1,0 * H0)) * (1,0 * vlhkost - 1,0 * H2) / (1,0 * H3 - 1,0 * H2) + (1,0 * H0)
temp = (data [3] * 256) + data [2]
pokud je teplota> 32767:
teplota -= 65536
cTemp = ((T1 - T0) / 8,0) * (teplota - T2) / (T3 - T2) + (T0 / 8,0)
fTemp = (cTemp * 1,8) + 32
# Výstup dat na obrazovku
tisk "Relativní vlhkost: %.2f %%" %vlhkost
tisk "Teplota ve stupních Celsia: %.2f C" %cTemp
tisk "Teplota ve Fahrenheitech: %.2f F" %fTemp
Níže uvedená část kódu obsahuje knihovny potřebné pro správné provedení kódů pythonu.
importovat smbus
čas importu
Kód lze spustit zadáním níže uvedeného příkazu do příkazového řádku.
$> python HTS221.py
Výstup snímače je také uveden na obrázku výše pro referenci uživatele.
Krok 4: Aplikace:
HTS221 lze použít v různých spotřebních výrobcích, jako jsou zvlhčovače vzduchu a chladničky atd. Tento senzor také nachází své uplatnění v širších oblastech, včetně inteligentní domácí automatizace, průmyslové automatizace, respiračních zařízení, sledování majetku a zboží.
Doporučuje:
Měření teploty a vlhkosti pomocí DHT11 / DHT22 a Arduino: 4 kroky
Měření teploty a vlhkosti pomocí DHT11 / DHT22 a Arduino: V tomto tutoriálu Arduino se naučíme, jak používat snímač DHT11 nebo DHT22 pro měření teploty a vlhkosti pomocí desky Arduino
Měření vlhkosti a teploty pomocí HTS221 a Arduino Nano: 4 kroky
Měření vlhkosti a teploty pomocí HTS221 a Arduino Nano: HTS221 je ultra kompaktní kapacitní digitální senzor pro relativní vlhkost a teplotu. Obsahuje snímací prvek a integrovaný obvod specifický pro smíšený signál (ASIC), který poskytuje informace o měření prostřednictvím digitálního sériového
Měření vlhkosti a teploty pomocí HIH6130 a Raspberry Pi: 4 kroky
Měření vlhkosti a teploty pomocí HIH6130 a Raspberry Pi: HIH6130 je snímač vlhkosti a teploty s digitálním výstupem. Tyto senzory poskytují úroveň přesnosti ± 4% RH. Díky špičkové dlouhodobé stabilitě, skutečné teplotně kompenzované digitální I2C, špičkové spolehlivosti, energetické účinnosti
Měření teploty a vlhkosti pomocí HDC1000 a Raspberry Pi: 4 kroky
Měření teploty a vlhkosti pomocí HDC1000 a Raspberry Pi: HDC1000 je digitální snímač vlhkosti s integrovaným teplotním senzorem, který poskytuje vynikající přesnost měření při velmi nízkém výkonu. Zařízení měří vlhkost na základě nového kapacitního senzoru. Senzory vlhkosti a teploty jsou
Měření vlhkosti a teploty pomocí HTS221 a fotonu částic: 4 kroky
Měření vlhkosti a teploty pomocí HTS221 a fotonu částic: HTS221 je ultrakompaktní kapacitní digitální senzor pro relativní vlhkost a teplotu. Obsahuje snímací prvek a integrovaný obvod specifický pro smíšený signál (ASIC), který poskytuje informace o měření prostřednictvím digitálního sériového