Innehållsförteckning:

Raspberry Pi - TMD26721 Infraröd digital närhetsdetektor Python -handledning: 4 steg
Raspberry Pi - TMD26721 Infraröd digital närhetsdetektor Python -handledning: 4 steg

Video: Raspberry Pi - TMD26721 Infraröd digital närhetsdetektor Python -handledning: 4 steg

Video: Raspberry Pi - TMD26721 Infraröd digital närhetsdetektor Python -handledning: 4 steg
Video: Raspberry Pi TMD2771 Ambient Light Sensing (ALS) Proximity Detection Python Tutorial 2024, November
Anonim
Image
Image

TMD26721 är en infraröd digital närhetsdetektor som tillhandahåller ett komplett närhetsdetekteringssystem och digital gränssnittslogik i en enda 8-polig ytmonteringsmodul. Närhetsdetekteringen inkluderar förbättrad signal-till-brus och noggrannhet. Ett närhetsförskjutningsregister tillåter kompensation för optisk systemöverhörning mellan IR -lysdioden och sensorn. Här är dess demonstration med hallon pi med pythonkod.

Steg 1: Vad du behöver.. !

Vad du behöver..!!
Vad du behöver..!!

1. Hallon Pi

2. TMD26721

3. I²C -kabel

4. I²C -sköld för Raspberry Pi

5. Ethernet -kabel

Steg 2: Anslutningar:

Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar
Anslutningar

Ta en I2C -sköld för hallonpi och tryck den försiktigt över gpio -stiften på hallonpi.

Anslut sedan den ena änden av I2C -kabeln till TMD26721 -sensorn och den andra änden till I2C -skärmen.

Anslut också Ethernet -kabeln till pi eller så kan du använda en WiFi -modul.

Anslutningar visas på bilden ovan.

Steg 3: Kod:

Koda
Koda

Python-koden för TMD26721 kan laddas ner från vårt github-arkiv- ControlEverythingCommunity

Här är länken till samma:

github.com/ControlEverythingCommunity/TMD2…

Databladet för TMD26721 hittar du här:

s3.amazonaws.com/controleverything.media/c…

Vi har använt SMBus -biblioteket för pythonkod, stegen för att installera SMBus på hallon pi beskrivs här:

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

Du kan också kopiera koden härifrån, den ges enligt följande:

# Distribueras med en fri vilja licens.

# Använd det hur du vill, vinst eller gratis, förutsatt att det passar i licensen för dess associerade verk.

# TMD26721

# Denna kod är utformad för att fungera med TMD26721_I2CS I2C Mini -modulen som är tillgänglig från ControlEverything.com.

#

importera smbus

importtid

# Skaffa I2C -buss

buss = smbus. SMBus (1)

# TMD26721 adress, 0x39 (57)

# Välj aktivera registerregister, 0x00 (0), med kommandoregister 0x80 (128)

# 0x0D (14) Ström på, väntan aktiverad, närhet aktiverad

bus.write_byte_data (0x39, 0x00 | 0x80, 0x0D)

# TMD26721 adress, 0x39 (57)

# Välj närhetstidskontrollregister, 0x02 (2), med kommandoregister 0x80 (128)

# 0xFF (255) Tid = 2,73 ms

bus.write_byte_data (0x39, 0x02 | 0x80, 0xFF)

# TMD26721 adress, 0x39 (57)

# Välj väntetidsregister 0x03 (03), med kommandoregister, 0x80 (128)# 0xFF (255) Tid - 2,73 ms

bus.write_byte_data (0x39, 0x03 | 0x80, 0xFF)

# TMD26721 -adress, 0x39 (57# Välj pulsantalsregister, 0x0E (14), med kommandoregister 0x80 (128)

# 0x20 (32) Pulsantal = 32

bus.write_byte_data (0x39, 0x0E | 0x80, 0x20)

# TMD26721 adress, 0x39 (57)

# Välj kontrollregister, 0x0F (15), med kommandoregister 0x80 (128)

# 0x20 (32) Närhet använder CH1 -diod

bus.write_byte_data (0x39, 0x0F | 0x80, 0x20)

tid. sover (0,8)

# TMD26721 adress, 0x39 (57)

# Läs tillbaka data från 0x18 (57) med kommandoregister 0x80 (128), 2 byte

# Närhet lsb, Närhet msb

data = buss.läs_i2c_block_data (0x39, 0x18 | 0x80, 2)

# Konvertera data

närhet = data [1] * 256 + data [0]

# Mata ut data till skärmen

print "Enhetens närhet: %d" %närhet

Steg 4: Ansökningar:

TMD26721 är en infraröd digital närhetssensor som kan integreras i pekskärmskontrollen för mobil handenhet och automatisk högtalartelefonaktivering. Det kan också erbjuda mekanisk omkopplare och pappersinriktning. Dess höga effektivitet och tillförlitlighet gör den lämplig för olika närhetsavkännande applikationer.

Rekommenderad: