İçindekiler:

MCP9808 ve Raspberry Pi Kullanarak Sıcaklık İzleme: 4 Adım
MCP9808 ve Raspberry Pi Kullanarak Sıcaklık İzleme: 4 Adım

Video: MCP9808 ve Raspberry Pi Kullanarak Sıcaklık İzleme: 4 Adım

Video: MCP9808 ve Raspberry Pi Kullanarak Sıcaklık İzleme: 4 Adım
Video: Lesson 32: MCP9808 High Accuracy I2C Temperature | Arduino Step By Step Course 2024, Kasım
Anonim
Image
Image

MCP9808, son derece hassas bir dijital sıcaklık sensörü ±0.5°C I2C mini modülüdür. Sıcaklık algılama uygulamalarını kolaylaştıran, kullanıcı tarafından programlanabilen kayıtlarla yapılandırılmışlardır. MCP9808 yüksek hassasiyetli sıcaklık sensörü, dijital, I2C formatında kalibre edilmiş, doğrusallaştırılmış sensör sinyalleri sağlayarak form faktörü ve zeka açısından bir endüstri standardı haline geldi.

Bu eğitimde, MCP9808 sensör modülünün ahududu pi ile arayüzlenmesi ve python dili kullanılarak programlanması da gösterilmiştir. Sıcaklık değerlerini okumak için I2c adaptörlü ahududu pi kullandık. Bu I2C adaptörü sensör modülüne bağlantıyı daha kolay ve daha güvenilir hale getiriyor.

Adım 1: Donanım Gerekli:

Gerekli Donanım
Gerekli Donanım
Gerekli Donanım
Gerekli Donanım
Gerekli Donanım
Gerekli Donanım

Hedefimizi gerçekleştirmek için ihtiyaç duyduğumuz malzemeler aşağıdaki donanım bileşenlerini içerir:

1. MCP9808

2. Ahududu Pi

3. I2C Kablosu

4. Ahududu pi için I2C kalkanı

5. Ethernet Kablosu

Adım 2: Donanım Bağlantısı:

Donanım Bağlantısı
Donanım Bağlantısı
Donanım Bağlantısı
Donanım Bağlantısı

Donanım bağlantısı bölümü temel olarak sensör ve ahududu pi arasında gerekli olan kablo bağlantılarını açıklar. İstenilen çıktı için herhangi bir sistem üzerinde çalışırken doğru bağlantıların sağlanması temel zorunluluktur. Yani, gerekli bağlantılar aşağıdaki gibidir:

MCP9808, I2C üzerinden çalışacaktır. Sensörün her bir arayüzünün nasıl bağlanacağını gösteren örnek kablo şeması buradadır.

Kutudan çıktığı gibi, kart bir I2C arayüzü için yapılandırılmıştır, bu nedenle, aksi takdirde agnostik iseniz bu bağlantıyı kullanmanızı öneririz. Tek ihtiyacınız olan dört tel!

Vcc, Gnd, SCL ve SDA pinlerinden sadece dört bağlantı gereklidir ve bunlar I2C kablosu yardımıyla bağlanır.

Bu bağlantılar yukarıdaki resimlerde gösterilmiştir.

Adım 3: Sıcaklık Ölçümü Kodu:

Sıcaklık Ölçümü Kodu
Sıcaklık Ölçümü Kodu

Raspberry pi kullanmanın avantajı, kartı programlamak istediğiniz programlama dilinin, sensör ile arayüz oluşturmak için size esneklik sağlamasıdır. Bu kartın bu avantajından yararlanarak, burada programlamasını python'da gösteriyoruz. Python, en kolay sözdizimine sahip en kolay programlama dillerinden biridir. MCP9808 için python kodu, DCUBE Mağaza Topluluğu olan github topluluğumuzdan indirilebilir.

Kullanıcıların kolaylığının yanı sıra, kodu burada da açıklıyoruz:

Kodlamanın ilk adımı olarak, python durumunda SMBus kitaplığını indirmeniz gerekir, çünkü bu kitaplık kodda kullanılan işlevleri destekler. Bu nedenle, kütüphaneyi indirmek için aşağıdaki bağlantıyı ziyaret edebilirsiniz:

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

Çalışma kodunu buradan da kopyalayabilirsiniz:

smbus'u içe aktar

ithalat zamanı

# I2C veri yolunu al = smbus. SMBus(1)

# MCP9808 adresi, 0x18(24)

# Yapılandırma kaydını seçin, 0x01(1)

# 0x0000(00) Sürekli dönüştürme modu, Açılış varsayılanı

yapılandırma = [0x00, 0x00]bus.write_i2c_block_data(0x18, 0x01, yapılandırma)

# MCP9808 adresi, 0x18(24)

# Çözünürlük kaydı seçin, 0x08(8)

# 0x03(03) Çözünürlük = +0.0625 / C

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

zaman.uyku(0.5)

# MCP9808 adresi, 0x18(24)

# 0x05(5), 2 bayttan veriyi geri oku

# Temp MSB, TEMP LSB

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

# Veriyi 13 bit'e dönüştürün

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

ctemp > 4095 ise:

sıcaklık -= 8192

ctemp = ctemp * 0.0625

ftemp = ctemp * 1.8 + 32

# Ekrana veri çıkışı

print "Sıcaklık Santigrat cinsinden: %.2f C" %ctemp

print "Sıcaklık Fahrenheit cinsinden: %.2f F" %ftemp

Kod aşağıdaki komut kullanılarak yürütülür:

$> piton MCP9808.py gt; piton MCP9808.py

gt; piton MCP9808.py

Sensörün çıkışı, kullanıcının referans olması için yukarıdaki resimde gösterilmektedir.

Adım 4: Uygulamalar:

Uygulamalar
Uygulamalar

MCP9808 Dijital Sıcaklık Sensörü, çeşitli gıda işlemcileri ile birlikte endüstriyel dondurucuları ve buzdolaplarını içeren çeşitli endüstri düzeyinde uygulamalara sahiptir. Bu sensör, çeşitli kişisel bilgisayarlar, sunucular ve diğer PC çevre birimleri için kullanılabilir.

Önerilen: