Isi kandungan:

Menentukan Kecerahan LED: 5 Langkah
Menentukan Kecerahan LED: 5 Langkah

Video: Menentukan Kecerahan LED: 5 Langkah

Video: Menentukan Kecerahan LED: 5 Langkah
Video: Cara Mudah Menghitung Nilai resistor untuk LED (5 MENIT PAHAM ) 2024, November
Anonim
Menentukan Kecerahan LED
Menentukan Kecerahan LED

Semasa saya membuat lampu dongeng, saya menyedari nilai PWM tidak sebanding dengan kecerahan LED. Secara sederhana, jika nilai PWM berganda, kecerahan tidak berganda; khas apabila PWM hampir maksimum, sebarang perubahan tidak dapat dikenali oleh mata saya. Saya fikir ia mesti menjadi masalah penentukuran sederhana! dan bagaimana saya membuat projek ini! Ideanya adalah untuk mengukur kecerahan LED dengan beberapa peranti (sensor luminositi atau fotoresistor) dan mencari korelasi antara nilai PWM dan kecerahan. Kemudian kemudian Jika saya menetapkan kecerahan hingga 50%, Arduino akan mengira PWM yang sesuai dan meredupkan LED dengan sewajarnya.

Oleh itu, saya memerlukan sensor cahaya dan LED untuk mengukur kecerahan. Dengan menggunakan kad SD, saya akan menyimpan data untuk prosedur pemasangan kemudian. Pemasangannya akan dilakukan di Excel (atau program lain). Put out akan digunakan dalam kod Arduino, dan itu saja! Ia mesti dilakukan sekali. Kemudian anda boleh menggunakan parameter penentukuran untuk selama-lamanya!

Langkah 1: Bahagian

1- WEMOS mini D1: Aliexpress 3 €

2- TSL 2561 (Sensor pencahayaan): Aliexpress 3 €

3- Modul kad SD: Aliexpress 1 €

4- LED

5- Perintang 220 ohm

6- wayar

jumlah kos: 8 -10 €

Langkah 2: Pendawaian

Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian

Modul kad SD dan wayar sensor cahaya tidak boleh diubah (kebanyakannya). Led hendaklah disambungkan ke pin PWM.

Langkah 3: Kod

Kod
Kod

Saya menggabungkan tiga kod:

Kad SD: contoh terpakai> SD> ReadWrite di Arduino IDE

TSL 2561: Contoh Perpustakaan Adafruit TSL2561 terpakai (sensorapi); anda akan menemuinya dalam contoh, jika anda memasang perpustakaan (saya anggap anda tahu cara memasang perpustakaan di Arduino IDE).

Pudar LED: contoh terpakai> Analog> pudar

Kodnya, setelah menginisialisasi modul, akan meredupkan led dan membaca kecerahan dan menyimpannya dalam kad SD. dengan cara ini saya akan mengumpulkan beberapa data untuk penentukuran.

Saya menukar setiap kod mengikut keperluan saya. kod akhir dilampirkan.

Isyarat harus seperti gambar yang dilampirkan. Malangnya saya terlupa mengambil gambar jadi saya memotretnya semula dengan cemerlang untuk menunjukkan kepada anda bagaimana seharusnya.

CATATAN: Saya menggunakan wemo mini D1 dan bukannya Arduino. atas sebab-sebab yang saya tidak tahu, PWM adalah antara 0 dan 1023. Di Arduino, ia mestilah antara 0-255. Sekiranya anda ingin menggunakan kod untuk arduino, anda harus menjaganya (baris 90).

Langkah 4: Memasang, dan Menggunakan

Pemasangan, dan Penggunaan
Pemasangan, dan Penggunaan
Pemasangan, dan Penggunaan
Pemasangan, dan Penggunaan

setelah mengumpulkan data, saya membuka fail di excel dan memplot data (lihat gambar). lajur pertama adalah nilai PWM dan yang kedua adalah lux (pembacaan sensor, unit tidak banyak masalah). Oleh itu, plot lux (paksi-y) berbanding PWM (paksi-x). Seperti yang anda lihat, kecerahan berkadar linear dengan nilai PWM. Saya memasang tali untuk itu.

Untuk mengikut garis ikuti seperti:

1- petak data (masukkan> sebaran plot) saya anggap anda tahu caranya.

2- klik kanan pada data diplot

3- klik pada trendline.

4- (pada excel 2013) di sebelah kanan panel muncul. Pilih linear. Di bahagian bawah pilih "persamaan paparan pada carta".

Hubungan linear berbeza dengan persepsi saya. Oleh itu, saya fikir harus ada hubungan logaritma antara persepsi saya dan kecerahan (ini adalah cara termudah yang terlintas di fikiran saya!). Oleh itu, saya mengambil cerun yang sesuai. Pintas tidak penting, kerana bergantung kepada pencemaran cahaya di sekitarnya! sebaliknya, saya menambah 1. Kerana Log10 (0) tidak terbatas. Oleh itu, saya memerlukan pintasan untuk menyelesaikan masalah tersebut. Dalam kes saya, persamaan kelihatan seperti ini:

y = Log10 (0,08 x +1), y adalah kecerahan dan x adalah nilai PWM (0-1023)

Saya menormalkan persamaan dengan nilai maksimum. maka rentang output selalu antara 0-100. dengan cara ini saya dapat meminta arduino untuk kecerahan relatif tertentu, tanpa mengenai kecerahan mutlak maksimum.

y = Log10 (0.08 x +1) * 100 / 1.914

Kerana dalam arduino input saya adalah kecerahan relatif, saya perlu menyusun semula persamaan untuk x (PWM):

x = (10 ^ (y * 1.914 / 100) - 1) / 0.08

menggunakan persamaan ini dalam kod kita dapat memperoleh perubahan kecerahan linear. Oleh itu, anda meminta arduino untuk kecerahan (y) antara 0-100, dan arduino mengira nilai PWM yang sepadan. dengan cara ini, jika menggandakan kecerahan, persepsi anda juga sama.

jika anda mahu menggunakannya dalam kod anda, lebih baik anda menambah baris ini:

kecerahan = 50; // dalam peratusan

PWM = pow (10, kecerahan * 1.914 / 100) -1) /0.0793;

analogWrite (ledpin, PWM);

CATATAN: normalisasi dilakukan untuk maksimum PWM 1023 (untuk Wemos mini D1). Untuk Arduino PWM adalah antara 0-255. anda perlu mengira dengan sewajarnya.

CATATAN2: Saya menambahkan plot log-linear untuk menunjukkan bagaimana persepsi dan nilai PWM kita berkaitan. anda tidak boleh menggunakannya untuk pemasangan!

Langkah 5: Kesimpulannya

penentukuran berfungsi dengan baik untuk saya. Apabila nilai PWM besar, saya dapat melihat perbezaannya. Sebelum sebagai nilai besar saya tidak dapat melihat kesan redup. Pada dasarnya kebanyakan perubahan dilakukan dalam sebilangan kecil PWM. sekarang sudah dikalibrasi!

setiap LED, khasnya warna yang berbeza, harus mempunyai parameter penentukurannya sendiri. Namun saya mengkalibrasi LED biru dan menggunakan parameter untuk LED putih dan hasilnya dapat diterima. jadi mungkin anda boleh menggunakan parameter penentukuran saya tanpa mengganggu diri anda !!

Disyorkan: