Mündəricat:

Raspberry Pi - TMD26721 İnfraqırmızı Rəqəmsal Yaxınlıq Detektoru Python Dərsliyi: 4 addım
Raspberry Pi - TMD26721 İnfraqırmızı Rəqəmsal Yaxınlıq Detektoru Python Dərsliyi: 4 addım

Video: Raspberry Pi - TMD26721 İnfraqırmızı Rəqəmsal Yaxınlıq Detektoru Python Dərsliyi: 4 addım

Video: Raspberry Pi - TMD26721 İnfraqırmızı Rəqəmsal Yaxınlıq Detektoru Python Dərsliyi: 4 addım
Video: Raspberry Pi TMD26721 Infrared Digital Proximity Detector Java Tutorial 2024, Noyabr
Anonim
Image
Image

TMD26721, tək 8 pinli bir səthə montaj modulunda tam bir yaxınlıq aşkarlama sistemi və rəqəmsal interfeys məntiqi təmin edən infraqırmızı rəqəmsal yaxınlıq detektorudur. Yaxınlıqdakı ofset reyestri, İQ LED və sensor arasında optik sistem kəsişməsini kompensasiya etməyə imkan verir. Python kodu istifadə edərək moruq pi ilə nümayişidir.

Addım 1: Nə Lazımdır..

Nə Lazımdır.. !!
Nə Lazımdır.. !!

1. Moruq Pi

2. TMD26721

3. I²C Kabel

4. Raspberry Pi üçün I²C Qalxanı

5. Ethernet Kabeli

Addım 2: Bağlantılar:

Əlaqələr
Əlaqələr
Əlaqələr
Əlaqələr
Əlaqələr
Əlaqələr
Əlaqələr
Əlaqələr

Moruq pi üçün bir I2C qalxanı götürün və moruq pi gpio sancaqlarının üzərinə yumşaq bir şəkildə itələyin.

Sonra I2C kabelinin bir ucunu TMD26721 sensoruna, digər ucunu isə I2C ekranına bağlayın.

Ayrıca Ethernet kabelini pi -yə qoşun və ya WiFi modulundan istifadə edə bilərsiniz.

Bağlantılar yuxarıdakı şəkildə göstərilmişdir.

Addım 3: Kod:

Kod
Kod

TMD26721 üçün python kodu github depomuzdan yüklənə bilər- ControlEverythingCommunity

İşdə bunun üçün bağlantı:

github.com/ControlEverythingCommunity/TMD2…

TMD26721 məlumat cədvəlini burada tapa bilərsiniz:

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

Python kodu üçün SMBus kitabxanasından istifadə etmişik, moruq pi üzərində SMBus quraşdırma addımları burada təsvir edilmişdir:

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

Kodu buradan da kopyalaya bilərsiniz, belə verilir:

# Sərbəst iradə lisenziyası ilə paylandı.

# Əlaqədar əsərlərinin lisenziyalarına uyğun olması şərtilə, mənfəət və ya pulsuz olaraq istədiyiniz şəkildə istifadə edin.

# TMD26721

# Bu kod ControlEverything.com -da mövcud olan TMD26721_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır.

#

smbus idxal edin

idxal vaxtı

# I2C avtobusu alın

avtobus = smbus. SMBus (1)

# TMD26721 ünvanı, 0x39 (57)

# 0x80 (128) əmr reyestri ilə 0x00 (0) qeydiyyat qeydini aktiv et seçin.

# 0x0D (14) Açıq, Gözləmə aktivdir, Yaxınlıq aktivdir

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

# TMD26721 ünvanı, 0x39 (57)

# 0x02 (2), 0x80 (128) əmr reyestri ilə yaxınlıq vaxtına nəzarət qeydini seçin

# 0xFF (255) Zaman = 2.73 ms

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

# TMD26721 ünvanı, 0x39 (57)

# Gözləmə vaxtı qeydini seçin 0x03 (03), əmr qeydiyyatı ilə, 0x80 (128)# 0xFF (255) Zaman - 2.73 ms

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

# TMD26721 ünvanı, 0x39 (57# Pulse sayma qeydini seçin, 0x0E (14), 0x80 (128) əmr reyestri ilə

# 0x20 (32) Pulse sayı = 32

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

# TMD26721 ünvanı, 0x39 (57)

# 0x0F (15), 0x80 (128) əmr reyestri ilə idarəetmə qeydini seçin

# 0x20 (32) Yaxınlıq CH1 diodundan istifadə edir

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

vaxt.yuxu (0.8)

# TMD26721 ünvanı, 0x39 (57)

# 0x18 (57) əmr registri 0x80 (128), 2 bayt olan məlumatları geri oxuyun

# Yaxınlıq lsb, Yaxınlıq msb

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

# Məlumatları çevirin

yaxınlıq = məlumat [1] * 256 + məlumat [0]

# Ekrana məlumat çıxarın

çap "Cihazın yaxınlığı: %d" %yaxınlıq

Addım 4: Tətbiqlər:

TMD26721, Mobil Telefonun Toxunma Ekranına Nəzarət və Avtomatik Dinamik Enable -ə daxil edilə bilən infraqırmızı rəqəmsal yaxınlıq sensoru. Həm də Mexanik Anahtarın dəyişdirilməsini və Kağız Hizalanmasını təmin edə bilər. Yüksək səmərəliliyi və etibarlılığı onu müxtəlif yaxınlıq algılama tətbiqləri üçün uyğun hala gətirir.

Tövsiyə: