2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
TMP007, bir cismin temperaturunu təmas etmədən ölçən bir infraqırmızı termopil sensordur. Sensor sahəsində cisim tərəfindən yayılan infraqırmızı enerji, sensora inteqrasiya edilmiş termopil tərəfindən əmilir. Termopil gərginliyi rəqəmsaldır və inteqrasiya edilmiş riyazi mühərrikə giriş olaraq verilir. Bu inteqrasiya edilmiş riyaziyyat mühərriki obyektin temperaturunu hesablayır. Python kodu istifadə edərək Raspberry Pi ilə iş nümayişidir.
Addım 1: Nə Lazımdır..
1. Moruq Pi
2. TMP007
3. I²C Kabel
4. Raspberry Pi üçün I²C Qalxanı
5. Ethernet Kabeli
Addım 2: Bağlantı:
Moruq pi üçün bir I2C qalxanı götürün və moruq pi -nin gpio sancaqlarının üzərinə yumşaq bir şəkildə itələyin.
Sonra I2C kabelinin bir ucunu TMP007 sensoruna, digər ucunu isə I2C ekranına bağlayın.
Ayrıca Ethernet kabelini pi -yə qoşun və ya WiFi modulundan istifadə edə bilərsiniz.
Bağlantılar yuxarıdakı şəkildə göstərilmişdir.
Addım 3: Kod:
TMP007 üçün python kodu GitHub depomuzdan yükləyə bilərsiniz- DCUBE Mağaza Birliyi.
İşdə link.
Python kodu üçün SMBus kitabxanasından istifadə etmişik, moruq pi üzərində SMBus quraşdırma addımları burada təsvir edilmişdir:
pypi.python.org/pypi/smbus-cffi/0.5.1
Kodu buradan da kopyalaya bilərsiniz, belə verilir:
# Sərbəst iradə lisenziyası ilə paylandı.
# Əlaqədar əsərlərinin lisenziyalarına uyğun olması şərtilə, mənfəət və ya pulsuz olaraq istədiyiniz şəkildə istifadə edin.
# TMP007
# Bu kod DCUBE Store -da mövcud olan TMP007_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır.
smbus idxal edin
idxal vaxtı
# I2C avtobusu alın
avtobus = smbus. SMBus (1)
# TMP007 ünvanı, 0x40 (64)
# Konfiqurasiya qeydini seçin, 0x02 (02)
# 0x1540 (5440) Davamlı Dönüşüm rejimi, Müqayisəçi rejimi
data = [0x1540] bus.write_i2c_block_data (0x40, 0x02, data)
vaxt.yuxu (0.5)
# TMP007 ünvanı, 0x40 (64)
# 0x03 (03), 2 baytdan məlumatları geri oxuyun
# cTemp MSB, cTemp LSB
data = bus.read_i2c_block_data (0x40, 0x03, 2)
# Məlumatı 14 bitə çevirin
cTemp = ((data [0] * 256 + (data [1] & 0xFC)) / 4)
əgər cTemp> 8191:
cTemp -= 16384
cTemp = cTemp * 0.03125
fTemp = cTemp * 1.8 + 32
# Ekrana məlumat çıxarın
çap "Celsiusda Obyekt İstiliyi: %.2f C" %cTemp
çap "Fahrenheitdə Obyekt İstiliyi: %.2f F" %fTemp
Addım 4: Tətbiqlər:
TMP007 təmassız temperatur ölçməsinin lazım olduğu sistemlərdə tətbiqini tapır. Laptop və planşet çantalarında, batareyalarda və s. İşlədilirlər. İstilik alıcıları və lazer printerləri də var. Həqiqi obyektlə təmas etmədən temperaturun ölçülməsində daha yüksək səmərəliliyi, müxtəlif tətbiqləri üçün əlavə bir üstünlük verir.