Daftar Isi:
- Langkah 1: Modulasi Lebar Pulsa dalam Perangkat Lunak
- Langkah 2: Perangkat Keras dan Komponen yang Diperlukan
- Langkah 3: Perangkat Lunak dan Hasil yang Tersisa
Video: Beberapa Lilin Elektronik: 3 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Lilin elektronik telah diposting berkali-kali di Instructables, jadi mengapa yang ini?
Di rumah saya memiliki rumah Natal semi-transparan kecil yang memiliki wawasan LED dan baterai kecil. Beberapa rumah memiliki LED dengan efek lilin dan beberapa memiliki LED yang hanya menyala. Baterai kecil relatif cepat kosong dan karena saya ingin memiliki efek lilin di semua rumah, saya memutuskan untuk menjadikannya proyek PIC. Tentu saja Anda dapat mengubahnya menjadi proyek Arduino juga.
Jadi apa yang membuat lilin elektronik ini istimewa? PIC dan Arduino semuanya memiliki perangkat keras Pulse Width Modulation (PWM) yang dapat digunakan untuk membuat efek lilin menggunakan LED tetapi dalam kasus saya, saya ingin memiliki 5 lilin elektronik independen menggunakan satu pengontrol dan itu tidak ada, setidaknya tidak yang saya tahu off. Solusi yang saya gunakan adalah membuat kelima sinyal PWM independen ini sepenuhnya dalam perangkat lunak.
Langkah 1: Modulasi Lebar Pulsa dalam Perangkat Lunak
Modulasi Lebar Pulsa telah dijelaskan beberapa kali, mis. dalam Artikel Arduino ini:
PIC dan Arduino memiliki perangkat keras PWM khusus yang membuatnya mudah untuk menghasilkan sinyal PWM ini. Jika kita ingin membuat satu atau lebih sinyal PWM dalam perangkat lunak, kita memerlukan dua timer:
- Satu timer yang digunakan untuk membangkitkan frekuensi PWM
- Satu timer yang digunakan untuk menghasilkan duty cycle PWM
Kedua timer menghasilkan dan menginterupsi ketika selesai sehingga penanganan sinyal PWM dilakukan sepenuhnya didorong oleh interupsi. Untuk frekuensi PWM saya menggunakan timer 0 dari PIC dan biarkan meluap. Dengan clock osilator internal 8 MHz dan skala awal 64 rumusnya adalah: Fosc/4 / 256 / 64 = 2.000.000 / 256 / 64 = 122 Hz atau 8, 2 ms. Frekuensinya harus cukup tinggi sehingga mata manusia tidak dapat mendeteksinya. Frekuensi 122 Hz sudah cukup untuk itu. Satu-satunya hal yang dilakukan rutin interupsi timer ini adalah menyalin siklus tugas untuk siklus PWM baru dan menyalakan semua LED. Ini melakukan ini untuk semua 5 LED secara independen.
Nilai timer untuk menangani duty cycle PWM tergantung bagaimana kita membuat efek candle. Dalam pendekatan saya, saya mensimulasikan efek ini dengan meningkatkan siklus tugas dengan nilai 3 untuk meningkatkan kecerahan LED dan menguranginya dengan nilai 25 untuk mengurangi kecerahan LED. Dengan cara ini Anda mendapatkan efek seperti lilin. Karena saya menggunakan nilai minimum 3, jumlah langkah untuk mengontrol siklus tugas lengkap dengan satu byte adalah 255 / 3 = 85. Ini berarti timer siklus tugas PWM harus berjalan dengan frekuensi 85 kali frekuensi Timer frekuensi PWM yaitu 85 * 122 = 10.370 Hz.
Untuk siklus tugas PWM saya menggunakan timer 2 dari PIC. Ini adalah timer dengan auto reload dan menggunakan rumus berikut: Periode = (Reload + 1) * 4 * Tosc * Nilai prescale Timer2. Dengan reload 191 dan prescale 1 kita mendapatkan periode (191 + 1) * 4 * 1/8.000.000 * 1 = 96 us atau 10.416 Hz. Siklus tugas PWM interupsi rutin memeriksa apakah siklus tugas telah berlalu dan mematikan LED yang siklus tugas selesai. Jika siklus tugas tidak dilewati, itu akan mengurangi penghitung siklus tugas dengan 3 dan mengakhiri rutinitas. Ini melakukan ini untuk semua LED secara independen. Dalam kasus saya, rutin interupsi ini memakan waktu sekitar 25 us dan karena dipanggil setiap 96 us, sudah 26% CPU digunakan untuk mengelola siklus tugas PWM dalam perangkat lunak.
Langkah 2: Perangkat Keras dan Komponen yang Diperlukan
Diagram skema menunjukkan hasil akhir. Meskipun saya hanya mengontrol 5 LED secara mandiri, saya menambahkan LED ke-6 yang berjalan bersama dengan salah satu dari 5 LED lainnya. Karena PIC tidak dapat menggerakkan dua LED pada satu pin port, saya menambahkan transistor. Elektronik diberi makan oleh adaptor DC 6 volt / 100 mA dan menggunakan regulator tegangan jatuh rendah untuk membuat 5 Volt stabil.
Anda memerlukan komponen berikut untuk proyek ini:
- 1 PIC mikrokontroler 12F615
- 2 kapasitor keramik: 2 * 100nF
- Resistor: 1 * 33k, 6 * 120 Ohm, 1 * 4k7
- 6 LED Oranye atau Kuning, kecerahan tinggi
- 1 transistor BC557 atau setara
- 1 Kapasitor elektrolit 100 uF / 16 V
- 1 regulator tegangan jatuh rendah LP2950Z
Anda dapat membangun sirkuit di atas papan tempat memotong roti dan tidak membutuhkan banyak ruang, seperti yang dapat dilihat pada gambar.
Langkah 3: Perangkat Lunak dan Hasil yang Tersisa
Bagian yang tersisa dari perangkat lunak adalah loop utama. Loop utama menambah atau mengurangi kecerahan LED dengan menyesuaikan siklus kerja secara acak. Karena kita hanya menambah dengan nilai 3 dan mengurangi dengan nilai 25, kita harus memastikan bahwa pengurangan tidak terjadi sesering kenaikan.
Karena saya tidak menggunakan perpustakaan apa pun, saya harus membuat generator acak menggunakan register geser umpan balik linier, lihat:
en.wikipedia.org/wiki/Linear-feedback_shif…
Efek lilin dipengaruhi oleh seberapa cepat siklus tugas PWM diubah sehingga loop utama menggunakan penundaan sekitar 10 ms. Anda dapat menyesuaikan waktu ini untuk mengubah efek lilin sesuai kebutuhan Anda.
Video terlampir menunjukkan hasil akhir di mana saya menggunakan penutup di atas LED untuk meningkatkan efeknya.
Saya menggunakan JAL sebagai bahasa pemrograman untuk proyek ini dan melampirkan file sumber.
Bersenang-senang membuat Instruksi ini dan menantikan reaksi dan hasil Anda.
Direkomendasikan:
Lilin LED untuk Lentera Kertas: 3 Langkah
Lilin LED untuk Lentera Kertas: Proyek ini menunjukkan cara membuat efek lilin yang tampak realistis untuk digunakan misalnya di dalam Lentera Kertas. Ini menggunakan papan NodeMCU (ESP8266) untuk menggerakkan NeoPixels, juga dikenal sebagai LED WS2812. Lihat video di bagian hasil untuk melihat perbandingan
Beberapa Komponen Sederhana, DIY Keyboard Elektronik: 6 Langkah
Beberapa Komponen Sederhana, DIY Keyboard Elektronik: 555 timer 1Tombol × 81 100nF kapasitorBerbagai resistensi: 390Ω, 620Ω, 910Ω, 1kΩ×2, 1.1kΩ, 1.3kΩ, 1.5kΩ, 6.2kΩ.1 buzzer22AWG kabel instalasi1 Konektor baterai 9V1 papan tempat memotong roti1 9V baterai
Lilin Listrik Bertenaga Lilin: 8 Langkah (dengan Gambar)
Lilin Listrik Bertenaga Lilin: Setelah melihat laporan berita tentang Badai Sandy dan mendengar cobaan berat yang dialami semua keluarga dan teman saya di New York dan New Jersey, itu membuat saya berpikir tentang kesiapsiagaan darurat saya sendiri. San Francisco - bagaimanapun juga - duduk di atas
Sistem Alarm Kebakaran Menggunakan Arduino [Dalam Beberapa Langkah Mudah]: 3 Langkah
Sistem Alarm Kebakaran Menggunakan Arduino [Dalam Beberapa Langkah Mudah]: Apakah Anda ingin membuat proyek sederhana dan menarik dengan Arduino yang pada saat yang sama bisa sangat berguna dan berpotensi menyelamatkan nyawa? Jika ya, Anda telah datang ke tempat yang tepat untuk belajar sesuatu yang baru dan inovatif. Pada postingan kali ini kita akan
Pelajari Cara Menggambar Lilin - Langkah demi Langkah: 6 Langkah
Pelajari Cara Menggambar Lilin - Langkah demi Langkah: Lilin ini membutuhkan waktu 10 menit untuk menggambar jika Anda mengikuti langkah saya dengan hati-hati. Selamat