Daftar Isi:

Cara Membangun Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino: 7 Langkah (dengan Gambar)
Cara Membangun Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino: 7 Langkah (dengan Gambar)

Video: Cara Membangun Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino: 7 Langkah (dengan Gambar)

Video: Cara Membangun Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino: 7 Langkah (dengan Gambar)
Video: How an RGB LED works and how to use one! | Basic Electronics 2024, Juli
Anonim
Cara Membuat Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino
Cara Membuat Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino
Cara Membuat Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino
Cara Membuat Kubus LED 8x8x8 dan Mengontrolnya Dengan Arduino

Januari 2020 edit:

Saya membiarkan ini jika ada yang ingin menggunakannya untuk menghasilkan ide, tetapi tidak ada gunanya lagi membangun kubus berdasarkan instruksi ini. IC driver LED tidak lagi dibuat, dan kedua sketsa ditulis dalam versi lama Arduino dan Processing dan tidak lagi berjalan. Saya tidak tahu apa yang perlu diubah untuk membuatnya bekerja. Juga, metode konstruksi saya menghasilkan kekacauan miring yang miring. Saran saya adalah mengikuti instruksi pada instruksi lain atau membeli kit. Kubus ini berharga sekitar $ 50 pada tahun 2011, Anda dapat membeli kit dari ebay dengan harga sekitar $ 20 sekarang.

pengenalan asli:

Ada banyak kubus LED di Instructables, jadi mengapa melakukan yang lain? Sebagian besar untuk kubus kecil yang terdiri dari 27 atau 64 LED, jarang yang lebih besar karena terbatas pada jumlah output yang tersedia pada mikrokontroler. Kubus ini akan menjadi 512 LED, dan hanya membutuhkan 11 kabel keluaran dari Arduino. Bagaimana ini mungkin? Dengan menggunakan driver LED Allegro Microsystems A6276EA.

Saya akan menunjukkan kepada Anda bagaimana saya membuat kubus itu sendiri, papan pengontrol, dan akhirnya kode untuk membuatnya bersinar.

Langkah 1: Bahan

Bahan
Bahan

Semua bagian yang Anda perlukan untuk membuat kubus: 1 Arduino/Freeduino dengan chip Atmega168 atau lebih tinggi 512 LED, ukuran dan warna terserah Anda, saya menggunakan chip driver LED 4 A6276EA 3mm merah dari transistor Allegro 8 NPN untuk mengontrol aliran tegangan, saya menggunakan transistor Darlington BDX53B 4 resistor 1000 ohm, 1/4 watt atau lebih tinggi resistor 12.560 ohm, 1/4 watt atau lebih tinggi 1 330uF kapasitor elektrolitik 4 soket IC 24 pin 9 soket IC 16 pin 4 "x4" (atau lebih besar) sepotong perfboard untuk menampung semua bagian, Kipas komputer lama Kabel pengontrol floppy tua Catu daya komputer lama Banyak kabel penghubung, solder, besi solder, fluks, apa pun untuk membuat hidup Anda lebih mudah saat membuat ini. 7 "x7" (atau lebih besar) potongan kayu yang digunakan untuk membuat jig solder LED Casing yang bagus untuk menampilkan kubus Anda yang sudah jadi Pilihan Arduino/Freeduino saya adalah Bare Bones Board (BBB) dari www.moderndevice.com. LED dibeli dari eBay dan berharga $23 untuk 1000 LED yang dikirim dari China. Elektronik yang tersisa dibeli dari Newark Electronics (www.newark.com) dan seharusnya hanya berharga sekitar $25. Jika Anda harus membeli semuanya, proyek ini seharusnya hanya menelan biaya sekitar $100. Saya memiliki banyak peralatan komputer lama sehingga bagian-bagian itu terlepas dari tumpukan sampah.

Langkah 2: Merakit Layers

Merakit Lapisan
Merakit Lapisan
Merakit Lapisan
Merakit Lapisan
Merakit Lapisan
Merakit Lapisan
Merakit Lapisan
Merakit Lapisan

Cara membuat 1 lapis (64 LED) dari 512 LED kubus ini: LED yang saya beli berdiameter 3mm. Saya memutuskan untuk menggunakan LED kecil untuk mengurangi biaya dan membuat ukuran akhir kubus cukup kecil untuk diletakkan di meja atau rak saya tanpa sepenuhnya mengambil alih meja atau rak. Saya menggambar kotak 8x8 dengan jarak sekitar 0,6 inci di antara garis. Ini memberi saya ukuran kubus sekitar 4,25 inci per sisi. Bor lubang 3mm di mana garis bertemu untuk membuat jig yang akan menahan LED saat Anda menyolder setiap lapisan. A6276EA adalah perangkat wastafel saat ini. Ini berarti menyediakan jalur ke ground daripada jalur ke sumber tegangan. Anda perlu membangun kubus dalam konfigurasi anoda umum. Sebagian besar kubus dibuat sebagai katoda biasa. Sisi panjang LED umumnya adalah anoda, periksa milik Anda untuk memastikan. Hal pertama yang saya lakukan adalah menguji setiap LED. Ya, ini adalah proses yang panjang dan membosankan dan Anda dapat melewatkannya jika Anda mau. Saya lebih suka menghabiskan waktu untuk menguji LED daripada menemukan titik mati di kubus saya setelah dirakit. Saya menemukan 1 LED mati dari 1000. Lumayan. Potong 11 buah kawat pengait yang solid dan tidak berinsulasi menjadi 5 inci. Tempatkan 1 LED ke setiap ujung baris di jig Anda dan kemudian solder kabel ke setiap anoda. Sekarang tempatkan 6 LED yang tersisa ke dalam baris dan solder anoda tersebut ke kawat. Ini bisa secara vertikal atau horizontal, tidak masalah selama Anda melakukan semua lapisan dengan cara yang sama. Saat Anda menyelesaikan setiap baris, potong kelebihan timah dari anoda. Saya meninggalkan sekitar 1/8 . Ulangi sampai Anda menyelesaikan semua 8 baris. Sekarang solder 3 buah kawat pengait melintasi baris yang baru saja Anda buat untuk menghubungkan semuanya menjadi satu bagian. Saya kemudian menguji lapisan dengan memasang 5 volt untuk menghubungkan kisi kawat melalui resistor dan menyentuh kabel ground ke setiap katoda. Ganti semua LED yang tidak menyala. Lepaskan lapisan dengan hati-hati dari jig dan sisihkan. Jika Anda menekuk kabel, jangan khawatir, cukup luruskan sebaik mungkin. Sangat mudah untuk ditekuk. Seperti yang dapat Anda lihat dari gambar saya, saya memiliki banyak kabel yang tertekuk. Selamat, Anda telah selesai 1/8. Buat 7 lapisan lagi. OPSIONAL: Untuk membuat penyolderan lapisan bersama-sama (Langkah 3) lebih mudah, sementara setiap lapisan berikutnya masih dalam jig tekuk seperempat inci atas katoda ke depan 45 hingga 90 derajat. Ini akan memungkinkan timah menjangkau sekitar LED yang terhubung dan akan membuat penyolderan lebih banyak lebih mudah Jangan lakukan ini pada lapisan pertama Anda, kami akan mendeklarasikan bahwa satu adalah lapisan bawah dan lead harus s lurus.

Langkah 3: Merakit Kubus

Merakit Kubus
Merakit Kubus
Merakit Kubus
Merakit Kubus

Cara menyolder semua lapisan menjadi satu kubus: Bagian yang sulit hampir selesai. Sekarang, letakkan satu lapisan kembali dengan hati-hati ke dalam jig, tetapi jangan gunakan terlalu banyak tekanan, kami ingin dapat menghapusnya tanpa menekuknya. Lapisan pertama ini adalah permukaan atas kubus. Tempatkan lapisan lain di atas yang pertama, sejajarkan ujungnya dan mulailah menyolder. Saya merasa paling mudah untuk melakukan sudut terlebih dahulu, lalu tepi luar, lalu di dalam baris. Terus tambahkan lapisan sampai Anda selesai. Jika Anda terlebih dahulu menekuk lead, pastikan untuk menyimpan lapisan dengan lead lurus untuk yang terakhir. Ini adalah bagian bawah. Saya memiliki terlalu banyak ruang di antara setiap lapisan sehingga saya tidak cukup mendapatkan bentuk kubus. Bukan masalah besar, saya bisa hidup dengan itu.

Langkah 4: Membangun Papan Pengontrol

Membangun Papan Pengontrol
Membangun Papan Pengontrol
Membangun Papan Pengontrol
Membangun Papan Pengontrol
Membangun Papan Pengontrol
Membangun Papan Pengontrol

Cara membuat papan pengontrol dan memasangnya ke Arduino Anda: Ikuti skema dan bangun papan sesuka Anda. Saya menempatkan chip pengontrol di tengah papan dan menggunakan sisi kiri untuk menahan transistor yang mengontrol arus ke setiap lapisan kubus, dan menggunakan sisi kanan untuk menahan konektor yang mengalir dari chip pengontrol ke katoda. kolom LED. Saya menemukan kipas komputer tua 40mm dengan konektor molex perempuan untuk menyambungkannya ke catu daya komputer. Ini sempurna. Sejumlah kecil aliran udara di seluruh chip berguna dan sekarang saya memiliki cara mudah untuk memberikan 5 volt ke chip pengontrol dan Arduino itu sendiri. Pada skema, RC adalah resistor pembatas arus untuk semua LED yang terhubung ke setiap A6276EA. Saya menggunakan 1000 ohm karena memberikan 5 miliamp ke LED, cukup untuk menyalakannya. Saya menggunakan Kecerahan Tinggi, bukan LED Super Brite, jadi pengurasan arus lebih rendah. Jika semua 8 LED dalam satu kolom menyala sekaligus, itu hanya 40 miliampere. Setiap output dari A6276EA dapat menangani 90 milliamps jadi saya berada dalam jangkauan. RL adalah resistor yang terhubung ke logika atau sinyal lead. Nilai sebenarnya tidak terlalu penting asalkan ada dan tidak terlalu besar. Saya menggunakan 560 ohm karena saya memiliki banyak dari mereka yang tersedia. Saya menggunakan transistor daya yang mampu menangani hingga 6 amp untuk mengontrol arus yang mengalir ke setiap lapisan kubus. Ini berlebihan untuk proyek ini, karena setiap lapisan kubus hanya akan menarik 320 miliampere dengan semua LED menyala. Saya ingin ruang untuk tumbuh dan mungkin menggunakan papan pengontrol untuk sesuatu yang lebih besar nanti. Gunakan transistor ukuran apa pun yang sesuai dengan kebutuhan Anda. Kapasitor 330 uF melintasi sumber tegangan ada untuk membantu memuluskan fluktuasi tegangan kecil. Karena saya menggunakan catu daya komputer lama, ini tidak perlu, tetapi saya meninggalkannya untuk berjaga-jaga jika seseorang ingin menggunakan adaptor dinding 5 volt untuk memberi daya pada kubus mereka. Setiap chip pengontrol A6276EA memiliki 16 output. Saya tidak memiliki konektor lain yang sesuai, jadi saya menyolder kabel ke beberapa soket IC 16 pin dan akan menggunakannya untuk menghubungkan papan pengontrol ke kubus. Saya juga memotong soket IC menjadi dua dan menggunakannya untuk menghubungkan 8 kabel yang menghubungkan transistor ke lapisan kubus. Saya memotong sekitar 5 inci dari ujung kabel floppy lama untuk digunakan sebagai konektor untuk Arduino. Kabel floppy adalah 2 baris 20 pin, Bones Board telanjang memiliki 18 pin. Ini adalah cara yang sangat murah (gratis) untuk menghubungkan Arduino ke papan. Saya menarik kabel pita menjadi kelompok 2 kabel, melepaskan ujungnya dan menyoldernya bersama-sama. Ini memungkinkan Anda untuk mencolokkan Arduino ke salah satu baris konektor. Ikuti skema dan solder konektor ke tempatnya. Jangan lupa untuk menyolder kabel 5 volt dan ground untuk konektor untuk memberikan daya ke Arduino. Saya bermaksud menggunakan papan pengontrol ini untuk proyek lain sehingga desain modular bekerja dengan baik untuk saya. Jika Anda ingin menyambungkan koneksi, tidak apa-apa.

Langkah 5: Bangun Kasus Tampilan

Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan
Bangun Kotak Pajangan

Jadikan produk akhir Anda terlihat bagus: Saya menemukan peti kayu ini di Hobby Lobby seharga $ 4 dan berpikir itu akan sempurna karena memiliki ruang di dalamnya untuk menampung semua kawat plus terlihat bagus. Saya menodai yang satu ini berwarna merah, noda yang sama yang saya gunakan di meja komputer saya sehingga cocok. Gambarlah kisi-kisi di atasnya dengan ukuran yang sama dengan kisi-kisi yang digunakan untuk jig solder (0,6 inci di antara garis). Bor lubang untuk memungkinkan kabel melewati bagian atas, dan bor lubang lain di belakang kisi untuk kabel lapisan/bidang (dari transistor pada Langkah 4). Saya belajar dengan susah payah bahwa mencoba mengatur 64 lead untuk melewati lubang-lubang kecil sangat sulit. Saya akhirnya memutuskan untuk mengebor ulang semua lubang sedikit lebih besar agar prosesnya berjalan lebih cepat. Saya akhirnya menggunakan sekitar.2 mata bor. Sekarang kubus berada di atas layar, tekuk ujung ujungnya sehingga kubus akan tetap di tempatnya saat Anda memasang kabel. Pastikan Anda memasang semua kabel dalam urutan yang benar. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64Dan sambungkan kabel antara lapisan (berlabel 'pesawat' pada skema) dan transistor. Transistor pada pin 6 Arduino adalah lapisan atas kubus. Jika Anda mendapatkan kabel yang salah, itu agak dapat diperbaiki dalam kode, tetapi mungkin memerlukan banyak pekerjaan, jadi cobalah untuk membuatnya dalam urutan yang benar. Oke, semuanya sudah dibuat dan siap digunakan, mari dapatkan beberapa kode dan mencobanya.

Langkah 6: Kode

Kode
Kode

Kode untuk kubus ini dilakukan secara berbeda dari kebanyakan, saya akan menjelaskan cara beradaptasi. Kebanyakan kode kubus menggunakan penulisan langsung ke kolom. Kode mengatakan bahwa Kolom X perlu dinyalakan jadi beri sedikit jus dan selesai. Itu tidak berfungsi saat menggunakan chip pengontrol. Chip pengontrol menggunakan 4 kabel untuk berbicara dengan Arduino: SPI-in, Clock, Latch, dan Enable. Saya menghubungkan pin Aktifkan (pin 21) melalui resistor (RL) sehingga output selalu diaktifkan. Saya tidak pernah menggunakan Aktifkan jadi saya mengeluarkannya dari kode. SPI-in adalah data masuk dari Arduino, Jam adalah sinyal waktu antara keduanya saat mereka berbicara, dan Latch memberi tahu pengontrol bahwa sudah waktunya untuk menerima data baru. Setiap output untuk setiap chip dikendalikan oleh angka biner 16 bit. Sebagai contoh; mengirimkan 1010101010101010 ke pengontrol akan menyebabkan setiap LED lain pada pengontrol menyala. Kode Anda perlu dijalankan melalui semua yang diperlukan untuk tampilan dan membangun nomor biner itu, lalu mengirimkannya ke chip. Ini lebih mudah daripada kedengarannya. Secara teknis ini adalah sekelompok penambahan bitwise, tapi saya buruk dalam matematika bitwise jadi saya melakukan semuanya dalam desimal. Desimal untuk 16 bit pertama adalah sebagai berikut: 1 << 0 == 1 1 << 1 == 2 1 << 2 == 4 1 << 3 == 8 1 << 4 == 16 1 << 5 == 32 1 << 6 == 64 1 << 7 == 128 1 << 8 == 256 1 << 9 == 512 1 << 10 == 1024 1 << 11 == 2048 1 << 12 == 4096 1 << 13 == 8192 1 << 14 == 16384 1 << 15 == 32768 Artinya jika Anda ingin nyalakan output 2 dan 10, Anda menambahkan desimal (2 dan 512) bersama-sama untuk mendapatkan 514. Kirim 514 ke pengontrol dan output 2 dan 10 akan menyala. Tapi kami memiliki lebih dari 16 LED sehingga menjadi sedikit lebih sulit. Kita perlu membangun informasi tampilan untuk 4 chip. Yang semudah membangunnya untuk 1, lakukan saja 3 kali lagi. Saya menggunakan array variabel global untuk menyimpan kode kontrol. Lebih mudah seperti itu. Setelah Anda memiliki semua 4 kode tampilan yang siap untuk dikirim, jatuhkan kaitnya (atur ke RENDAH) dan mulailah mengirim kode. Anda harus mengirim yang terakhir terlebih dahulu. Kirim kode untuk chip 4, lalu 3, lalu 2, lalu 1, lalu atur Latch ke HIGH lagi. Karena pin Enable selalu terhubung ke ground, tampilan akan segera berubah. Sebagian besar kode kubus yang pernah saya lihat di Instructables, dan web pada umumnya, terdiri dari blok kode raksasa yang diatur untuk melakukan animasi yang telah ditentukan sebelumnya. Itu berfungsi dengan baik untuk kubus yang lebih kecil tetapi perlu menyimpan, membaca, dan mengirim 512 bit biner setiap kali Anda ingin mengubah tampilan membutuhkan banyak memori. Arduino tidak dapat menangani lebih dari beberapa frame. Jadi saya menulis beberapa fungsi sederhana untuk menunjukkan kubus beraksi yang mengandalkan perhitungan daripada animasi yang telah ditentukan sebelumnya. Saya menyertakan animasi kecil untuk menunjukkan cara melakukannya, tetapi saya akan menyerahkannya kepada Anda untuk membuat display Anda sendiri.cube8x8x8.pde adalah kode Arduino. Saya berencana untuk terus menambahkan fungsi ke kode dan akan memperbarui program secara berkala.matrix8x8.pde adalah program dalam Pemrosesan untuk membuat tampilan Anda sendiri. Angka pertama yang diberikan masuk ke pattern1, kedua ke pattern2, dll. Lembar data untuk A6276EA tersedia di:https://www.allegromicro.com/en/Products/Part_Numbers/6276/6276.pdf

Langkah 7: Tampilkan Hasil Karya Anda

Tampilkan Hasil Karya Anda
Tampilkan Hasil Karya Anda

Anda selesai, sekarang saatnya untuk menikmati kubus Anda. Seperti yang Anda lihat, kubus saya keluar sedikit bengkok. Saya tidak terlalu tertarik untuk membangun yang lain jadi saya akan hidup dengan itu menjadi bengkok. Saya memiliki beberapa titik mati yang perlu saya perhatikan. Mungkin koneksi yang buruk, atau saya mungkin memerlukan chip pengontrol baru. Saya harap Instruksi ini menginspirasi Anda untuk membangun kubus Anda sendiri, atau proyek LED lainnya menggunakan A6276AE. Posting tautan di komentar jika Anda membuatnya. Saya sudah mencoba memutuskan ke mana harus pergi dari sini. Papan pengontrol juga akan mengontrol kubus RGB 4x4x4, jadi itu kemungkinan. Saya pikir akan rapi untuk membuat bola dan cara saya menulis kode, itu tidak akan terlalu sulit untuk dilakukan.

Direkomendasikan: