Sommario:

Raspberry Pi - Rilevatore di prossimità digitale a infrarossi TMD26721 Tutorial Java: 4 passaggi
Raspberry Pi - Rilevatore di prossimità digitale a infrarossi TMD26721 Tutorial Java: 4 passaggi

Video: Raspberry Pi - Rilevatore di prossimità digitale a infrarossi TMD26721 Tutorial Java: 4 passaggi

Video: Raspberry Pi - Rilevatore di prossimità digitale a infrarossi TMD26721 Tutorial Java: 4 passaggi
Video: Particle Photon VCNL4010 Proximity and Ambient Light Sensor Tutorial 2024, Giugno
Anonim

TMD26721 è un rilevatore di prossimità digitale a infrarossi che fornisce un sistema di rilevamento di prossimità completo e logica di interfaccia digitale in un singolo modulo a montaggio superficiale a 8 pin. Il rilevamento di prossimità include un migliore rapporto segnale-rumore e precisione. Un registro di offset di prossimità consente la compensazione della diafonia del sistema ottico tra il LED IR e il sensore. Ecco la sua dimostrazione con raspberry pi usando il codice java.

Passaggio 1: ciò di cui hai bisogno.

Quello di cui hai bisogno..!!
Quello di cui hai bisogno..!!
Quello di cui hai bisogno..!!
Quello di cui hai bisogno..!!

1. Lampone Pi

2. TMD26721

3. Cavo I²C

4. Scudo I²C per Raspberry Pi

5. Cavo Ethernet

Passaggio 2: connessioni:

Connessioni
Connessioni
Connessioni
Connessioni
Connessioni
Connessioni
Connessioni
Connessioni

Prendi uno scudo I2C per lampone pi e spingilo delicatamente sui pin gpio di lampone pi.

Quindi collegare un'estremità del cavo I2C al sensore TMD26721 e l'altra estremità allo schermo I2C.

Collega anche il cavo Ethernet al pi oppure puoi utilizzare un modulo WiFi.

I collegamenti sono mostrati nell'immagine sopra.

Passaggio 3: codice:

Codice
Codice

Il codice java per TMD26721 può essere scaricato dal nostro repository github- Dcube Store Community.

Ecco il link

Abbiamo usato la libreria pi4j per il codice java, i passaggi per installare pi4j sul raspberry pi sono descritti qui:

pi4j.com/install.html

Puoi anche copiare il codice da qui, è fornito come segue:

// Distribuito con una licenza libera.

// Usalo come vuoi, a scopo di lucro o gratuito, a condizione che rientri nelle licenze delle opere associate.

// TMD26721

// Questo codice è progettato per funzionare con il Mini Modulo I2C TMD26721_I2CS disponibile da

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

classe pubblica TMD26721

{

public static void main(String args) genera un'eccezione

{

// Crea bus I2C

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

// Ottieni il dispositivo I2C, l'indirizzo I2C TMD26721 è 0x39(57)

I2CDevice device = bus.getDevice(0x39);

// Seleziona il registro del tempo di prossimità OPPURE con il registro di comando

// Tempo di attesa = 2,73 ms

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

// Seleziona il registro del tempo di attesa OPPURE con il registro di comando

// Wtime = 2,73 ms

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

// Seleziona il registro di conteggio degli impulsi OPPURE con il registro di comando

// Conteggio impulsi = 32

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

// Seleziona il registro di controllo OPPURE con il registro di comando

// Potenza LED 100 mA, la prossimità utilizza il diodo CH1, 1x PGAIN, 1x AGAIN

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

// Seleziona abilita il registro OPPURE con il comando register

// Imposta Power ON, prossimità e attesa abilitati

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

Thread.sleep(800);

// Legge 2 byte di dati dall'indirizzo 0x18(24)

// prossimità lsb, prossimità msb

byte dati = nuovo byte[2];

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

// Converti i dati

int prossimità = (((data[1] & 0xFF) * 256)+ (data[0] & 0xFF));

// Invia i dati allo schermo

System.out.printf("Prossimità del dispositivo: %d %n", prossimità);

}

}

Passaggio 4: applicazioni:

TMD26721 è un sensore di prossimità digitale a infrarossi che può essere incorporato nel controllo touchscreen del telefono cellulare e nell'attivazione automatica dell'altoparlante. Può anche fornire la sostituzione dell'interruttore meccanico e l'allineamento della carta. La sua elevata efficienza e affidabilità lo rende adatto a varie applicazioni di rilevamento di prossimità.

Consigliato: