Isi kandungan:
- Langkah 1: Gambaran Keseluruhan BH1715:
- Langkah 2: Apa yang Anda Perlu..
- Langkah 3: Penyambungan Perkakasan:
- Langkah 4: Pengukuran Intensiti Cahaya Arduino Code:
- Langkah 5: Aplikasi:
Video: Pengiraan Intensiti Cahaya Menggunakan BH1715 dan Arduino Nano: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
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 kerja BH1715 dengan Arduino Nano.
Perkakasan yang anda perlukan untuk tujuan ini adalah seperti berikut:
1. BH1715 - Sensor Cahaya Ambient
2. Arduino nano
3. Kabel I2C
4. Perisai I2C Untuk Arduino Nano
Langkah 1: Gambaran Keseluruhan BH1715:
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..
Bahan yang kami perlukan untuk mencapai tujuan kami merangkumi komponen perkakasan berikut:
1. BH1715 - Sensor Cahaya Ambient
2. Arduino Nano
3. Kabel I2C
4. Perisai I2C untuk Arduino nano
Langkah 3: 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: Pengukuran Intensiti Cahaya Arduino Code:
Mari mulakan dengan kod Arduino sekarang.
Semasa menggunakan modul sensor dengan Arduino, kami menyertakan perpustakaan Wire.h. Perpustakaan "Wire" mengandungi fungsi yang memudahkan komunikasi i2c antara sensor dan papan Arduino.
Keseluruhan kod Arduino diberikan di bawah untuk kemudahan pengguna:
#sertakan
// Alamat BH1715 I2C adalah 0x23 (35) #define Addr 0x23 sia-sia persediaan () {// Memulakan komunikasi I2C sebagai MASTER Wire.begin (); // Inisialisasi Serial Communication, tetapkan baud rate = 9600 Serial.begin (9600); // Mula I2C Transmission Wire.beginTransmission (Addr); // Hantar kuasa pada arahan Wire.write (0x01); // Hentikan I2C Transmission Wire.endTransmission (); // Mula I2C Transmission Wire.beginTransmission (Addr); // Hantar arahan pengukuran berterusan Wire.write (0x10); // Hentikan I2C Transmission 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 if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } kelewatan (300); // ubah data float luminance = ((data [0] * 256) + data [1]) / 1.20; // Keluarkan data ke monitor bersiri Serial.print ("Ambient Light Luminance:"); Serial.print (pencahayaan); Serial.println ("lux"); }
Bahagian kod berikut memulakan komunikasi i2c dan komunikasi bersiri dengan bantuan fungsi Wire.begin () dan Serial.begin ().
// Memulakan komunikasi I2C sebagai MASTER
Wire.begin (); // Permulaan Komunikasi Bersiri, tetapkan kadar baud = 9600 Serial.begin (9600); // Mula I2C Transmission Wire.beginTransmission (Addr); // Hantar kuasa pada arahan Wire.write (0x01); // Hentikan I2C Transmission Wire.endTransmission (); // Mula I2C Transmission Wire.beginTransmission (Addr); // Hantar arahan pengukuran berterusan Wire.write (0x10); // Hentikan I2C Transmission Wire.endTransmission (); kelewatan (300);
Keamatan cahaya diukur pada bahagian kod berikut.
data int yang tidak ditandatangani [2];
// Meminta 2 bait data Wire.requestFrom (Addr, 2); // Baca 2 bait data // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } kelewatan (300); // ubah data float luminance = ((data [0] * 256) + data [1]) / 1.20; // Keluarkan data ke monitor bersiri Serial.print ("Ambient Light Luminance:"); Serial.print (pencahayaan); Serial.println ("lux");
Yang perlu anda buat hanyalah membakar kod di arduino dan periksa bacaan anda di port bersiri. Hasilnya ditunjukkan dalam gambar di atas juga untuk rujukan anda.
Langkah 5: Aplikasi:
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:
Pengukuran Intensiti Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 5 Langkah
Pengukuran Intensiti Cahaya dengan Menggunakan BH1715 dan Raspberry Pi: 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 juga berperanan baik dalam biologi
Rancangan Intensiti Cahaya Menggunakan Perpustakaan Arduino Arduino dan Python's Master: 5 Langkah
Rancangan Intensiti Cahaya Menggunakan Arduino dan Pustaka Arduino Master Python's: Arduino menjadi alat yang ekonomik namun sangat efisien dan berfungsi, memprogramkannya di Embedded C menjadikan proses membuat projek membosankan! Modul Arduino_Master Python mempermudah ini dan membolehkan kita melakukan pengiraan, membuang nilai sampah
Pengiraan Mekanik Kuantum Pengiraan: 4 Langkah
Pengiraan Mekanik Kuantum Komputasi: Pengiraan komputasi dalam kimia dan fizik dapat mendedahkan sifat yang sangat menarik pada beberapa spesimen (terutamanya jika mereka perlu diubah suai untuk kecekapan yang lebih baik bagi sebatian asal tertentu). dalam prosedur, selain faktor d
Pengiraan Intensiti Cahaya Menggunakan BH1715 dan Foton Zarah: 5 Langkah
Pengiraan Intensiti Cahaya Menggunakan BH1715 dan Foton Partikel: 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 juga berperanan baik dalam biologi
Penjimat Tenaga Intensiti Cahaya Menggunakan Photocells dan Thermistor: 6 Langkah
Penjimat Tenaga Intensiti Cahaya Menggunakan Photocells dan Thermistor: Instruksional ini direka untuk mengajar anda cara menjimatkan tenaga dengan mengubah intensiti cahaya menggunakan photocells dan thermistors. Kami akan menunjukkan kepada anda cara membina litar dan memberi kod Arduino menggunakan MATLAB