Daftar Isi:

Hadiah Iluminasi: 5 Langkah (dengan Gambar)
Hadiah Iluminasi: 5 Langkah (dengan Gambar)

Video: Hadiah Iluminasi: 5 Langkah (dengan Gambar)

Video: Hadiah Iluminasi: 5 Langkah (dengan Gambar)
Video: Rahasia dibalik lagu twinkle twinkle little star ‼️😱 #Shorts #YouTubeShorts 2024, November
Anonim
Hadiah yang Diterangi
Hadiah yang Diterangi

Di rumah kami memiliki dua hadiah iluminasi yang digunakan selama periode Natal. Ini adalah hadiah iluminasi sederhana menggunakan 2 warna LED merah-hijau yang berubah warna secara acak yang memudar dan memudar. Perangkat ini didukung oleh sel tombol 3 Volt. Yang terakhir adalah alasan untuk proyek ini karena baterai sangat cepat habis ketika hadiah dinyalakan untuk waktu yang lebih lama.

Untuk mencegah penggunaan baterai sel tombol dalam jumlah besar, saya merancang versi saya sendiri menggunakan tiga baterai AAA yang dapat diisi ulang. Versi ini menggunakan LED RGB sehingga warna biru juga dimungkinkan tetapi itu bukan bagian dari desain aslinya. Versi saya memiliki fungsi berikut:

  • Kontrol 2 hadir secara bersamaan menggunakan satu mikrokontroler PIC12F617. Perangkat lunak mikrokontroler ditulis dalam bahasa pemrograman JAL.
  • Mengaktifkan dan menonaktifkan hadiah menggunakan tombol tekan. Versi asli menggunakan sakelar untuk tujuan itu tetapi tombol tekan lebih mudah digunakan.
  • Ubah warna hadiah secara acak dengan fade-in dan fade-out dari warna merah dan hijau.
  • Matikan hadiah ketika tegangan baterai turun di bawah 3,0 Volt. Ini akan mencegah baterai isi ulang tidak terlalu banyak habis.

Setelah memudar dalam satu warna, LED tetap menyala untuk waktu antara 3 detik dan 20 detik. Karena saya masih memiliki LED biru yang tidak digunakan, saya menambahkan fitur bahwa kedua paket akan berubah menjadi biru ketika waktu tepat 10 detik. Ini tidak sering terjadi karena waktu acak dihasilkan dalam tick timer 40 milidetik seperti yang dijelaskan nanti.

Langkah 1: Beberapa Teori Tentang Fading-in dan Fading Out Menggunakan Modulasi Lebar Pulsa

Cara terbaik untuk mengubah kecerahan LED bukanlah dengan mengubah arus yang mengalir melalui LED tetapi dengan mengubah waktu nyala LED dalam interval waktu tertentu. Cara mengontrol kecerahan LED ini disebut Pulse Width Modulation (PWM) yang telah dijelaskan beberapa kali di internet, mis. Wikipedia.

PIC dan Arduino memiliki perangkat keras PWM khusus yang membuatnya mudah untuk menghasilkan sinyal PWM ini tetapi mereka sering memiliki satu output untuk ini sehingga Anda hanya dapat mengontrol satu LED. Untuk versi ini saya perlu mengontrol 5 LED (2 merah, 2 hijau dan 1 kombinasi biru) sehingga PWM perlu dilakukan dalam perangkat lunak menggunakan timer yang menghasilkan frekuensi PWM serta siklus tugas PWM.

PIC12F617 memiliki timer on-board dengan kemampuan auto-reload. Ini berarti bahwa setelah Anda mengatur nilai reload timer, itu akan menggunakan nilai itu setiap kali timeout telah berlalu dan timer beroperasi berdiri sendiri pada frekuensi yang ditentukan. Karena pengaturan waktu sangat penting untuk sinyal PWM yang stabil, pengatur waktu beroperasi berdasarkan interupsi, tidak dipengaruhi oleh waktu yang dibutuhkan program utama untuk mengontrol dan menentukan waktu-waktu acak untuk LED.

Frekuensi PWM harus cukup tinggi untuk mencegah kedipan, jadi saya memilih frekuensi PWM 100 Hz. Untuk efek fade-in dan fade-out kita perlu mengubah siklus kerja dan kecerahan LED. Saya memutuskan untuk menggunakan peningkatan langkah 5 untuk menambah atau mengurangi kecerahan untuk mendapatkan efek fade-in dan fade-out dan karena timer menggunakan rentang 0 hingga 255 untuk siklus kerja, timer harus berjalan pada 255 / 5 = 51 kali frekuensi normal atau 5100 Hz. Ini menghasilkan interupsi timer setiap 196 kita.

Langkah 2: Pekerjaan Mekanik

Pekerjaan Mekanik
Pekerjaan Mekanik
Pekerjaan Mekanik
Pekerjaan Mekanik
Pekerjaan Mekanik
Pekerjaan Mekanik

Untuk membuat kado saya menggunakan plastik akrilik putih susu dan untuk set-up lainnya saya menggunakan MDF. Untuk mencegah Anda melihat bentuk LED dalam kemasan saat LED menyala, saya meletakkan penutup di atas LED yang menyebarkan cahaya dari LED. Penutup ini berasal dari beberapa lilin elektronik lama yang saya miliki tetapi Anda juga dapat membuat penutup dengan menggunakan plastik akrilik yang sama. Dalam gambar Anda melihat apa yang saya gunakan sebagai peralatan dan bahan.

Langkah 3: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Diagram skema menunjukkan komponen elektronik yang Anda butuhkan. Seperti disebutkan sebelumnya 5 LED dikendalikan secara independen di mana LED biru digabungkan. Karena PIC tidak dapat menggerakkan dua LED pada satu pin port, saya menambahkan transistor untuk mengontrol kombinasi LED biru. Elektronik ini didukung oleh 3 baterai isi ulang AAA dan dapat dinyalakan atau dimatikan dengan menekan tombol reset.

Anda memerlukan komponen elektronik berikut untuk proyek ini:

  • 1 PIC mikrokontroler 12F617 dengan soket
  • 2 kapasitor keramik: 2 * 100nF
  • Resistor: 1 * 33k, 1 * 4k7, 2 * 68 Ohm, 4 * 22 Ohm
  • 2 LED RGB, kecerahan tinggi
  • 1 transistor BC557 atau setara
  • 1 saklar tombol tekan

Anda dapat membangun sirkuit di atas papan tempat memotong roti dan tidak membutuhkan banyak ruang, seperti yang dapat dilihat pada gambar. Anda mungkin bertanya-tanya mengapa nilai resistor untuk mengontrol arus maksimum melalui LED sangat rendah. Hal ini karena tegangan suplai rendah sebesar 3,6 Volt dikombinasikan dengan penurunan tegangan yang dimiliki setiap LED, yang tergantung pada warna per LED, lihat juga di Wikepedia. Nilai resistor menghasilkan arus maksimum sekitar 15 mA per LED di mana arus maksimum seluruh sistem adalah sekitar 30 mA.

Langkah 4: Perangkat Lunak

Perangkat lunak melakukan tugas-tugas berikut:

Ketika perangkat disetel ulang dengan menekan tombol, perangkat akan menyala jika mati atau mematikan perangkat jika hidup. Mati berarti menempatkan PIC12F617 ke mode tidur di mana hampir tidak mengkonsumsi daya apapun.

Hasilkan sinyal PWM untuk mengontrol kecerahan LED. Ini dilakukan dengan menggunakan timer dan rutin layanan interupsi yang mengontrol pin PIC12F617 yang menghidupkan dan mematikan LED.

Fade-in dan fade-out LED dan tetap menyala untuk waktu acak antara 3 dan 20 detik. Jika waktu acak sama dengan 10 detik, kedua LED akan berubah menjadi biru selama 10 detik setelah itu pola fade-in dan fade-out merah-hijau normal digunakan.

Selama operasi, PIC akan mengukur tegangan suplai menggunakan Analog to Digital Converter (ADC) on-board. Ketika tegangan ini turun di bawah 3,0 V, itu akan mematikan LED dan akan menempatkan PIC ke mode tidur lagi. PIC masih dapat beroperasi dengan baik pada 3,0 V tetapi tidak baik jika baterai yang dapat diisi ulang benar-benar terkuras.

Seperti disebutkan sebelumnya sinyal PWM dibuat menggunakan timer yang menggunakan rutin layanan interupsi untuk menjaga sinyal PWM stabil. Fading-in dan fade-out LED termasuk waktu LED menyala, dikendalikan oleh program utama. Program utama ini menggunakan tick timer 40 milidetik, berasal dari timer yang sama yang menciptakan sinyal PWM.

Karena saya tidak menggunakan pustaka JAL khusus untuk proyek ini, kali ini saya harus membuat generator acak menggunakan register geser umpan balik linier untuk menghasilkan waktu mati acak dan waktu mati LED secara acak.

Langkah 5: Hasil Akhir

Image
Image
Hasil akhir
Hasil akhir

Ada 2 video yang menunjukkan hasil antara. Istri saya masih perlu mengubah kubus menjadi hadiah yang sebenarnya. Satu video menunjukkan hasil close up di mana video lain menunjukkannya dengan hadiah asli yang mengarah ke proyek ini.

Seperti yang Anda harapkan ketika Anda merasa sudah selesai, persyaratan baru akan muncul. Istri saya meminta jika kecerahan LED juga dapat bervariasi setelah mereka memudar masuk Tentu saja itu mungkin karena saya hanya menggunakan sekitar setengah dari memori program PIC12F617.

File sumber JAL dan file Intel Hex untuk pemrograman PIC dilampirkan. Jika Anda tertarik untuk menggunakan mikrokontroler PIC dengan JAL – bahasa pemrograman seperti Pascal – kunjungi situs web JAL.

Bersenang-senang membuat Instruksi ini dan menantikan reaksi dan hasil Anda.

Direkomendasikan: