Агуулгын хүснэгт:

MCP9808 ба Raspberry Pi ашиглан температурын хяналт: 4 алхам
MCP9808 ба Raspberry Pi ашиглан температурын хяналт: 4 алхам

Видео: MCP9808 ба Raspberry Pi ашиглан температурын хяналт: 4 алхам

Видео: MCP9808 ба Raspberry Pi ашиглан температурын хяналт: 4 алхам
Видео: Замена отопления в новостройке. Подключение. Опрессовка. #17 2024, Арваннэгдүгээр
Anonim
Image
Image

MCP9808 бол өндөр нарийвчлалтай дижитал температур мэдрэгч ± 0.5 ° C I2C мини модуль юм. Тэдгээр нь температурыг мэдрэх програмыг хөнгөвчлөх хэрэглэгчийн програмчлагдах бүртгэлүүдтэй. MCP9808 өндөр нарийвчлалтай температур мэдрэгч нь хэлбэрийн хүчин зүйл, оюун ухааны хувьд үйлдвэрлэлийн стандарт болж, тоон, I2C форматаар тохируулагдсан, шугаман мэдрэгчийн дохиог өгдөг.

Энэхүү гарын авлагад бөөрөлзгөнө pi -тай MCP9808 мэдрэгч модулийн интерфейсийг харуулсан бөгөөд түүний програмыг питон хэлээр дүрсэлсэн болно. Температурын утгыг уншихын тулд бид I2c адаптертай бөөрөлзгөнө pi ашигласан бөгөөд энэхүү I2C адаптер нь мэдрэгчийн модульд холбогдоход хялбар, илүү найдвартай болгодог.

Алхам 1: Шаардлагатай тоног төхөөрөмж:

Шаардлагатай техник хангамж
Шаардлагатай техник хангамж
Шаардлагатай техник хангамж
Шаардлагатай техник хангамж
Шаардлагатай техник хангамж
Шаардлагатай техник хангамж

Зорилгодоо хүрэхийн тулд бидэнд шаардлагатай материалууд нь дараахь тоног төхөөрөмжийн бүрэлдэхүүн хэсгүүдийг агуулдаг.

1. MCP9808

2. Raspberry Pi

3. I2C кабель

4. Бөөрөлзгөнө pi -д зориулсан I2C бамбай

5. Ethernet кабель

Алхам 2: Тоног төхөөрөмжийн холболт:

Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт
Тоног төхөөрөмжийн холболт

Тоног төхөөрөмжийн холболтын хэсэг нь үндсэндээ мэдрэгч ба бөөрөлзгөнө pi хооронд шаардлагатай утас холболтыг тайлбарладаг. Аливаа систем дээр ажиллахад шаардлагатай гаралтын хувьд зөв холболтыг хангах нь хамгийн чухал зүйл юм. Тиймээс шаардлагатай холболтууд дараах байдалтай байна.

MCP9808 нь I2C дээр ажиллах болно. Мэдрэгчийн интерфэйс бүрийг хэрхэн яаж холбохыг харуулсан утасны диаграмын жишээ энд байна.

Хайрцагнаас гадуурх самбар нь I2C интерфэйс дээр тохируулагдсан байдаг тул хэрэв та өөр ойлголтгүй бол энэ холболтыг ашиглахыг зөвлөж байна. Танд ердөө дөрвөн утас л хангалттай!

Vcc, Gnd, SCL, SDA зүүг зөвхөн дөрвөн холболт шаарддаг бөгөөд эдгээр нь I2C кабелийн тусламжтайгаар холбогддог.

Эдгээр холболтыг дээрх зурган дээр харуулав.

Алхам 3: Температур хэмжих код:

Температур хэмжих код
Температур хэмжих код

Бөөрөлзгөнө pi ашиглах давуу тал нь мэдрэгчийг интерфэйстэй холбохын тулд самбарыг програмчлах хэлний уян хатан байдлыг өгдөг. Энэхүү самбарын давуу талыг ашиглан бид питон дахь програмчлалыг энд харуулав. Python бол хамгийн хялбар синтакс бүхий програмчлалын хамгийн хялбар хэлүүдийн нэг юм. MCP9808 -ийн питон кодыг манай github бүлгээс DCUBE дэлгүүрийн бүлгээс татаж авах боломжтой.

Хэрэглэгчдэд хялбар байхын тулд бид кодыг энд тайлбарлаж байна.

Кодлох эхний алхам бол питоны хувьд SMBus номын санг татаж авах хэрэгтэй, учир нь энэ номын сан нь кодонд ашиглагддаг функцийг дэмждэг. Тиймээс номын санг татаж авахын тулд та дараах линкээр орж үзэх боломжтой.

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

Та ажлын кодыг эндээс хуулж болно.

smbus импортлох

импортлох хугацаа

# I2C автобус авах = smbus. SMBus (1)

# MCP9808 хаяг, 0x18 (24)

# Тохиргооны бүртгэлийг сонгоно уу, 0x01 (1)

# 0x0000 (00) Тасралтгүй хөрвүүлэх горим, Power-up default

config = [0x00, 0x00] bus.write_i2c_block_data (0x18, 0x01, тохиргоо)

# MCP9808 хаяг, 0x18 (24)

# Тогтоол rgister сонгоно уу, 0x08 (8)

# 0x03 (03) Нарийвчлал = +0.0625 / C

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

цаг унтах (0.5)

# MCP9808 хаяг, 0x18 (24)

# Өгөгдлийг 0x05 (5), 2 байтаас буцааж уншина уу

# Темп MSB, TEMP LSB

өгөгдөл = bus.read_i2c_block_data (0x18, 0x05, 2)

# Өгөгдлийг 13 бит болгон хөрвүүлэх

ctemp = ((өгөгдөл [0] & 0x1F) * 256) + өгөгдөл [1]

хэрэв ctemp> 4095 бол:

ctemp -= 8192

ctemp = ctemp * 0.0625

ftemp = ctemp * 1.8 + 32

# Дэлгэц рүү өгөгдөл гаргана

хэвлэх "Цельсийн температур нь: %.2f C" %ctemp

хэвлэх "Фаренгейт дэх температур: %.2f F" %ftemp

Кодыг дараах тушаалыг ашиглан гүйцэтгэнэ.

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

gt; python MCP9808.py

Мэдрэгчийн гаралтыг хэрэглэгчийн лавлагаанд зориулан дээрх зурагт үзүүлэв.

Алхам 4: Өргөдөл:

Хэрэглээ
Хэрэглээ

MCP9808 дижитал температур мэдрэгч нь үйлдвэрлэлийн зориулалттай хөлдөөгч, хөргөгч, төрөл бүрийн хүнсний процессорыг багтаасан хэд хэдэн салбарын түвшний програмуудтай. Энэхүү мэдрэгчийг янз бүрийн хувийн компьютер, сервер болон бусад компьютерийн дагалдах төхөөрөмжүүдэд ашиглаж болно.

Зөвлөмж болгож буй: