Daftar Isi:

Pengukuran Intensitas Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 5 Langkah
Pengukuran Intensitas Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 5 Langkah

Video: Pengukuran Intensitas Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 5 Langkah

Video: Pengukuran Intensitas Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 5 Langkah
Video: BH1750 ambient light sensor on FreeBSD/RaspberryPi 2024, November
Anonim
Image
Image

Kemarin kami mengerjakan layar LCD, dan saat mengerjakannya, kami menyadari pentingnya perhitungan intensitas cahaya. Intensitas cahaya tidak hanya penting dalam domain fisik dunia ini tetapi juga berperan penting dalam domain biologis. Estimasi akurat dari intensitas cahaya memainkan peran penting dalam ekosistem kita, dalam pertumbuhan tanaman, dll. Jadi, untuk memenuhi tujuan ini, kami mempelajari sensor BH1715 ini, yang merupakan sensor cahaya ambient tipe output serial 16-bit.

Dalam tutorial ini, kita akan mendemonstrasikan cara kerja BH1715 dengan Raspberry pi, menggunakan Java sebagai bahasa pemrograman.

Perangkat keras yang Anda perlukan untuk tujuan ini adalah sebagai berikut:

1. BH1715 - Sensor Cahaya Sekitar

2. Raspberry Pi

3. Kabel I2C

4. Perisai I2C Untuk Raspberry Pi

5. Kabel Ethernet

Langkah 1: Ikhtisar BH1715:

Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!

Pertama-tama, kami ingin membiasakan Anda dengan fitur dasar modul sensor yaitu BH1715 dan protokol komunikasi yang digunakannya.

BH1715 adalah Sensor Cahaya Sekitar digital dengan antarmuka bus I²C. BH1715 biasanya digunakan untuk mendapatkan data cahaya sekitar untuk menyesuaikan daya lampu latar LCD dan Keypad untuk perangkat seluler. Perangkat ini menawarkan resolusi 16-bit dan rentang pengukuran yang dapat disesuaikan, memungkinkan deteksi dari.23 hingga 100.000 lux.

Protokol komunikasi tempat sensor bekerja adalah I2C. I2C adalah singkatan dari inter-integrated circuit. Ini adalah protokol komunikasi di mana komunikasi terjadi melalui jalur SDA (data serial) dan SCL (jam serial). Ini memungkinkan menghubungkan beberapa perangkat secara bersamaan. Ini adalah salah satu protokol komunikasi yang paling sederhana dan paling efisien.

Langkah 2: Yang Anda Butuhkan.

Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!

Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:

1. BH1715 - Sensor Cahaya Sekitar

2. Raspberry Pi

3. Kabel I2C

4. Perisai I2C Untuk Raspberry Pi

5. Kabel Ethernet

Langkah 3: Sambungan Perangkat Keras:

Sambungan Perangkat Keras
Sambungan Perangkat Keras
Sambungan Perangkat Keras
Sambungan Perangkat Keras

Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan raspberry pi. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:

BH1715 akan bekerja melalui I2C. Berikut adalah contoh diagram pengkabelan, yang menunjukkan cara memasang setiap antarmuka sensor.

Out-of-the-box, papan dikonfigurasi untuk antarmuka I2C, karena itu kami sarankan menggunakan hookup ini jika Anda agnostik. Yang Anda butuhkan hanyalah empat kabel!

Hanya empat koneksi yang diperlukan pin Vcc, Gnd, SCL dan SDA dan ini terhubung dengan bantuan kabel I2C.

Koneksi ini ditunjukkan pada gambar di atas.

Langkah 4: Pengukuran Intensitas Cahaya Menggunakan Kode Java:

Pengukuran Intensitas Cahaya Menggunakan Kode Java
Pengukuran Intensitas Cahaya Menggunakan Kode Java
Pengukuran Intensitas Cahaya Menggunakan Kode Java
Pengukuran Intensitas Cahaya Menggunakan Kode Java

Keuntungan menggunakan raspberry pi adalah, yang memberi Anda fleksibilitas bahasa pemrograman di mana Anda ingin memprogram papan untuk menghubungkan sensor dengannya. Memanfaatkan keunggulan papan ini, kami mendemonstrasikan di sini pemrograman di Jawa. Kode Java untuk BH1715 dapat diunduh dari komunitas GitHub kami yaitu Dcube Store.

Selain untuk memudahkan pengguna, kami juga menjelaskan kodenya di sini:

Sebagai langkah pertama pengkodean, Anda perlu mengunduh pustaka pi4j untuk Java, karena pustaka ini mendukung fungsi yang digunakan dalam kode. Nah, untuk mendownload librarynya anda bisa mengunjungi link berikut ini:

pi4j.com/install.html

Anda dapat menyalin kode Java yang berfungsi untuk sensor ini dari sini juga:

// Didistribusikan dengan lisensi kehendak bebas.

// Gunakan sesuka Anda, untung atau gratis, asalkan sesuai dengan lisensi karya terkait.

// BH1715

// Kode ini dirancang untuk bekerja dengan Modul Mini BH1715_I2CS I2C yang tersedia dari ControlEverything.com.

//

impor com.pi4j.io.i2c. I2CBus;

impor com.pi4j.io.i2c. I2CDevice;

impor com.pi4j.io.i2c. I2CFfactory;

impor java.io. IOException;

kelas umum BH1715

{

public static void main(String args) melempar Pengecualian

{

// Buat bus I2C

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

// Dapatkan perangkat I2C, alamat I2C BH1715 adalah 0x23(35)

Perangkat I2CDevice = bus.getDevice(0x23);

// Kirim perintah daya pada

device.write((byte)0x01);

// Kirim perintah pengukuran berkelanjutan

device.write((byte)0x10);

Thread.sleep(500);

// Baca 2 byte data

// pencahayaan msb, pencahayaan lsb

byte data = byte baru[2];

device.read(data, 0, 2);

// Mengonversi data

pencahayaan ganda = ((data[0] & 0xFF) * 256 + (data[1] & 0xFF)) / 1,20;

// Keluarkan data ke layar

System.out.printf("Pencahayaan Cahaya Sekitar: %.2f lux %n", pencahayaan);

}

}

Pustaka yang memfasilitasi komunikasi i2c antara sensor dan papan adalah pi4j, berbagai paketnya I2CBus, I2CDevice dan I2CFfactory membantu membangun koneksi.

impor com.pi4j.io.i2c. I2CBus;impor com.pi4j.io.i2c. I2CDevice; impor com.pi4j.io.i2c. I2CFfactory; impor java.io. IOException;

Bagian kode ini membuat sensor beroperasi untuk pengukuran intensitas cahaya dengan menulis perintah masing-masing menggunakan fungsi write() dan kemudian data dibaca menggunakan fungsi read().

device.write((byte)0x01); // nyalakan perintah

device.write((byte)0x10); // perintah pengukuran terus menerus

byte data = byte baru[2]; // Baca 2 byte data

device.read(data, 0, 2);

Data yang diterima dari sensor diubah ke format yang sesuai dengan menggunakan berikut ini:

pencahayaan ganda = ((data[0] & 0xFF) * 256 + (data[1] & 0xFF)) / 1,20;

Output dicetak menggunakan fungsi System.out.println(), dalam format berikut.

System.out.printf("Pencahayaan Cahaya Sekitar: %.2f lux %n", pencahayaan);

Output dari sensor ditunjukkan pada gambar di atas.

Langkah 5: Aplikasi:

Aplikasi
Aplikasi

BH1715 adalah sensor cahaya ambient keluaran digital yang dapat dimasukkan ke dalam Ponsel, TV LCD, PC CATATAN, dll. Ini juga dapat digunakan di mesin permainan portabel, kamera digital, kamera video digital, PDA, layar LCD dan banyak lagi perangkat yang memerlukan aplikasi penginderaan cahaya yang efisien.

Direkomendasikan: