Måling av temperatur og fuktighet ved bruk av HDC1000 og Raspberry Pi: 4 trinn
Måling av temperatur og fuktighet ved bruk av HDC1000 og Raspberry Pi: 4 trinn
Anonim
Image
Image

HDC1000 er en digital fuktighetssensor med integrert temperatursensor som gir utmerket målenøyaktighet ved svært lav effekt. Enheten måler fuktighet basert på en ny kapasitiv sensor. Fuktighets- og temperatursensorene er kalibrert på fabrikken. Det er funksjonelt innenfor hele -40 ° C til +125 ° C temperaturområde.

I denne opplæringen er grensesnittet mellom HDC1000 sensormodulen og bringebær pi demonstrert, og programmeringen ved hjelp av pythonspråk er også illustrert. For å lese temperatur- og fuktighetsverdiene har vi brukt bringebærpi med en I2C -adapter. Denne I2C -adapteren gjør tilkoblingen til sensormodulen enkel og mer pålitelig.

Trinn 1: Nødvendig maskinvare:

Maskinvare som kreves
Maskinvare som kreves
Maskinvare som kreves
Maskinvare som kreves
Maskinvare som kreves
Maskinvare som kreves

Materialene vi trenger for å nå målet vårt inkluderer følgende maskinvarekomponenter:

1. HDC1000

2. Bringebær Pi

3. I2C -kabel

4. I2C Shield for bringebær pi

5. Ethernet -kabel

Trinn 2: Maskinvaretilkobling:

Maskinvaretilkobling
Maskinvaretilkobling
Maskinvaretilkobling
Maskinvaretilkobling

Maskinvaretilkoblingsdelen forklarer i utgangspunktet ledningsforbindelsene som kreves mellom sensoren og bringebær -pi. Å sikre riktige tilkoblinger er den grunnleggende nødvendigheten mens du arbeider på et hvilket som helst system for ønsket utgang. Så de nødvendige tilkoblingene er som følger:

HDC1000 fungerer over I2C. Her er eksempel på koblingsskjema, som viser hvordan du kobler til hvert grensesnitt på sensoren.

Uten boksen er brettet konfigurert for et I2C-grensesnitt, derfor anbefaler vi å bruke denne tilkoblingen hvis du ellers er agnostiker.

Alt du trenger er fire ledninger! Bare fire tilkoblinger kreves Vcc, Gnd, SCL og SDA -pinner, og disse er koblet til ved hjelp av I2C -kabel.

Disse sammenhengene er vist på bildene ovenfor.

Trinn 3: Kode for måling av temperatur og fuktighet:

Kode for måling av temperatur og fuktighet
Kode for måling av temperatur og fuktighet

Fordelen med å bruke bringebær pi er at det gir deg fleksibiliteten til programmeringsspråket der du vil programmere brettet for å koble sensoren til det. Ved å utnytte denne fordelen med dette brettet, demonstrerer vi her at det er programmering i python. Python -koden for HDC1000 kan lastes ned fra vårt GitHub -fellesskap som er Dcube Store.

I tillegg til brukernes brukervennlighet, forklarer vi koden også her:

Som det første trinnet i kodingen må du laste ned SMBus -biblioteket i tilfelle python, fordi dette biblioteket støtter funksjonene som brukes i koden. Så for å laste ned biblioteket kan du besøke følgende lenke:

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

Du kan også kopiere arbeidspythonkoden for denne sensoren herfra:

importer smbus

importtid

# Få I2C -buss

buss = smbus. SMBus (1)

# HDC1000 -adresse, 0x40 (64)

# Velg konfigurasjonsregister, 0x02 (02)

# 0x30 (48) Temperatur, Fuktighet aktivert, Resolultion = 14-bits, Varmer på

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

# HDC1000 -adresse, 0x40 (64)

# Send kommando for temperaturmåling, 0x00 (00)

bus.write_byte (0x40, 0x00)

time.sleep (0,5)

# HDC1000 -adresse, 0x40 (64)

# Les data tilbake, 2 byte

# temp MSB, temp LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Konverter dataene

temp = (data0 * 256) + data1

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

fTemp = cTemp * 1,8 + 32

# HDC1000 -adresse, 0x40 (64)

# Send kommando for fuktighetsmåling, 0x01 (01)

bus.write_byte (0x40, 0x01)

time.sleep (0,5)

# HDC1000 -adresse, 0x40 (64)

# Les data tilbake, 2 byte

# fuktighet MSB, fuktighet LSB

data0 = bus.read_byte (0x40)

data1 = bus.read_byte (0x40)

# Konverter dataene

fuktighet = (data0 * 256) + data1

fuktighet = (fuktighet / 65536,0) * 100,0

# Utdata til skjermen

print "Relativ fuktighet: %.2f %%" %fuktighet

print "Temperatur i Celsius: %.2f C" %cTemp

print "Temperatur i Fahrenheit: %.2f F" %fTemp

Den delen av koden som er nevnt nedenfor inkluderer bibliotekene som kreves for riktig utførelse av pythonkodene.

importer smbus

importtid

Koden kan kjøres ved å skrive kommandoen nedenfor i ledeteksten.

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

Sensorens utgang er også vist på bildet ovenfor for referanse til brukeren.

Trinn 4: Søknader:

Applikasjoner
Applikasjoner

HDC1000 kan brukes i oppvarming, ventilasjon og klimaanlegg (HVAC), smarte termostater og rommonitorer. Denne sensoren finner også sin anvendelse i skrivere, håndholdte målere, medisinske enheter, Cargo Shipping samt Automotive Windshield Defog.