Indholdsfortegnelse:

Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: 4 trin
Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: 4 trin

Video: Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: 4 trin

Video: Temperaturovervågning ved hjælp af MCP9808 og Raspberry Pi: 4 trin
Video: Lesson 38: Using MLX90614 Infrared Contactless Temperature Sensor | Arduino Step By Step Course 2024, November
Anonim
Image
Image

MCP9808 er en meget præcis digital temperatursensor ± 0,5 ° C I2C mini -modul. De er udformet med brugerprogrammerbare registre, der letter temperaturfølende applikationer. MCP9808 temperatursensoren med høj nøjagtighed er blevet en industristandard med hensyn til formfaktor og intelligens og leverer kalibrerede, lineariserede sensorsignaler i digitalt I2C-format.

I denne vejledning er interfacet mellem MCP9808 sensormodul og hindbær pi demonstreret, og dets programmering ved hjælp af pythonsprog er også blevet illustreret. For at aflæse temperaturværdierne har vi brugt hindbær pi med en I2c -adapter. Denne I2C -adapter gør forbindelsen til sensormodulet let og mere pålidelig.

Trin 1: Påkrævet hardware:

Hardware påkrævet
Hardware påkrævet
Hardware påkrævet
Hardware påkrævet
Hardware påkrævet
Hardware påkrævet

De materialer, vi har brug for for at nå vores mål, omfatter følgende hardwarekomponenter:

1. MCP9808

2. Hindbær Pi

3. I2C -kabel

4. I2C skjold til hindbær pi

5. Ethernet -kabel

Trin 2: Hardware -tilslutning:

Hardware -tilslutning
Hardware -tilslutning
Hardware -tilslutning
Hardware -tilslutning

Hardware -tilslutningssektionen forklarer grundlæggende de ledningsforbindelser, der kræves mellem sensoren og hindbær pi. At sikre korrekte forbindelser er den grundlæggende nødvendighed, mens du arbejder på et hvilket som helst system til den ønskede output. Så de nødvendige forbindelser er som følger:

MCP9808 fungerer over I2C. Her er eksemplet på ledningsdiagram, der viser, hvordan du tilslutter hver grænseflade på sensoren.

Out-of-the-box er tavlen konfigureret til en I2C-grænseflade, som sådan anbefaler vi at bruge denne tilslutning, hvis du ellers er agnostiker. Alt du behøver er fire ledninger!

Der kræves kun fire tilslutninger Vcc, Gnd, SCL og SDA ben, og disse er forbundet ved hjælp af I2C kabel.

Disse forbindelser er vist på billederne ovenfor.

Trin 3: Kode til temperaturmåling:

Kode til temperaturmåling
Kode til temperaturmåling

Fordelen ved at bruge hindbær pi er, det vil sige giver dig fleksibiliteten i det programmeringssprog, hvor du vil programmere tavlen, for at interface sensoren med den. Ved at udnytte denne fordel ved dette board demonstrerer vi her sin programmering i python. Python er et af de letteste programmeringssprog med den letteste syntaks. Python -koden til MCP9808 kan downloades fra vores github -fællesskab, der er DCUBE Store Community.

Ud over brugernes brugervenlighed forklarer vi også koden her:

Som det første trin i kodningen skal du downloade SMBus -biblioteket i tilfælde af python, fordi dette bibliotek understøtter de funktioner, der bruges i koden. Så for at downloade biblioteket kan du besøge følgende link:

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

Du kan også kopiere arbejdskoden herfra:

import smbus

importtid

# Få I2C busbus = smbus. SMBus (1)

# MCP9808 adresse, 0x18 (24)

# Vælg konfigurationsregister, 0x01 (1)

# 0x0000 (00) Kontinuerlig konverteringstilstand, opstart som standard

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

# MCP9808 adresse, 0x18 (24)

# Vælg opløsning rgister, 0x08 (8)

# 0x03 (03) Opløsning = +0,0625 / C

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

time.sleep (0,5)

# MCP9808 adresse, 0x18 (24)

# Læs data tilbage fra 0x05 (5), 2 bytes

# Temp MSB, TEMP LSB

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

# Konverter dataene til 13-bit

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

hvis ctemp> 4095:

ctemp -= 8192

ctemp = ctemp * 0,0625

ftemp = ctemp * 1,8 + 32

# Output data til skærmen

print "Temperaturen i Celsius er: %.2f C" %ctemp

print "Temperaturen i Fahrenheit er: %.2f F" %ftemp

Koden udføres ved hjælp af følgende kommando:

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

gt; python MCP9808.py

Sensorens output vises på billedet ovenfor til brugerens reference.

Trin 4: Ansøgninger:

Ansøgninger
Ansøgninger

MCP9808 Digital temperatursensor har flere applikationer på industrielt niveau, der indeholder industrielle frysere og køleskabe sammen med forskellige fødevareprocessorer. Denne sensor kan bruges til forskellige personlige computere, servere samt andre pc -perifere enheder.

Anbefalede: