2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
TMP007 to czujnik termoelektryczny na podczerwień, który mierzy temperaturę obiektu bez kontaktu z nim. Energia podczerwona emitowana przez obiekt w polu czujnika jest pochłaniana przez termostos zintegrowany z czujnikiem. Napięcie termoelektryczne jest przekształcane na postać cyfrową i podawane jako wejście do zintegrowanego silnika matematycznego. Ten zintegrowany silnik matematyczny oblicza temperaturę obiektu. Oto jego działająca demonstracja z Raspberry Pi przy użyciu kodu Pythona.
Krok 1: Czego potrzebujesz.
1. Raspberry Pi
2. TMP007
3. Kabel I²C
4. Osłona I²C dla Raspberry Pi
5. Kabel Ethernet
Krok 2: Połączenie:
Weź nakładkę I2C dla raspberry pi i delikatnie nałóż ją na piny gpio raspberry pi.
Następnie podłącz jeden koniec kabla I2C do czujnika TMP007, a drugi koniec do ekranu I2C.
Podłącz również kabel Ethernet do pi lub możesz użyć modułu WiFi.
Połączenia prezentuje powyższy obrazek.
Krok 3: Kod:
Kod Pythona dla TMP007 można pobrać z naszego repozytorium GitHub-DCUBE Store Community.
Tutaj jest link.
Użyliśmy biblioteki SMBus do kodu Pythona, kroki instalacji SMBus na raspberry pi są opisane tutaj:
pypi.python.org/pypi/smbus-cffi/0.5.1
Możesz również skopiować kod stąd, jest on podany w następujący sposób:
# Rozprowadzany z wolną licencją.
# Używaj go w dowolny sposób, z zyskiem lub za darmo, pod warunkiem, że pasuje do licencji powiązanych z nim utworów.
# TMP007
# Ten kod jest przeznaczony do współpracy z modułem TMP007_I2CS I2C Mini dostępnym w sklepie DCUBE.
importuj smbus
czas importu
# Uzyskaj magistralę I2C
autobus = smbus. SMBus(1)
# adres TMP007, 0x40(64)
# Wybierz rejestr konfiguracji, 0x02(02)
# 0x1540 (5440) Tryb ciągłej konwersji, tryb komparatora
dane = [0x1540]bus.write_i2c_block_data(0x40, 0x02, dane)
czas.sen(0.5)
# adres TMP007, 0x40(64)
# Odczytaj dane z powrotem z 0x03(03), 2 bajty
# cTemp MSB, cTemp LSB
dane = bus.read_i2c_block_data(0x40, 0x03, 2)
# Konwertuj dane na 14-bitowe
cTemp = ((dane[0] * 256 + (dane[1] i 0xFC)) / 4)
jeśli cTemp > 8191:
cTemp -= 16384
cTemp = cTemp * 0,03125
fTemp = cTemp * 1,8 + 32
# Dane wyjściowe na ekran
print "Temperatura obiektu w stopniach Celsjusza: %.2f C" %cTemp
print "Temperatura obiektu w stopniach Fahrenheita: %.2f F" %fTemp
Krok 4: Aplikacje:
TMP007 znajduje zastosowanie w systemach, gdzie wymagany jest bezdotykowy pomiar temperatury. Są one stosowane w obudowach laptopów i tabletów, bateriach itp. Są również stosowane w radiatorach, a także w drukarkach laserowych. Jego wyższa wydajność w pomiarze temperatury bez kontaktu z rzeczywistym obiektem daje mu dodatkową przewagę w różnych zastosowaniach.