Raspberry Pi - Tutorial Python del detector de proximitat digital d'infrarojos TMD26721: 4 passos
Raspberry Pi - Tutorial Python del detector de proximitat digital d'infrarojos TMD26721: 4 passos
Anonim
Image
Image

TMD26721 és un detector de proximitat digital d’infraroig que proporciona un sistema complet de detecció de proximitat i una lògica d’interfície digital en un mòdul de muntatge superficial de 8 pins. La detecció de proximitat inclou una precisió i un senyal-soroll millorats. Un registre de desplaçament de proximitat permet compensar la interconnexió del sistema òptic entre el LED IR i el sensor. Aquí teniu la demostració amb raspberry pi mitjançant codi Python.

Pas 1: el que necessiteu..

Què necessites..!!
Què necessites..!!

1. Raspberry Pi

2. TMD26721

3. Cable I²C

4. Escut I²C per a Raspberry Pi

5. Cable Ethernet

Pas 2: connexions:

Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions
Connexions

Agafeu un escut I2C per a raspberry pi i passeu-lo suaument per sobre dels pins gpio de raspberry pi.

A continuació, connecteu un extrem del cable I2C al sensor TMD26721 i l’altre extrem a la pantalla I2C.

Connecteu també el cable Ethernet al pi o podeu utilitzar un mòdul WiFi.

Les connexions es mostren a la imatge superior.

Pas 3: Codi:

Codi
Codi

El codi python de TMD26721 es pot descarregar des del nostre dipòsit github- ControlEverythingCommunity

Aquí teniu l’enllaç per al mateix:

github.com/ControlEverythingCommunity/TMD2…

El full de dades de TMD26721 es pot trobar aquí:

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

Hem utilitzat la biblioteca SMBus per al codi python; aquí es descriuen els passos per instal·lar SMBus al raspberry pi:

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

També podeu copiar el codi des d’aquí, es dóna de la següent manera:

# Distribuït amb una llicència de lliure voluntat.

# Utilitzeu-lo de la manera que vulgueu, de beneficis o de franc, sempre que encaixi en les llicències de les obres associades.

# TMD26721

# Aquest codi està dissenyat per funcionar amb el mini mòdul TMD26721_I2CS I2C disponible a ControlEverything.com.

#

importar smbus

temps d'importació

# Aconsegueix un bus I2C

bus = smbus. SMBus (1)

# TMD26721 adreça, 0x39 (57)

# Seleccioneu habilitar registre de registre, 0x00 (0), amb registre d'ordres 0x80 (128)

# 0x0D (14) Encès, Espera activada, Proximitat activada

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

# TMD26721 adreça, 0x39 (57)

# Seleccioneu registre de control de temps de proximitat, 0x02 (2), amb registre de comandes 0x80 (128)

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

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

# TMD26721 adreça, 0x39 (57)

# Seleccioneu registre de temps d'espera 0x03 (03), amb registre d'ordres, 0x80 (128) # 0xFF (255) Temps - 2,73 ms

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

# Adreça TMD26721, 0x39 (57 # Seleccionar registre de recompte d'impulsos, 0x0E (14), amb registre d'ordres 0x80 (128)

# 0x20 (32) Recompte de pols = 32

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

# TMD26721 adreça, 0x39 (57)

# Seleccioneu el registre de control, 0x0F (15), amb el registre d'ordres 0x80 (128)

# 0x20 (32) La proximitat utilitza un díode CH1

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

time.sleep (0,8)

# TMD26721 adreça, 0x39 (57)

# Llegiu les dades de 0x18 (57) amb el registre d'ordres 0x80 (128), 2 bytes

# Proximity lsb, Proximity msb

data = bus.read_i2c_block_data (0x39, 0x18 | 0x80, 2)

# Converteix les dades

proximitat = dades [1] * 256 + dades [0]

# Sortida de dades a la pantalla

imprimir "Proximitat del dispositiu:% d"% de proximitat

Pas 4: aplicacions:

TMD26721 és un sensor de proximitat digital d’infrarojos que es pot incorporar al control de pantalla tàctil de l’auricular mòbil i a l’activació automàtica dels altaveus. També pot proporcionar la substitució dels interruptors mecànics i l'alineació del paper. La seva alta eficiència i fiabilitat el fan adequat per a diverses aplicacions de detecció de proximitat.

Recomanat: