Daftar Isi:
Video: Raspberry Pi - TMD26721 Detektor Kedekatan Digital Inframerah Tutorial Java: 4 Langkah
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
TMD26721 adalah detektor kedekatan digital inframerah yang menyediakan sistem deteksi kedekatan lengkap dan logika antarmuka digital dalam modul pemasangan permukaan 8-pin tunggal. Deteksi kedekatan mencakup peningkatan signal-to-noise dan akurasi. Sebuah register offset kedekatan memungkinkan kompensasi untuk crosstalk sistem optik antara LED IR dan sensor. Berikut adalah demonstrasi dengan raspberry pi menggunakan kode java.
Langkah 1: Yang Anda Butuhkan.
1. Raspberry Pi
2. TMD26721
3. Kabel I²C
4. Perisai I²C untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Koneksi:
Ambil pelindung I2C untuk raspberry pi dan dorong perlahan ke atas pin gpio dari raspberry pi.
Kemudian sambungkan salah satu ujung kabel I2C ke sensor TMD26721 dan ujung lainnya ke pelindung I2C.
Hubungkan juga kabel Ethernet ke pi atau Anda dapat menggunakan modul WiFi.
Koneksi ditunjukkan pada gambar di atas.
Langkah 3: Kode:
Kode java untuk TMD26721 dapat diunduh dari repositori github kami - Komunitas Toko Dcube.
Ini tautannya
Kami telah menggunakan pustaka pi4j untuk kode java, langkah-langkah untuk menginstal pi4j pada raspberry pi dijelaskan di sini:
pi4j.com/install.html
Anda juga dapat menyalin kode dari sini, diberikan sebagai berikut:
// Didistribusikan dengan lisensi kehendak bebas.
// Gunakan sesuka Anda, untung atau gratis, asalkan sesuai dengan lisensi karya terkait.
// TMD26721
// Kode ini dirancang untuk bekerja dengan Modul Mini TMD26721_I2CS I2C yang tersedia dari
impor com.pi4j.io.i2c. I2CBus;
impor com.pi4j.io.i2c. I2CDevice;
impor com.pi4j.io.i2c. I2CFfactory;
impor java.io. IOException;
kelas publik TMD26721
{
public static void main(String args) melempar Pengecualian
{
// Buat bus I2C
I2CBus bus = I2CFfactory.getInstance(I2CBus. BUS_1);
// Dapatkan perangkat I2C, alamat I2C TMD26721 adalah 0x39(57)
Perangkat I2CDevice = bus.getDevice(0x39);
// Pilih register waktu kedekatan ATAU dengan register perintah
// Pwaktu = 2,73 mdtk
device.write(0x02 | 0x80, (byte)0xFF);
// Pilih daftar waktu tunggu ATAU dengan register perintah
// Wtime = 2,73 mdtk
device.write(0x03 | 0x80, (byte)0xFF);
// Pilih register penghitung pulsa ATAU dengan register perintah
// Hitungan pulsa = 32
device.write(0x0E | 0x80, (byte)0x20);
// Pilih register kontrol ATAU dengan register perintah
// Kekuatan LED 100 mA, proximtiy menggunakan dioda CH1, 1x PGAIN, 1x LAGI
device.write(0x0F | 0x80, (byte)0x20);
// Pilih aktifkan register ATAU dengan register perintah
// Atur Power ON, kedekatan dan tunggu diaktifkan
device.write(0x00 | 0x80, (byte)0x0D);
Thread.sleep(800);
// Baca 2 byte data dari alamat 0x18(24)
// kedekatan lsb, kedekatan msb
byte data = byte baru[2];
device.read(0x18 | 0x80, data, 0, 2);
// Konversi data
int proximity = (((data[1] & 0xFF) * 256)+ (data[0] & 0xFF));
// Keluarkan data ke layar
System.out.printf("Kedekatan Perangkat: %d %n", kedekatan);
}
}
Langkah 4: Aplikasi:
TMD26721 adalah sensor jarak digital inframerah yang dapat digabungkan dalam Kontrol Layar Sentuh Handset Seluler dan Pengaktifan Speaker Ponsel Otomatis. Itu juga dapat memberikan Penggantian Sakelar Mekanik serta Penyelarasan Kertas. Efisiensi dan keandalannya yang tinggi membuatnya cocok untuk berbagai aplikasi penginderaan jarak dekat.