Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
TMP007 yra infraraudonųjų spindulių termopilių jutiklis, kuris matuoja objekto temperatūrą, nesiliesdamas su juo. Objekto skleidžiamą infraraudonųjų spindulių energiją jutiklio lauke sugeria į jutiklį integruotas termopolis. Termopilės įtampa skaitmenizuojama ir tiekiama kaip įvestis į integruotą matematinį variklį. Šis integruotas matematinis variklis apskaičiuoja objekto temperatūrą. Čia yra jo darbo demonstravimas su „Raspberry Pi“naudojant python kodą.
1 žingsnis: ko jums reikia..
1. Avietė Pi
2. TMP007
3. I²C kabelis
4. „I²C Shield“, skirtas „Raspberry Pi“
5. Ethernet kabelis
2 veiksmas: prijungimas:
Paimkite aviečių pi I2C skydą ir švelniai stumkite jį virš aviečių pi gpio kaiščių.
Tada vieną I2C kabelio galą prijunkite prie TMP007 jutiklio, o kitą - prie I2C skydo.
Taip pat prijunkite Ethernet kabelį prie pi arba galite naudoti „WiFi“modulį.
Sujungimai parodyti aukščiau esančiame paveikslėlyje.
3 žingsnis: kodas:
TMP007 python kodą galima atsisiųsti iš mūsų „GitHub“saugyklos- „DCUBE Store Community“.
Čia yra nuoroda.
„Python“kodui naudojome „SMBus“biblioteką, čia aprašyti SMBus diegimo „Raspberry pi“veiksmai:
pypi.python.org/pypi/smbus-cffi/0.5.1
Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:
# Platinama su laisvos valios licencija.
# Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka su juo susijusių darbų licencijas.
# TMP007
# Šis kodas skirtas dirbti su „TMP007_I2CS I2C Mini“moduliu, kurį galima įsigyti „DCUBE“parduotuvėje.
importuoti smbus
importo laikas
# Gaukite I2C autobusą
autobusas = smbus. SMBus (1)
# TMP007 adresas, 0x40 (64)
# Pasirinkite konfigūracijos registrą, 0x02 (02)
# 0x1540 (5440) Nuolatinės konversijos režimas, lyginamojo režimas
duomenys = [0x1540] autobusas.write_i2c_block_data (0x40, 0x02, duomenys)
laikas. miegas (0,5)
# TMP007 adresas, 0x40 (64)
# Perskaitykite duomenis iš 0x03 (03), 2 baitų
# cTemp MSB, cTemp LSB
duomenys = autobusas.read_i2c_block_data (0x40, 0x03, 2)
# Konvertuokite duomenis į 14 bitų
cTemp = ((duomenys [0] * 256 + (duomenys [1] ir 0xFC)) / 4)
jei cTemp> 8191:
cTemp -= 16384
cTemp = cTemp * 0,03125
fTemp = cTemp * 1,8 + 32
# Išveskite duomenis į ekraną
spausdinti „Objekto temperatūra Celsijaus laipsniais: %.2f C“%cTemp
spausdinti „Objekto temperatūra Farenheitu: %.2f F“%fTemp
4 žingsnis: programos:
TMP007 yra pritaikytas sistemose, kuriose reikalingas bekontaktis temperatūros matavimas. Jie naudojami nešiojamųjų kompiuterių ir planšetinių kompiuterių dėkluose, baterijose ir pan. Jie taip pat yra įmontuoti į radiatorius ir lazerinius spausdintuvus. Didesnis efektyvumas matuojant temperatūrą nesiliečiant su tikruoju objektu suteikia papildomo pranašumo įvairiems pritaikymams.