Satura rādītājs:

Temperatūras uzraudzība, izmantojot MCP9808 un Raspberry Pi: 4 soļi
Temperatūras uzraudzība, izmantojot MCP9808 un Raspberry Pi: 4 soļi

Video: Temperatūras uzraudzība, izmantojot MCP9808 un Raspberry Pi: 4 soļi

Video: Temperatūras uzraudzība, izmantojot MCP9808 un Raspberry Pi: 4 soļi
Video: Умное WiFi реле термостат с внешним датчиком температуры и энергомониторингом 2024, Novembris
Anonim
Image
Image

MCP9808 ir ļoti precīzs digitālais temperatūras sensors ± 0,5 ° C I2C mini modulis. Tie ir iemiesoti lietotāja programmējamos reģistros, kas atvieglo temperatūras noteikšanas lietojumprogrammas. Augstas precizitātes temperatūras sensors MCP9808 ir kļuvis par nozares standartu formas un intelekta ziņā, nodrošinot kalibrētus, linearizētus sensoru signālus digitālā, I2C formātā.

Šajā apmācībā ir parādīta MCP9808 sensora moduļa saskarne ar aveņu pi un parādīta arī tā programmēšana, izmantojot python valodu. Lai nolasītu temperatūras vērtības, mēs esam izmantojuši aveņu pi ar I2c adapteri. Šis I2C adapteris padara savienojumu ar sensora moduli vieglu un uzticamāku.

1. darbība. Nepieciešamā aparatūra:

Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra

Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:

1. MCP9808

2. Aveņu Pi

3. I2C kabelis

4. I2C vairogs aveņu pi

5. Ethernet kabelis

2. darbība. Aparatūras savienošana:

Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums

Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un aveņu pi. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:

MCP9808 darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.

Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis. Viss, kas Jums nepieciešams, ir četri vadi!

Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.

Šie savienojumi ir parādīti iepriekš redzamajos attēlos.

3. darbība. Temperatūras mērīšanas kods:

Temperatūras mērīšanas kods
Temperatūras mērīšanas kods

Aveņu pi izmantošanas priekšrocība ir tā, ka tas nodrošina programmēšanas valodas elastību, kādā vēlaties programmēt tāfeli, lai sasaistītu sensoru ar to. Izmantojot šīs plates priekšrocības, mēs šeit demonstrējam tās programmēšanu pitonā. Python ir viena no vienkāršākajām programmēšanas valodām ar vienkāršāko sintaksi. Myth9808 python kodu var lejupielādēt no mūsu github kopienas, kas ir DCUBE Store Community.

Kā arī lietotāju ērtībai mēs šeit izskaidrojam kodu:

Kā pirmais kodēšanas solis jums ir nepieciešams lejupielādēt SMBus bibliotēku python gadījumā, jo šī bibliotēka atbalsta kodā izmantotās funkcijas. Tātad, lai lejupielādētu bibliotēku, varat apmeklēt šo saiti:

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

Darba kodu varat nokopēt arī šeit:

importēt smbus

importa laiks

# Iegūstiet I2C kopni = smbus. SMBus (1)

# MCP9808 adrese, 0x18 (24)

# Izvēlieties konfigurācijas reģistru, 0x01 (1)

# 0x0000 (00) Nepārtrauktas konversijas režīms, ieslēgšanas noklusējums

config = [0x00, 0x00] bus.write_i2c_block_data (0x18, 0x01, config)

# MCP9808 adrese, 0x18 (24)

# Izvēlieties izšķirtspēju rgister, 0x08 (8)

# 0x03 (03) Izšķirtspēja = +0.0625 / C

bus.write_byte_data (0x18, 0x08, 0x03)

miega laiks (0,5)

# MCP9808 adrese, 0x18 (24)

# Lasīt datus no 0x05 (5), 2 baiti

# Temp MSB, TEMP LSB

dati = bus.read_i2c_block_data (0x18, 0x05, 2)

# Pārvērtiet datus par 13 bitiem

ctemp = ((dati [0] un 0x1F) * 256) + dati [1]

ja ctemp> 4095:

ctemp -= 8192

ctemp = ctemp * 0,0625

ftemp = ctemp * 1,8 + 32

# Izvadiet datus ekrānā

drukāt "Temperatūra pēc Celsija ir: %.2f C" %ctemp

drukāt "Temperatūra pēc Fārenheita ir: %.2f F" %ftemp

Kods tiek izpildīts, izmantojot šādu komandu:

$> python MCP9808.py gt; python MCP9808.py

gt; python MCP9808.py

Sensora izeja ir parādīta iepriekšējā attēlā lietotāja atsaucei.

4. darbība. Lietojumprogrammas:

Lietojumprogrammas
Lietojumprogrammas

MCP9808 digitālajam temperatūras sensoram ir vairākas nozares līmeņa lietojumprogrammas, kurās ir iekļauti rūpnieciskie saldētavas un ledusskapji, kā arī dažādi pārtikas pārstrādātāji. Šo sensoru var izmantot dažādiem personālajiem datoriem, serveriem, kā arī citām datoru perifērijas ierīcēm.

Ieteicams: