İçindekiler:

Raspberry Pi - TMP007 Kızılötesi Termopil Sensör Python Eğitimi: 4 Adım
Raspberry Pi - TMP007 Kızılötesi Termopil Sensör Python Eğitimi: 4 Adım

Video: Raspberry Pi - TMP007 Kızılötesi Termopil Sensör Python Eğitimi: 4 Adım

Video: Raspberry Pi - TMP007 Kızılötesi Termopil Sensör Python Eğitimi: 4 Adım
Video: Arduino Prototyping Inputs #36: Thermopiles 2024, Temmuz
Anonim
Image
Image

TMP007, bir nesnenin sıcaklığını temas etmeden ölçen bir kızılötesi termopil sensörüdür. Sensör alanındaki nesne tarafından yayılan kızılötesi enerji, sensöre entegre edilmiş termopil tarafından emilir. Termopil voltajı sayısallaştırılır ve entegre matematik motoruna bir girdi olarak beslenir. Bu entegre matematik motoru, nesne sıcaklığını hesaplar. İşte python kodunu kullanarak Raspberry Pi ile çalışma gösterimi.

Adım 1: İhtiyacınız Olan Şey..!

Neye ihtiyacın var..!!
Neye ihtiyacın var..!!

1. Ahududu Pi

2. TMP007

3. I²C Kablosu

4. Raspberry Pi için I²C Kalkanı

5. Ethernet Kablosu

Adım 2: Bağlantı:

Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı

Ahududu pi için bir I2C kalkanı alın ve ahududu pi'nin gpio pimlerinin üzerine hafifçe itin.

Ardından I2C kablosunun bir ucunu TMP007 sensörüne ve diğer ucunu I2C blendajına bağlayın.

Ayrıca Ethernet kablosunu pi'ye bağlayın veya bir WiFi modülü kullanabilirsiniz.

Bağlantılar yukarıdaki resimde gösterilmiştir.

Adım 3: Kod:

Kod
Kod

TMP007 için python kodu GitHub depomuz - DCUBE Mağaza Topluluğumuzdan indirilebilir.

Bağlantı burada.

Python kodu için SMBus kütüphanesini kullandık, raspberry pi'ye SMBus kurma adımları burada açıklanmıştır:

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

Kodu buradan da kopyalayabilirsiniz, aşağıdaki şekilde verilmiştir:

# Özgür irade lisansıyla dağıtılır.

# İlgili eserlerinin lisanslarına uyması koşuluyla, istediğiniz şekilde, kârlı veya ücretsiz olarak kullanın.

# TMP007

# Bu kod, DCUBE Store'da bulunan TMP007_I2CS I2C Mini Modülü ile çalışmak üzere tasarlanmıştır.

smbus'u içe aktar

ithalat zamanı

# I2C veri yolunu alın

veri yolu = smbus. SMBus(1)

# TMP007 adresi, 0x40(64)

# Yapılandırma kaydını seçin, 0x02(02)

# 0x1540(5440) Sürekli Dönüşüm modu, Karşılaştırıcı modu

veri = [0x1540]bus.write_i2c_block_data(0x40, 0x02, veri)

zaman.uyku(0.5)

# TMP007 adresi, 0x40(64)

# 0x03(03), 2 bayttan veriyi geri oku

# cTemp MSB, cTemp LSB

veri = bus.read_i2c_block_data(0x40, 0x03, 2)

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

cTemp = ((veri[0] * 256 + (veri[1] & 0xFC)) / 4)

cTemp > 8191 ise:

cTemp -= 16384

cTemp = cTemp * 0.03125

fTemp = cTemp * 1.8 + 32

# Ekrana veri çıkışı

print "Santigrat cinsinden Nesne Sıcaklığı: %.2f C" %cTemp

print "Nesne Sıcaklığı Fahrenhayt cinsinden: %.2f F" %fTemp

Adım 4: Uygulamalar:

TMP007 temassız sıcaklık ölçümünün gerekli olduğu sistemlerde uygulamasını bulur. Dizüstü bilgisayar ve tablet kasalarında, pillerde vb. kullanılırlar. Ayrıca ısı alıcıların yanı sıra lazer yazıcılarda da kullanılırlar. Gerçek nesneyle temas etmeden sıcaklığı ölçmedeki yüksek verimliliği, çeşitli uygulamalar için ona ekstra bir avantaj sağlar.

Önerilen: