Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
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. Snímače teploty a vlhkosti sú kalibrované z výrobného závodu. Je funkčný v celom teplotnom rozsahu -40 ° C až +125 ° C.
V tomto návode je demonštrované prepojenie senzorového modulu HDC1000 s malinou pi a bolo ukázané aj jeho programovanie v jazyku python. Na čítanie hodnôt teploty a vlhkosti 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. HDC1000
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:
HDC1000 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 teploty a vlhkosti:
Výhodou použitia raspberry pi je, že vám poskytuje flexibilitu programovacieho jazyka, v ktorom chcete dosku programovať, aby ste s ním mohli prepojiť senzor. Využitím tejto výhody tejto dosky demonštrujeme, že je programovaná v pythone. Pytónový kód pre HDC1000 je možné stiahnuť z našej komunity GitHub, ktorou je Dcube Store.
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 HDC1000, 0x40 (64)
# Vyberte konfiguračný register, 0x02 (02)
# 0x30 (48) Teplota, vlhkosť povolená, rozlíšenie = 14 bitov, ohrievač zapnutý
bus.write_byte_data (0x40, 0x02, 0x30)
# Adresa HDC1000, 0x40 (64)
# Príkaz na odoslanie merania teploty, 0x00 (00)
bus.write_byte (0x40, 0x00)
čas.spánok (0,5)
# Adresa HDC1000, 0x40 (64)
# Prečítajte si údaje späť, 2 bajty
# temp MSB, temp LSB
data0 = bus.read_byte (0x40)
data1 = bus.read_byte (0x40)
# Previesť údaje
temp = (data0 * 256) + data1
cTemp = (teplota / 65536,0) * 165,0 - 40
fTemp = cTemp * 1,8 + 32
# Adresa HDC1000, 0x40 (64)
# Príkaz na odoslanie merania vlhkosti, 0x01 (01)
bus.write_byte (0x40, 0x01)
čas.spánok (0,5)
# Adresa HDC1000, 0x40 (64)
# Prečítajte si údaje späť, 2 bajty
# vlhkosť MSB, vlhkosť LSB
data0 = bus.read_byte (0x40)
data1 = bus.read_byte (0x40)
# Previesť údaje
vlhkosť = (údaje0 * 256) + údaje1
vlhkosť = (vlhkosť / 65536,0) * 100,0
# 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 HDC1000.py gt; python HDC1000.py
Výstup senzora je tiež uvedený na obrázku vyššie pre referenciu používateľa.
Krok 4: Aplikácie:
HDC1000 je možné použiť v oblasti vykurovania, vetrania a klimatizácie (HVAC), inteligentných termostatov a izbových monitorov. Tento senzor nachádza svoje uplatnenie aj v tlačiarňach, ručných meračoch, zdravotníckych pomôckach, nákladnej doprave a odhmlievaní predného skla automobilov.