Kazalo:

Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: 4 koraki
Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: 4 koraki

Video: Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: 4 koraki

Video: Merjenje temperature in vlažnosti z uporabo HDC1000 in Raspberry Pi: 4 koraki
Video: Часть 5 - Аудиокнига Уолдена Генри Дэвида Торо (глы 12–15) 2024, Julij
Anonim
Image
Image

HDC1000 je digitalni senzor vlažnosti z vgrajenim temperaturnim senzorjem, ki zagotavlja odlično merilno natančnost pri zelo nizki moči. Naprava meri vlažnost na podlagi novega kapacitivnega senzorja. Senzorji vlažnosti in temperature so tovarniško umerjeni. Deluje v celotnem temperaturnem območju od -40 ° C do +125 ° C.

V tej vadnici je prikazano povezovanje senzorskega modula HDC1000 z malino pi, ponazorjeno pa je tudi njegovo programiranje z uporabo jezika python. Za odčitavanje vrednosti temperature in vlažnosti smo uporabili malinovo pi z adapterjem I2C, ki omogoča enostavno in zanesljivo povezavo s senzorskim modulom.

1. korak: Potrebna strojna oprema:

Potrebna strojna oprema
Potrebna strojna oprema
Potrebna strojna oprema
Potrebna strojna oprema
Potrebna strojna oprema
Potrebna strojna oprema

Materiali, ki jih potrebujemo za dosego našega cilja, vključujejo naslednje komponente strojne opreme:

1. HDC1000

2. Malina Pi

3. Kabel I2C

4. I2C ščit za malinovo pi

5. Ethernetni kabel

2. korak: Priključitev strojne opreme:

Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme

Oddelek za priključitev strojne opreme v bistvu razlaga potrebne povezave ožičenja med senzorjem in malinovim pi. Zagotavljanje pravilnih povezav je osnovna potreba pri delu na katerem koli sistemu za želeni izhod. Torej so potrebne povezave naslednje:

HDC1000 bo deloval preko I2C. Tu je primer sheme ožičenja, ki prikazuje, kako povezati vsak vmesnik senzorja.

Plošča je že pripravljena za vmesnik I2C, zato priporočamo uporabo te povezave, če niste agnostični.

Vse kar potrebujete so štiri žice! Potrebne so le štiri povezave Vcc, Gnd, SCL in SDA, ki so povezane s kablom I2C.

Te povezave so prikazane na zgornjih slikah.

3. korak: Koda za merjenje temperature in vlažnosti:

Koda za merjenje temperature in vlažnosti
Koda za merjenje temperature in vlažnosti

Prednost uporabe maline pi je, da vam omogoča prilagodljivost programskega jezika, v katerem želite programirati ploščo, da povežete senzor z njo. Če izkoristimo to prednost te plošče, tukaj dokazujemo njeno programiranje v pythonu. Kodo python za HDC1000 lahko prenesete iz naše skupnosti GitHub, to je Dcube Store.

Poleg lažjega uporabnika kodo razlagamo tudi tukaj:

Kot prvi korak kodiranja morate v primeru pythona prenesti knjižnico SMBus, ker ta knjižnica podpira funkcije, ki se uporabljajo v kodi. Če želite prenesti knjižnico, obiščite naslednjo povezavo:

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

Delovno kodo python za ta senzor lahko kopirate tudi od tu:

uvoz smbus

čas uvoza

# Pridobite avtobus I2C

vodilo = smbus. SMBus (1)

# Naslov HDC1000, 0x40 (64)

# Izberite konfiguracijski register, 0x02 (02)

# 0x30 (48) Temperatura, omogočena vlaga, ločljivost = 14 bitov, grelec vklopljen

bus.write_byte_data (0x40, 0x02, 0x30)

# Naslov HDC1000, 0x40 (64)

# Pošlji ukaz za merjenje temp, 0x00 (00)

bus.write_byte (0x40, 0x00)

time.sleep (0,5)

# Naslov HDC1000, 0x40 (64)

# Preberi podatke nazaj, 2 bajta

# temp MSB, temp LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Pretvorite podatke

temp = (podatki0 * 256) + podatki1

cTemp = (temp / 65536.0) * 165,0 - 40

fTemp = cTemp * 1,8 + 32

# Naslov HDC1000, 0x40 (64)

# Pošlji ukaz za merjenje vlažnosti, 0x01 (01)

bus.write_byte (0x40, 0x01)

time.sleep (0,5)

# Naslov HDC1000, 0x40 (64)

# Preberi podatke nazaj, 2 bajta

# vlažnost MSB, vlažnost LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Pretvorite podatke

vlažnost = (podatki0 * 256) + podatki1

vlažnost = (vlažnost / 65536,0) * 100,0

# Iznesite podatke na zaslon

natisnite "Relativna vlažnost: %.2f %%" %vlažnosti

natisni "Temperatura v Celzijah: %.2f C" %cTemp

natisni "Temperatura v Fahrenheitu: %.2f F" %fTemp

Del spodaj omenjene kode vključuje knjižnice, potrebne za pravilno izvedbo kod Python.

uvoz smbus

čas uvoza

Kodo lahko izvedete tako, da v ukazni poziv vnesete spodnji ukaz.

$> python HDC1000.py gt; python HDC1000.py

Izhod senzorja je prikazan tudi na zgornji sliki za referenco uporabnika.

4. korak: Aplikacije:

Aplikacije
Aplikacije

HDC1000 se lahko uporablja pri ogrevanju, prezračevanju in klimatizaciji (HVAC), pametnih termostatih in sobnih monitorjih. Ta senzor se uporablja tudi v tiskalnikih, ročnih merilcih, medicinskih pripomočkih, pošiljanju tovora, pa tudi v avtomobilski megli.

Priporočena: