Pengiraan Intensiti Cahaya Menggunakan BH1715 dan Foton Zarah: 5 Langkah
Pengiraan Intensiti Cahaya Menggunakan BH1715 dan Foton Zarah: 5 Langkah
Anonim
Image
Image

Semalam kami mengerjakan paparan LCD, dan semasa mengusahakannya, kami menyedari pentingnya pengiraan intensiti cahaya. Keamatan cahaya tidak hanya penting dalam domain fizikal dunia ini tetapi ia juga berperanan baik dalam domain biologi. Anggaran tepat mengenai intensiti cahaya memainkan peranan penting dalam ekosistem kita, dalam pertumbuhan tanaman, dan lain-lain. Oleh itu, untuk tujuan ini, kami mempelajari sensor ini BH1715, yang merupakan sensor cahaya ambien jenis output bersiri 16-bit.

Dalam tutorial ini, kita akan menunjukkan cara kerja BH1715 dengan Particle Photon. Particle Photon adalah papan yang sebenarnya dapat memudahkan pengendalian sebarang peranti melalui internet.

Perkakasan yang anda perlukan untuk tujuan ini adalah seperti berikut:

1. BH1715 - Sensor Cahaya Ambient

2. Foton Zarah

3. Kabel I2C

4. Perisai I2C Untuk Foton Zarah

Langkah 1: Gambaran Keseluruhan BH1715:

Apa yang kamu perlu..!!
Apa yang kamu perlu..!!

Pertama sekali, kami ingin membiasakan anda dengan ciri asas modul sensor iaitu BH1715 dan protokol komunikasi yang berfungsi.

BH1715 adalah Sensor Cahaya Ambient digital dengan antara muka bas I²C. BH1715 biasanya digunakan untuk mendapatkan data cahaya sekitar untuk menyesuaikan daya lampu latar LCD dan Keypad untuk peranti mudah alih. Peranti ini menawarkan resolusi 16-bit dan julat pengukuran yang boleh disesuaikan, yang memungkinkan pengesanan dari 0,23 hingga 100, 000 lux.

Protokol komunikasi di mana sensor berfungsi adalah I2C. I2C bermaksud litar antara bersepadu. Ini adalah protokol komunikasi di mana komunikasi berlaku melalui talian SDA (data bersiri) dan SCL (jam bersiri). Ia membolehkan menyambungkan pelbagai peranti pada masa yang sama. Ini adalah salah satu protokol komunikasi yang paling mudah dan berkesan.

Langkah 2: Apa yang Anda Perlu..

Apa yang kamu perlu..!!
Apa yang kamu perlu..!!
Apa yang kamu perlu..!!
Apa yang kamu perlu..!!
Apa yang kamu perlu..!!
Apa yang kamu perlu..!!

Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:

1. BH1715 - Sensor Cahaya Ambient

2. Foton Zarah

3. Kabel I2C

4. Perisai I2C untuk Foton Zarah

Langkah 3: Penyambungan Perkakasan:

Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan

Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan raspberry pi. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:

BH1715 akan berfungsi di atas I2C. Berikut adalah contoh rajah pendawaian, yang menunjukkan cara memasang setiap antara muka sensor.

Di luar kotak, papan dikonfigurasikan untuk antara muka I2C, oleh itu kami mengesyorkan menggunakan penyambungan ini jika anda tidak agnostik. Yang anda perlukan hanyalah empat wayar!

Hanya diperlukan empat sambungan pin Vcc, Gnd, SCL dan SDA dan ini disambungkan dengan bantuan kabel I2C.

Sambungan ini ditunjukkan dalam gambar di atas.

Langkah 4: Kod Zarah Pengukuran Intensiti Cahaya:

Kod Zarah Pengukuran Intensiti Cahaya
Kod Zarah Pengukuran Intensiti Cahaya
Kod Zarah Pengukuran Intensiti Cahaya
Kod Zarah Pengukuran Intensiti Cahaya

Mari mulakan dengan kod zarah sekarang.

Semasa menggunakan modul sensor dengan arduino, kami menyertakan library application.h dan spark_wiring_i2c.h. Perpustakaan "application.h" dan spark_wiring_i2c.h mengandungi fungsi yang memudahkan komunikasi i2c antara sensor dan zarah.

Keseluruhan kod zarah diberikan di bawah untuk kemudahan pengguna:

#sertakan

#sertakan

// Alamat BH1715 I2C adalah 0x23 (35)

#tentukan Addr 0x23

int luminance = 0;

persediaan tidak sah ()

{

// Tetapkan pemboleh ubah

Particle.variable ("i2cdevice", "BH1715");

Particle.variable ("luminance", luminance);

// Memulakan komunikasi I2C sebagai MASTER

Wire.begin ();

// Mulakan komunikasi bersiri, tetapkan kadar baud = 9600

Serial.begin (9600);

// Mulakan Penghantaran I2C

Wire.beginTransmission (Addr);

// Hantar arahan power on

Wire.write (0x01);

// Hentikan Penghantaran I2C

Wire.endTransmission ();

// Mulakan Penghantaran I2C

Wire.beginTransmission (Addr);

// Hantar arahan pengukuran berterusan

Wire.write (0x10);

// Hentikan Penghantaran I2C

Wire.endTransmission ();

kelewatan (300);

}

gelung kosong ()

{

data int yang tidak ditandatangani [2];

// Minta 2 bait data

Wire.requestFrom (Addr, 2);

// Baca 2 bait data

// ALS msb, ALS lsb

jika (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

kelewatan (300);

// Tukarkan data

luminance = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF)) / 1.20;

// Keluarkan data ke papan pemuka

Particle.publish ("Ambient Light Luminance:", String (luminance));

}

Langkah 5: Aplikasi:

Permohonan
Permohonan

BH1715 adalah sensor cahaya ambien output digital yang boleh disertakan dalam telefon bimbit, TV LCD, PC CATATAN dan lain-lain. Ia juga dapat digunakan dalam mesin permainan Portable, kamera digital, kamera video Digital, PDA, paparan LCD dan banyak lagi peranti yang memerlukan aplikasi penderiaan cahaya yang cekap.

Disyorkan: