Sadržaj:

Raspberry Pi - TMD26721 Infracrveni digitalni detektor blizine Java Vodič: 4 koraka
Raspberry Pi - TMD26721 Infracrveni digitalni detektor blizine Java Vodič: 4 koraka

Video: Raspberry Pi - TMD26721 Infracrveni digitalni detektor blizine Java Vodič: 4 koraka

Video: Raspberry Pi - TMD26721 Infracrveni digitalni detektor blizine Java Vodič: 4 koraka
Video: Leap Motion SDK 2024, Novembar
Anonim

TMD26721 je infracrveni digitalni detektor blizine koji pruža potpuni sistem otkrivanja blizine i logiku digitalnog sučelja u jednom 8-pinskom modulu za površinsko montiranje. Detekcija blizine uključuje poboljšani signal-šum i preciznost. Registar pomaka blizine omogućava kompenzaciju za preslušavanje optičkog sistema između IR LED i senzora. Evo njegove demonstracije s malinom pi pomoću java koda.

Korak 1: Šta vam treba..

Sta ti treba..!!
Sta ti treba..!!
Sta ti treba..!!
Sta ti treba..!!

1. Malina Pi

2. TMD26721

3. I²C kabel

4. I²C štit za Raspberry Pi

5. Ethernet kabel

Korak 2: Veze:

Veze
Veze
Veze
Veze
Veze
Veze
Veze
Veze

Uzmite I2C štit za malinu pi i nježno je gurnite preko gpio igle maline pi.

Zatim spojite jedan kraj I2C kabela na senzor TMD26721, a drugi kraj na I2C štit.

Također priključite Ethernet kabel na pi ili možete koristiti WiFi modul.

Veze su prikazane na gornjoj slici.

Korak 3: Kod:

Šifra
Šifra

Java kôd za TMD26721 može se preuzeti sa našeg github spremišta- Dcube Store Community.

Evo linka

Za java kod koristili smo biblioteku pi4j, koraci za instaliranje pi4j na malinu pi opisani su ovdje:

pi4j.com/install.html

Kôd možete i kopirati odavde, dat je na sljedeći način:

// Distribuirano s licencom za slobodnu volju.

// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.

// TMD26721

// Ovaj kôd je dizajniran za rad s TMD26721_I2CS I2C mini modulom dostupnim na

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

javna klasa TMD26721

{

public static void main (String args ) baca Exception

{

// Kreiranje I2C sabirnice

I2CBus sabirnica = I2CFactory.getInstance (I2CBus. BUS_1);

// Nabavite I2C uređaj, TMD26721 I2C adresa je 0x39 (57)

I2CDevice uređaj = bus.getDevice (0x39);

// Odabir registra blizine ILI pomoću naredbenog registra

// Ptime = 2,73 ms

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

// Odaberite registar vremena čekanja ILI pomoću naredbenog registra

// Wtime = 2,73 ms

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

// Odaberite registar broja impulsa ILI pomoću naredbenog registra

// Broj impulsa = 32

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

// Odaberite kontrolni registar ILI pomoću komandnog registra

// 100 mA jakost LED diode, u blizini se koristi CH1 dioda, 1x PGAIN, 1x PONOVO

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

// Odaberite enable register OR sa naredbenim registrom

// Uključivanje napajanja, omogućeno približavanje i čekanje

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

Thread.sleep (800);

// Čitanje 2 bajta podataka s adrese 0x18 (24)

// blizina lsb, blizina msb

bajt podatak = novi bajt [2];

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

// Pretvorimo podatke

int proximity = (((podaci [1] & 0xFF) * 256)+ (podaci [0] & 0xFF));

// Iznos podataka na ekran

System.out.printf ("Blizina uređaja: %d %n", blizina);

}

}

Korak 4: Aplikacije:

TMD26721 je infracrveni digitalni senzor blizine koji se može ugraditi u kontrolu ekrana osjetljivog na dodir mobilne slušalice i omogućavanje automatskog spikerfona. Takođe može da obezbedi zamenu mehaničkih prekidača, kao i poravnanje papira. Njegova visoka efikasnost i pouzdanost čine ga pogodnim za različite aplikacije mjerenja blizine.

Preporučuje se: