Daftar Isi:
- Langkah 1: Daftar Bahan
- Langkah 2: Menghubungkan Header Pin
- Langkah 3: Menghubungkan Papan Breakout WS2812 ke Arduino
- Langkah 4: Membuatnya Berkedip Dengan Arduino IDE
- Langkah 5: Membuat Strip LED RGB
- Langkah 6: Ke Dalam Kegelapan, Biarkan Terang
Video: LED RGB Terbaik untuk Proyek Apa Pun (WS2812, alias NeoPixels): 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Saat kami bekerja dengan LED, kami sering ingin mengontrol statusnya (hidup/mati), kecerahan, dan warnanya. Ada banyak, banyak cara berbeda untuk melakukannya, tetapi tidak ada solusi yang sekompak LED WS2812 RGB. Dalam paket kecil 5mm x 5mm, WS2812 menyertakan 3 LED super terang (Merah, Hijau, dan Biru) dan sirkuit driver ringkas (WS2811) yang hanya memerlukan satu input data untuk mengontrol status, kecerahan, dan warna dari 3 LED. Dengan mengorbankan hanya membutuhkan satu jalur data untuk mengontrol 3 LED, ada permintaan untuk pengaturan waktu yang sangat tepat dalam komunikasi dengan WS2811. Untuk alasan ini, mikrokontroler real-time (misalnya, AVR, Arduino, PIC) diperlukan. Sayangnya, komputer mikro berbasis Linux atau mikrokontroler yang diinterpretasikan seperti Netduino atau Basic Stamp tidak dapat memberikan akurasi waktu yang cukup yang diperlukan. Jadi, dalam Instructable ini saya berjalan melalui proses pengaturan, dan mengendalikan salah satu LED ini dengan Arduino Uno. Kemudian, saya tunjukkan betapa mudahnya untuk menghubungkan beberapa dari mereka bersama-sama untuk tampilan pencahayaan yang mengagumkan! Tingkat kesulitan: PemulaWaktu sampai selesai: 10-15 Menit
Langkah 1: Daftar Bahan
LED RGB yang luar biasa ini hadir dalam paket 5050 (5mm x 5mm) dengan 6 bantalan yang cukup mudah untuk disolder ke papan breakout. Karena satu-satunya komponen tambahan yang diperlukan adalah kapasitor de-coupling, WS2812 dengan jujur menawarkan solusi terbaik untuk mengontrol warna dan kecerahan LED RGB. Driver LED arus konstan tertanam (WS2811) sangat berguna karena dua alasan: - Arus konstan ~18mA akan menggerakkan setiap LED meskipun voltasenya bervariasi. - Tidak perlu menambahkan resistor pembatas arus (alias resistor choke) antara catu daya dan LED. Yang kita butuhkan hanyalah desain yang sangat sederhana untuk menyediakan Input Daya, Ground, dan 1 Kontrol untuk membuat tampilan pencahayaan mengagumkan yang tidak hanya terdiri dari satu, tetapi seluruh rangkaian LED RGB. Betul sekali! Dengan menghubungkan pin Data Out dari salah satu LED ini, ke pin Data In yang lain, kita dapat menggerakkan keduanya secara independen dengan Input Kontrol yang sama! Jika tidak jelas bagaimana melakukan ini, jangan khawatir, pada akhir Instructable ini Anda akan siap untuk menambahkan WS2812 ke proyek apa pun yang Anda inginkan! Untuk Instruksi ini, inilah yang akan kita gunakan: Bahan: 3 x WS2812 RGB LED (pra-solder ke papan breakout kecil) 1 x Solderless Breadboard Solid Core Wire (berbagai macam warna; 28 AWG) 1 x Arduino Uno R3 1 x Konektor Pin Break-away, Pitch 0,1", 8-Pin Male (Sudut Kanan) 1 x Konektor Pin, Pitch 0,1", Pitch 8-Pin Female (Sudut Kanan) 1 x Konektor Pin Breakaway, Pitch 0,1", 8-Pin MaleTools: PC USB A/B Cable Wire Stripper Soldering IronCatatan: Tergantung pada proyek Anda, LED RGB WS2812 juga tersedia tanpa papan breakout masing-masing seharga sekitar $0,40, tetapi kenyamanan opsi pra-solder menarik untuk aplikasi sederhana.
Langkah 2: Menghubungkan Header Pin
Dengan semua bahan yang tercantum pada langkah sebelumnya, cukup mudah untuk menyalakan LED RGB WS2812. Pertama, kami ingin menyiapkan Papan Breakout WS2812 untuk menempatkannya di papan tempat memotong roti tanpa solder. Untuk melakukan ini, kami menggunakan pemotong kawat (alat pemotong yang paling umum juga berfungsi dengan baik) untuk memisahkan setiap strip 8-Pin menjadi potongan 2 x 3-Pin. Ingatlah bahwa membuat potongannya sedikit rumit; sering kali saya mencoba menggunakan alur di antara dua header jantan sebagai panduan untuk pemotongan, dan akhirnya saya memotong terlalu banyak plastik dari header yang ingin saya simpan. Dengan 'mengorbankan' pin di mana kita ingin memotong, kita menghindari masalah sama sekali. Dengan menggunakan tang, kami menarik pin yang ingin kami potong (dalam hal ini, pin ke-4 dan ke-8). Setelah pin dilepas, kita dapat dengan mudah memotong bagian tengah header yang sekarang kosong. Teknik ini bekerja sama baiknya dengan header wanita. Setelah mencongkel dan memotong, kita harus memiliki 6 x 3-Pin header, yaitu, 2 x standar dan 4 x sudut kanan (2 x jantan, 2 x betina). Dengan bantuan besi solder, sekarang kita dapat menghubungkan pin ke masing-masing dari tiga papan breakout dengan cara berikut. Satu papan harus memiliki 2 x header standar, sedangkan dua papan lainnya masing-masing harus memiliki 1 x header sudut kanan. Pada papan yang akan memiliki header pin standar, kami menempatkan pin di permukaan bawah papan (sisi berlawanan dengan tempat LED berada). Di dua lainnya, header sudut kanan (satu dari setiap jenis kelamin) dapat ditempatkan di permukaan atas atau bawah. Perhatikan bahwa penting untuk konsisten, dari satu papan ke papan lainnya, pada penempatan header pria dan wanita. Akan sangat membantu untuk menggunakan kapasitor pemasangan permukaan untuk mengarahkan papan; menggunakan ini sebagai referensi, header laki-laki harus disolder ke ujung yang paling dekat dengan kapasitor. Setelah pin disolder, kami siap menghubungkan salah satunya ke Arduino!
Langkah 3: Menghubungkan Papan Breakout WS2812 ke Arduino
Pada langkah ini kita akan membuat koneksi yang diperlukan antara Arduino, dan salah satu Breakout Board WS2812 kita. Untuk tujuan ini kita akan menggunakan papan tempat memotong roti tanpa solder, dan 3 x kabel jumper. Jika Anda menggunakan gulungan kawat, sekarang saatnya untuk memotong 3 bagian, masing-masing sekitar 4 panjangnya. Sekarang kita dapat menempatkan WS2812 Breakout Board (yang memiliki header standar) di sekat papan tempat memotong roti kita. Pastikan bahwa Arduino terputus dari sumber listrik dan USB, kita akan melanjutkan untuk menyambungkan koneksi. Di bagian bawah Papan Breakout WS2812 kita dapat menemukan nama setiap pin: VCC, DI (DO), GND. Menggunakan ini sebagai panduan kita lanjutkan untuk menghubungkan pin 5V dan GND dari Arduino ke pin VCC dan GND masing-masing pada board WS2812. Kemudian, kita menghubungkan pin 8 pada sisi Digital Arduino ke pin DI pada board WS2812, yang merupakan pin tengah dari sisi yang paling dekat dengan kapasitor. Sekarang kita siap memuat program kita ke Arduino, dan membuat WS2812 berkedip!
Langkah 4: Membuatnya Berkedip Dengan Arduino IDE
Saya akan menganggap Anda telah menginstal Arduino IDE ke komputer Anda --- banyak panduan di web menjelaskan prosesnya dengan cukup baik. Program yang perlu kita muat ke Arduino dapat diunduh di sini. Setelah kita cukup klik dua kali file primer.ino di dalam folder firmware > contoh > primer untuk memuatnya ke Arduino IDE (ditulis untuk versi 1.0.5). Paket ini mencakup pustaka yang diperlukan untuk mengkompilasi kode sehingga seharusnya tidak ada kesalahan, silakan kirim komentar jika Anda mengalami masalah kompilasi. Setelah memilih jenis papan Arduino, dan port USB menggunakan opsi menu Alat, unggah kode, dan WS2812 akan mulai berkedip bergantian antara Merah, Hijau, dan Biru. Fitur paling rapi tentang LED RGB WS2812 ini adalah mereka dapat 'dirantai bunga aster' dengan cukup mudah untuk membuat strip panjang dan susunan yang berisi banyak LED ini. Pada langkah selanjutnya kami melakukan ini dengan 3 papan yang telah kami siapkan.
Langkah 5: Membuat Strip LED RGB
Sirkuit driver LED tertanam (WS2811) memungkinkan 'daisy-chaining' satu LED ke LED berikutnya hanya menggunakan 1 jalur data (!). Dengan menghubungkan Output Data dari satu WS2812 ke Input Data yang lain, kita dapat mengontrol kecerahan dan warna seluruh array LED hingga 500 di antaranya di Arduino! Tentu saja, untuk menggerakkan banyak LED ada beberapa pertimbangan yang harus diperhatikan: - Setiap piksel menarik hingga 60mA (putih pada kecerahan penuh mengharuskan semua LED menyala, setiap gambar ~20mA). - Arduino akan memaksimalkan RAM-nya dengan menggerakkan 500 LED pada kecepatan refresh 30 Hz. - Untuk menghubungkan dua papan bersama-sama, pemisahan maksimum yang disarankan adalah 6" untuk menghindari penurunan daya, dan kerusakan data. Dengan pertimbangan ini, kami dapat menggerakkan semua LED menggunakan resolusi warna 24-bit, pada tingkat kecerahan yang konsisten, dan cukup tahan terhadap perubahan pada perubahan daya baterai (kecil). Untuk 'rantai daisy' papan yang kami siapkan untuk Instruksi ini, kami mulai dengan menghubungkan ujung betina dari satu ke ujung jantan yang lain dari dua papan dengan kanan- header sudut. Kemudian, dengan papan Arduino kami terputus dari Daya dan USB, kami menempatkan ujung jantan dari rantai dua papan pada papan tempat memotong roti tanpa solder. Kami memastikan bahwa pin sejajar dengan yang ada di Papan Breakout WS2812 yang terhubung ke papan tempat memotong roti sudah. Penjajaran seperti itu akan memiliki pin VCC dan GND dari papan tajuk lurus dan rantai pada baris papan tempat memotong roti yang sama. Kami menempatkan rantai dua papan di dekat ujung Papan Breakout ketiga yang berlawanan dengan kapasitor. A setelah semuanya terhubung, kita dapat menjalankan Arduino IDE dan menggunakan Editor Teks untuk mengubah definisi "#define NUM_LEDS 1" menjadi "#define NUM_LEDS 3". Setelah menghubungkan board kembali ke Power dan/atau USB, kita dapat mengupload program baru… dan… BAM! Ketiga LED harus berkedip begitu saja!
Langkah 6: Ke Dalam Kegelapan, Biarkan Terang
Instruksi ini dengan cepat menunjukkan kepada Anda cara menggunakan WS2812 RGB LED yang telah disolder ke papan breakout kecil. Kami menggunakan Arduino untuk mengontrol kecerahan dan warna LED. Satu hal yang sedikit mengecewakan adalah bahwa kode yang kami gunakan membuat semua LED berkedip sekaligus, dengan intensitas dan warna yang sama. Mode operasi ini tidak menunjukkan potensi penuh dari driver LED 'pintar' (WS2811) yang disematkan dalam paket ini. Jadi, mari kita coba modifikasi berikut pada kode aslinya. Seperti sebelumnya, Anda akan mengunduh dan mengekstrak file, lalu membuka firmware untuk dimuat ke Arduino (firmware > effects > effects.ino). Semua file yang diperlukan untuk demo ini disertakan sehingga tidak perlu menambahkan perpustakaan pihak ketiga; kode harus dikompilasi tanpa modifikasi apa pun --- itu sudah diatur untuk menangani 3 LED. Sekarang terserah imajinasi Anda untuk merancang proyek berikutnya di mana LED RGB yang sangat berguna dan ringkas ini dapat menyinari lampunya. Jangan ragu untuk memposting beberapa kreasi Anda sendiri menggunakan WS2812 di bagian komentar!
Direkomendasikan:
Cara Membuat RADAR Menggunakan Arduino untuk Proyek Sains - Proyek Arduino Terbaik: 5 Langkah
Cara Membuat RADAR Menggunakan Arduino untuk Proyek Sains | Proyek Arduino Terbaik: Hai teman-teman, dalam instruksi ini saya akan menunjukkan kepada Anda bagaimana membuat sistem radar luar biasa yang dibangun menggunakan arduino nano, proyek ini sangat ideal untuk proyek sains dan Anda dapat dengan mudah membuatnya dengan investasi dan peluang yang sangat sedikit jika memenangkan hadiah besar untuk
Ambilight DIY Dengan Raspberry Pi dan TANPA Arduino! Bekerja pada Sumber HDMI Apa Pun.: 17 Langkah (dengan Gambar)
Ambilight DIY Dengan Raspberry Pi dan TANPA Arduino! Bekerja pada Sumber HDMI Apa Pun.: Saya memiliki pemahaman yang agak mendasar tentang elektronik, itulah sebabnya saya sangat bangga dengan pengaturan Ambilight DIY saya dalam wadah kayu dasar dengan kemampuan untuk menyalakan dan mematikan lampu sesuai keinginan. Bagi mereka yang tidak tahu apa itu Ambilight;
Bagaimana Menambahkan Kontrol WiFi ke Proyek Apa Pun -- Panduan Pemula ESP32: 5 Langkah
Bagaimana Menambahkan Kontrol WiFi ke Proyek Apa Pun || Panduan Pemula ESP32: Dalam proyek ini saya akan menunjukkan kepada Anda betapa mudah/sulitnya menggunakan ESP32 dengan Arduino IDE untuk menambahkan kontrol WiFi ke proyek elektronik apa pun. Sepanjang jalan saya akan menunjukkan cara menggunakan ESP32 untuk membuat server WiFi sederhana dan cara membuat
Pegangan Cetak 3D untuk Objek Apa Pun: 10 Langkah (dengan Gambar)
Pegangan Cetakan 3D untuk Objek Apa Pun: Jika Anda seperti saya, Anda suka membuat sesuatu, tetapi Anda memiliki masalah saat berurusan dengan proyek yang membutuhkan ketangkasan tingkat tinggi. Terkadang, terutama jika saya telah melakukan pekerjaan skala kecil, fiddly, saya mengalami kesulitan untuk melanjutkan pekerjaan
Siapkan Raspberry Pi Anda untuk Apa Pun!: 7 Langkah (dengan Gambar)
Siapkan Raspberry Pi Anda untuk Apa Pun!: Di sini, di MakerSpace, kami menyukai Raspberry Pi! Dan apakah kami akan menggunakannya untuk pemrograman, hosting server web, atau menguji distribusi Raspbian terbaru, kami selalu mempersiapkannya dengan cara yang sama. Ini adalah titik awal yang bagus untuk bermain dengan Raspbe