İçindekiler:

Raspberry Pi - TMD26721 Kızılötesi Dijital Yakınlık Dedektörü Java Eğitimi: 4 Adım
Raspberry Pi - TMD26721 Kızılötesi Dijital Yakınlık Dedektörü Java Eğitimi: 4 Adım

Video: Raspberry Pi - TMD26721 Kızılötesi Dijital Yakınlık Dedektörü Java Eğitimi: 4 Adım

Video: Raspberry Pi - TMD26721 Kızılötesi Dijital Yakınlık Dedektörü Java Eğitimi: 4 Adım
Video: Raspberry Pi TMD26721 Infrared Digital Proximity Detector Java Tutorial 2024, Kasım
Anonim

TMD26721, tek bir 8 pinli yüzeye montaj modülünde eksiksiz bir yakınlık algılama sistemi ve dijital arayüz mantığı sağlayan bir kızılötesi dijital yakınlık dedektörüdür. Yakınlık algılama, gelişmiş sinyal-gürültü ve doğruluğu içerir. Bir yakınlık ofset kaydı, IR LED ve sensör arasındaki optik sistem karışmasının telafisine izin verir. İşte java kodunu kullanarak ahududu pi ile gösterimi.

Adım 1: İhtiyacınız Olan Şey..!

Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!

1. Ahududu Pi

2. TMD26721

3. I²C Kablosu

4. Raspberry Pi için I²C Kalkanı

5. Ethernet Kablosu

Adım 2: Bağlantılar:

Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar

Ahududu pi için bir I2C kalkanı alın ve ahududu pi'nin gpio pimlerinin üzerine hafifçe itin.

Ardından I2C kablosunun bir ucunu TMD26721 sensörüne ve diğer ucunu I2C blendajına bağlayın.

Ayrıca Ethernet kablosunu pi'ye bağlayın veya bir WiFi modülü kullanabilirsiniz.

Bağlantılar yukarıdaki resimde gösterilmiştir.

Adım 3: Kod:

Kod
Kod

TMD26721 için java kodu, github depomuz-Dcube Store Community'den indirilebilir.

Bağlantı burada

Java kodu için pi4j kütüphanesini kullandık, ahududu pi üzerine pi4j kurulum adımları burada açıklanmıştır:

pi4j.com/install.html

Kodu buradan da kopyalayabilirsiniz, aşağıdaki şekilde verilmiştir:

// Özgür irade lisansıyla dağıtılır.

// İlişkili çalışmalarının lisanslarına uyması koşuluyla, istediğiniz şekilde, kârlı veya ücretsiz olarak kullanın.

//TMD26721

// Bu kod, şuradan temin edilebilen TMD26721_I2CS I2C Mini Modülü ile çalışmak üzere tasarlanmıştır.

com.pi4j.io.i2c. I2CBus'u içe aktarın;

com.pi4j.io.i2c. I2CDevice'ı içe aktarın;

com.pi4j.io.i2c. I2CFFactory'yi içe aktarın;

java.io. IOException'ı içe aktarın;

genel sınıf TMD26721

{

public static void main(String args) İstisna atar

{

// I2C veri yolu oluştur

I2CBus veri yolu = I2CFactory.getInstance(I2CBus. BUS_1);

// I2C cihazını al, TMD26721 I2C adresi 0x39(57)

I2CDevice cihazı = bus.getDevice(0x39);

// Yakınlık zaman kaydını VEYA komut kaydı ile seçin

// Ptime = 2,73 ms

device.write(0x02 | 0x80, (bayt)0xFF);

// Bekleme süresi kaydını VEYA komut kaydı ile seçin

// Wtime = 2,73 ms

device.write(0x03 | 0x80, (bayt)0xFF);

// Nabız sayım kaydını VEYA komut kaydı ile seçin

// Darbe sayısı = 32

device.write(0x0E | 0x80, (bayt)0x20);

// Kontrol kaydı VEYA komut kaydı ile seçin

// 100 mA LED gücü, yakınlık CH1 diyot kullanır, 1x PGAIN, 1x TEKRAR

device.write(0x0F | 0x80, (bayt)0x20);

// Kayıt kaydını VEYA komut kaydı ile etkinleştir'i seçin

// Gücü AÇIK, yakınlık ve beklemeyi etkinleştirin

device.write(0x00 | 0x80, (bayt)0x0D);

Thread.sleep(800);

// 0x18(24) adresinden 2 bayt veri oku

// yakınlık lsb, yakınlık msb

bayt veri = yeni bayt[2];

device.read(0x18 | 0x80, veri, 0, 2);

// Verileri dönüştür

int yakınlık = (((veri[1] & 0xFF) * 256)+ (veri[0] & 0xFF));

// Ekrana veri çıktısı

System.out.printf("Aygıtın Yakınlığı: %d %n", yakınlık);

}

}

Adım 4: Uygulamalar:

TMD26721, Mobil Ahize Dokunmatik Ekran Kontrolü ve Otomatik Hoparlör Etkinleştirme ile birleştirilebilen bir kızılötesi dijital yakınlık sensörüdür. Ayrıca Mekanik Anahtar Değiştirme ve Kağıt Hizalama sağlayabilir. Yüksek verimliliği ve güvenilirliği, çeşitli yakınlık algılama uygulamaları için uygun olmasını sağlar.

Önerilen: