Cuprins:

Monitorizarea temperaturii folosind MCP9808 și Raspberry Pi: 4 pași
Monitorizarea temperaturii folosind MCP9808 și Raspberry Pi: 4 pași

Video: Monitorizarea temperaturii folosind MCP9808 și Raspberry Pi: 4 pași

Video: Monitorizarea temperaturii folosind MCP9808 și Raspberry Pi: 4 pași
Video: Măsurarea temperaturii (Tehnica AMG) 2024, Noiembrie
Anonim
Image
Image

MCP9808 este un senzor digital de temperatură extrem de precis ± 0,5 ° C mini modul I2C. Acestea sunt înglobate cu registre programabile de utilizator care facilitează aplicațiile de detectare a temperaturii. Senzorul de temperatură de înaltă precizie MCP9808 a devenit un standard industrial în ceea ce privește factorul de formă și inteligența, oferind semnale calibrate, linearizate ale senzorului în format digital, I2C.

În acest tutorial este demonstrată interfața modulului senzor MCP9808 cu raspberry pi și a fost ilustrată și programarea acestuia folosind limbajul python. Pentru a citi valorile temperaturii, am folosit raspberry pi cu un adaptor I2c. Acest adaptor I2C face conexiunea la modulul senzor mai ușoară și mai fiabilă.

Pasul 1: Hardware necesar:

Hardware necesar
Hardware necesar
Hardware necesar
Hardware necesar
Hardware necesar
Hardware necesar

Materialele de care avem nevoie pentru îndeplinirea obiectivului nostru includ următoarele componente hardware:

1. MCP9808

2. Raspberry Pi

3. Cablu I2C

4. Scut I2C pentru pi zmeură

5. Cablu Ethernet

Pasul 2: conectare hardware:

Conectare hardware
Conectare hardware
Conectare hardware
Conectare hardware

Secțiunea de conectare hardware explică practic conexiunile de cablare necesare între senzor și raspberry pi. Asigurarea conexiunilor corecte este necesitatea de bază în timp ce lucrați la orice sistem pentru ieșirea dorită. Deci, conexiunile necesare sunt următoarele:

MCP9808 va funcționa pe I2C. Iată exemplul schemei de cablare, care demonstrează cum se conectează fiecare interfață a senzorului.

Out-of-the-box, placa este configurată pentru o interfață I2C, ca atare, vă recomandăm să utilizați această conexiune dacă sunteți altfel agnostic. Nu ai nevoie decât de patru fire!

Sunt necesare doar patru conexiuni Vcc, Gnd, SCL și pinii SDA și acestea sunt conectate cu ajutorul cablului I2C.

Aceste conexiuni sunt prezentate în imaginile de mai sus.

Pasul 3: Cod pentru măsurarea temperaturii:

Cod pentru măsurarea temperaturii
Cod pentru măsurarea temperaturii

Avantajul utilizării raspberry pi este că vă oferă flexibilitatea limbajului de programare în care doriți să programați placa pentru a interfața senzorul cu aceasta. Profitând de acest avantaj al acestei plăci, demonstrăm aici programarea sa în python. Python este unul dintre cele mai ușoare limbaje de programare cu cea mai ușoară sintaxă. Codul python pentru MCP9808 poate fi descărcat din comunitatea noastră github care este DCUBE Store Community.

Pe lângă ușurința utilizatorilor, explicăm și codul aici:

Ca prim pas de codare, trebuie să descărcați biblioteca SMBus în caz de python, deoarece această bibliotecă acceptă funcțiile utilizate în cod. Deci, pentru a descărca biblioteca puteți vizita următorul link:

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

Puteți copia codul de lucru și de aici:

import smbus

timpul de import

# Obțineți autobuzul I2C = smbus. SMBus (1)

# Adresa MCP9808, 0x18 (24)

# Selectați registrul de configurare, 0x01 (1)

# 0x0000 (00) Mod de conversie continuă, implicit de pornire

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

# Adresa MCP9808, 0x18 (24)

# Selectați rezoluția rgister, 0x08 (8)

# 0x03 (03) Rezoluție = +0.0625 / C

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

time.sleep (0,5)

# Adresa MCP9808, 0x18 (24)

# Citiți datele înapoi de la 0x05 (5), 2 octeți

# Temp MSB, TEMP LSB

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

# Convertiți datele în 13 biți

ctemp = ((date [0] & 0x1F) * 256) + date [1]

dacă ctemp> 4095:

ctemp - = 8192

ctemp = ctemp * 0,0625

ftemp = ctemp * 1,8 + 32

# Ieșire date pe ecran

print "Temperatura în grade Celsius este:%.2f C"% ctemp

print "Temperatura în Fahrenheit este:%.2f F"% ftemp

Codul este executat folosind următoarea comandă:

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

gt; python MCP9808.py

Ieșirea senzorului este prezentată în imaginea de mai sus pentru referința utilizatorului.

Pasul 4: Aplicații:

Aplicații
Aplicații

Senzorul digital de temperatură MCP9808 are mai multe aplicații la nivel de industrie care încorporează congelatoare și frigidere industriale împreună cu diverse procesoare de alimente. Acest senzor poate fi utilizat pentru diverse computere personale, servere, precum și alte periferice pentru PC.

Recomandat: