INHOUDSOPGAWE:

Raspberry Pi - TMD26721 Infrarooi digitale nabyheidsdetektor Python -tutoriaal: 4 stappe
Raspberry Pi - TMD26721 Infrarooi digitale nabyheidsdetektor Python -tutoriaal: 4 stappe

Video: Raspberry Pi - TMD26721 Infrarooi digitale nabyheidsdetektor Python -tutoriaal: 4 stappe

Video: Raspberry Pi - TMD26721 Infrarooi digitale nabyheidsdetektor Python -tutoriaal: 4 stappe
Video: Raspberry Pi TMD26721 Infrared Digital Proximity Detector Python Tutorial 2024, November
Anonim
Image
Image

TMD26721 is 'n infrarooi digitale nabyheidsdetektor wat 'n volledige nabyheidsopsporingstelsel en logika vir digitale koppelvlak bied in 'n enkele 8-pins oppervlakmonteringsmodule. Die nabyheidsopsporing bevat verbeterde sein-na-geraas en akkuraatheid. 'N Nabyheidsverrekeningsregister laat kompensasie toe vir optiese stelseloorspraak tussen die IR -LED en die sensor. Hier is die demonstrasie daarvan met framboos pi met behulp van python -kode.

Stap 1: wat u nodig het..

Wat jy nodig het..!!
Wat jy nodig het..!!

1. Framboos Pi

2. TMD26721

3. I²C -kabel

4. I²C -skild vir Framboos Pi

5. Ethernet -kabel

Stap 2: Verbindings:

Verbindings
Verbindings
Verbindings
Verbindings
Verbindings
Verbindings
Verbindings
Verbindings

Neem 'n I2C skild vir framboos pi en druk dit liggies oor die gpio penne van framboos pi.

Koppel dan die een kant van die I2C -kabel aan die TMD26721 -sensor en die ander kant aan die I2C -skild.

Koppel ook die Ethernet -kabel aan die pi, of u kan 'n WiFi -module gebruik.

Verbindings word op die foto hierbo getoon.

Stap 3: Kode:

Kode
Kode

Die python-kode vir TMD26721 kan afgelaai word vanaf ons github-bewaarplek- ControlEverythingCommunity

Hier is die skakel vir dieselfde:

github.com/ControlEverythingCommunity/TMD2…

Die datablad van TMD26721 kan hier gevind word:

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

Ons het SMBus -biblioteek gebruik vir python -kode, die stappe om SMBus op framboos pi te installeer word hier beskryf:

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

U kan die kode ook hiervandaan kopieer; dit word soos volg gegee:

# Versprei met 'n vrywillige lisensie.

# Gebruik dit soos u wil, wins of gratis, mits dit in die lisensies van die gepaardgaande werke pas.

# TMD26721

# Hierdie kode is ontwerp om te werk met die TMD26721_I2CS I2C Mini Module beskikbaar by ControlEverything.com.

#

invoer smbus

invoer tyd

# Kry I2C -bus

bus = smbus. SMBus (1)

# TMD26721 adres, 0x39 (57)

# Kies aktiveer registerregister, 0x00 (0), met opdragregister 0x80 (128)

# 0x0D (14) Skakel aan, wag aangeskakel, nabyheid geaktiveer

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

# TMD26721 adres, 0x39 (57)

# Kies register vir nabyheidstydbeheer, 0x02 (2), met opdragregister 0x80 (128)

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

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

# TMD26721 adres, 0x39 (57)

# Kies wagtydregister 0x03 (03), met opdragregister, 0x80 (128)# 0xFF (255) Tyd - 2.73ms

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

# TMD26721 adres, 0x39 (57# Kies polsslagregister, 0x0E (14), met opdragregister 0x80 (128)

# 0x20 (32) Pulstelling = 32

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

# TMD26721 adres, 0x39 (57)

# Kies kontroleregister, 0x0F (15), met opdragregister 0x80 (128)

# 0x20 (32) Nabyheid gebruik CH1 -diode

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

tyd. slaap (0,8)

# TMD26721 adres, 0x39 (57)

# Lees data terug van 0x18 (57) met opdragregister 0x80 (128), 2 grepe

# Proximity lsb, Proximity msb

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

# Skakel die data om

nabyheid = data [1] * 256 + data [0]

# Uitset data na die skerm

print "Nabyheid van die toestel: %d" %nabyheid

Stap 4: Aansoeke:

TMD26721 is 'n infrarooi digitale nabyheidssensor wat opgeneem kan word in die aanraakskermbeheer van die selfoon en die outomatiese luidsprekerfunksie. Dit kan ook die vervanging van meganiese skakelaars sowel as papieruitlijning bied. Die hoë doeltreffendheid en betroubaarheid maak dit geskik vir verskillende toepassings vir nabyheidswaarneming.

Aanbeveel: