Raspberry Pi - TMD26721 Infrapuna -digitaalinen läheisyysilmaisin Python -opetusohjelma: 4 vaihetta
Raspberry Pi - TMD26721 Infrapuna -digitaalinen läheisyysilmaisin Python -opetusohjelma: 4 vaihetta
Anonim
Image
Image

TMD26721 on digitaalinen infrapuna-läheisyysilmaisin, joka tarjoaa täydellisen läheisyyden havaitsemisjärjestelmän ja digitaalisen rajapintalogiikan yhdessä 8-nastaisessa pinta-asennusmoduulissa. Läheisyyspoikkeamarekisteri mahdollistaa kompensoinnin optisen järjestelmän ylikuulumisesta IR -LEDin ja anturin välillä. Tässä on sen esittely vadelma pi: llä käyttäen python -koodia.

Vaihe 1: Mitä tarvitset..

Mitä tarvitset..!!
Mitä tarvitset..!!

1. Vadelma Pi

2. TMD26721

3. I²C -kaapeli

4. I²C -kilpi Raspberry Pi: lle

5. Ethernet -kaapeli

Vaihe 2: Liitännät:

Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät

Ota I2C -kilpi vadelma pi: lle ja työnnä sitä varovasti vadelma pi: n gpio -nastojen päälle.

Liitä sitten I2C -kaapelin toinen pää TMD26721 -anturiin ja toinen pää I2C -suojaan.

Liitä myös Ethernet -kaapeli pi: hen tai voit käyttää WiFi -moduulia.

Liitännät näkyvät yllä olevassa kuvassa.

Vaihe 3: Koodi:

Koodi
Koodi

TMD26721: n python-koodi voidaan ladata github-arkistostamme- ControlEverythingCommunity

Tässä linkki samaan:

github.com/ControlEverythingCommunity/TMD2…

TMD26721: n tietolomake löytyy täältä:

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

Olemme käyttäneet SMBus -kirjastoa python -koodille, SMBus -asennuksen vaiheet vadelma pi: lle on kuvattu tässä:

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

Voit myös kopioida koodin täältä, se annetaan seuraavasti:

# Jaetaan vapaaehtoisella lisenssillä.

# Käytä sitä haluamallasi tavalla, voittoa tai ilmaiseksi, jos se sopii siihen liittyvien teosten lisensseihin.

# TMD26721

# Tämä koodi on suunniteltu toimimaan TMD26721_I2CS I2C Mini -moduulin kanssa, joka on saatavana osoitteesta ControlEverything.com.

#

tuoda smbus

tuonnin aika

# Hanki I2C -bussi

väylä = smbus. SMBus (1)

# TMD26721 -osoite, 0x39 (57)

# Valitse Ota käyttöön rekisterirekisteri, 0x00 (0), komentorekisterillä 0x80 (128)

# 0x0D (14) Virta päällä, odotus käytössä, läheisyys käytössä

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

# TMD26721 -osoite, 0x39 (57)

# Valitse läheisyysajan ohjausrekisteri, 0x02 (2), komentorekisterillä 0x80 (128)

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

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

# TMD26721 -osoite, 0x39 (57)

# Valitse odotusajan rekisteri 0x03 (03), komentorekisterillä, 0x80 (128)# 0xFF (255) Aika - 2,73 ms

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

# TMD26721 -osoite, 0x39 (57# Valitse pulssilukurekisteri, 0x0E (14), komentorekisterillä 0x80 (128)

# 0x20 (32) Pulssimäärä = 32

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

# TMD26721 -osoite, 0x39 (57)

# Valitse ohjausrekisteri, 0x0F (15), komentorekisterillä 0x80 (128)

# 0x20 (32) Läheisyys käyttää CH1 -diodia

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

aika. unta (0,8)

# TMD26721 -osoite, 0x39 (57)

# Lue tiedot takaisin 0x18 (57) -komennosta komentorekisterillä 0x80 (128), 2 tavua

# Proximity lsb, Proximity msb

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

# Muunna tiedot

läheisyys = data [1] * 256 + data [0]

# Tulosta tiedot näytölle

tulosta "Laitteen läheisyys: %d" %läheisyys

Vaihe 4: Sovellukset:

TMD26721 on digitaalinen infrapuna -läheisyysanturi, joka voidaan sisällyttää matkapuhelimen kosketusnäytön ohjaukseen ja automaattiseen kaiutinpuhelimen käyttöön. Se voi myös tarjota mekaanisen kytkimen vaihdon sekä paperin kohdistuksen. Sen korkea hyötysuhde ja luotettavuus tekevät siitä sopivan erilaisiin läheisyysanturisovelluksiin.

Suositeltava: