Iklan

Beberapa bulan yang lalu, $3000 guntur dan kilat lampu suasana menjadi viral di komunitas pembuat. Itu adalah cahaya yang sangat indah, tetapi label harganya tidak terjangkau oleh siapa pun yang kewarasannya masih utuh. Apa yang akan kita buat hari ini tidak persis sama - kita membuat sesuatu yang lebih praktis, alih-alih karya seni, tetapi itu akan menjadi jauh lebih keren dan lebih dapat disesuaikan.

Saya telah memilih untuk menghilangkan pengeras suara dengan asumsi bahwa Anda mungkin sudah memiliki sepasang pengeras suara yang bagus di kamar Anda yang lebih suka Anda gunakan, dan terus terang menempatkan pengeras suara di dalam lampu agak aneh. Sebagai gantinya, saya akan menambahkan mikrofon yang memungkinkan petir bereaksi secara otomatis terhadap suara bising - baik dari badai petir yang sebenarnya, atau soundtrack yang dimainkan dari PC atau stereo Anda.

Kami juga akan menggunakan untaian LED Neopixel RGB penuh (WS2812B), sehingga kami dapat mereproduksi warna selain putih dan memiliki kendali atas setiap piksel.

instagram viewer

Peringatan: catu daya yang saya gunakan dalam proyek ini memiliki terminal sekrup yang terhubung ke kabel AC langsung. Jika Anda tidak merasa yakin memasang kabel pada colokan, pastikan Anda membeli catu daya yang sepenuhnya tertutup. Paling tidak, Anda harus menyertakan PSU dalam kotak proyek yang aman.

Langkah 0: Pendahuluan

Ini video demo dari proyek yang sudah selesai. Saya telah mengimplementasikan beberapa mode yang berbeda sejauh ini, dari petir standar ke awan asam trippy dan lampu suasana warna memudar, yang dapat dipilih dari remote control.

Kode lengkap dan pustaka yang diperlukan tersedia untuk diunduh repositori Github ini.

Langkah 1: Anda Akan Membutuhkan

Cara Membangun Lampu Awan dengan Bahan lampu awan cahaya Reaktif Suara
  • Untai WS2812B, biasanya dihargai sekitar $ 50 untuk 5 meter. Jangan khawatir jika Anda memiliki jenis untai Neopixel lain, hampir pasti didukung oleh FastLED antarmuka, tetapi kabel Anda mungkin berbeda (Anda mungkin memerlukan garis sinkronisasi selain sinyal, untuk contoh).
  • 5V, 10A + catu daya - Saya membeli beberapa unit 15A seharga $ 11 masing-masing. Mereka mengambil input AC 120-240V, dan menghasilkan output 5V yang besar dan lebih dari cukup untuk memberi daya pada semua piksel kami pada kecerahan penuh, dan Arduino.
  • Kabel listrik, steker, dan sakelar inline
  • Penutup proyek
  • Dua Arduino. Klon Funduino $ 10 baik-baik saja. Yang kedua diperlukan untuk remote control, sedangkan yang pertama mengontrol logika utama dan LED.
  • Dua 2.2k (atau sekitar) resistor Ohm - nilai pastinya tidak terlalu penting, sekitar 1,5k hingga 47k seharusnya bekerja.
  • Papan tempat memotong roti
  • Penerima IR TSOP4838
  • Remote IR - Saya membeli secara massal masing-masing sekitar $ 2, tetapi remote mana pun harus bekerja dengan modifikasi kode.
  • Modul mikrofon besar
  • Potong kayu MDF untuk memotong pangkalan Anda, dan gergaji ukir.
  • Sisipan bahan kemasan / kotak polystyrene.
  • Isi bantal kapas polypropylene. Saya menarik lebih dari cukup dari beberapa bantal tua yang mengerikan. Jika itu bukan pilihan, Anda harus dapat membeli yang baru sekitar $ 10, atau menggunakan wol kapas yang bahkan lebih murah. Saya mencoba keduanya - wol kapas perlu lebih banyak pekerjaan karena harus menggodanya dan tidak mengembang, tetapi dalam keadaan darurat, itu akan berhasil.
  • Rantai dan kait untuk menggantung awan - harus menahan lebih dari 5kg.
  • Pistol lem dengan pengaturan suhu rendah
  • Semprotkan lem - lebih mudah menempelkan isian ke cloud Anda dengan ini, tetapi lem juga bisa digunakan.

Total biaya sekitar $ 100 belum termasuk alat, tetapi sebagian besar dari ini saya berasal dari sekitar rumah. Semua komponen elektronik umumnya tersedia; mikrofon dapat ditemukan dalam kit sensor atau dibeli secara terpisah.

Langkah 2: Potong Basis

Cara Membangun Lampu Cloud dengan Suara Lampu cloud 1 petir yang reaktif memotong dasar

Gunting pijakan kasar dari potongan kayu MDF dengan gergaji ukir - bentuk pastinya terserah Anda, tetapi karena alasan tertentu awan berbentuk kacang merah di benak saya. Kami akan memasang beberapa kait ke dalam ini untuk digantung, tetapi jika tidak, itu hanya memberikan dasar yang kokoh untuk membangun. Area pusat akan dicadangkan untuk elektronik, PSU dan untuk menyerahkan rantai dari, jadi pastikan Anda memiliki cukup ruang untuk menempatkan setidaknya kandang proyek Anda dengan beberapa kait di sekitarnya.

Langkah 3: Lapisan pada Polystyrene

Cara Membangun Lampu Awan dengan Lampu awan 2 Lampu Suara Reaktif pada polystyrene

Ini adalah langkah paling sulit dan kreatif, tetapi kami benar-benar hanya menciptakan sesuatu yang solid dan agak-agak berbentuk awan untuk merekatkan strip LED. Tempelkan keping besar polystyrene ke dasar (dan di bawahnya), menggunakan setelan panas rendah pada lem Anda. Jika Anda tidak memiliki pengaturan rendah, matikan senapan panas dan biarkan agak dingin sebelum mencoba merekatkan. Jika suhunya terlalu tinggi, Anda cukup melelehkan bahan pembungkusnya.

Pastikan setiap bagian kokoh sebelum menempel yang berikutnya, dan yang terbaik adalah bertahan lebih dari yang tidak cukup.

Sekali lagi, ingatlah untuk meninggalkan rongga yang cukup besar di dalam cloud agar sesuai dengan elektronik, rantai dan pengait.

Langkah 4: Ukir Bentuk Cloud 3D

Gambar berjudul Build a Cloud Lamp with Sound Reactive Lightning light cloud 3 pahat awan

Gunakan pisau ukiran untuk merapikan awan Anda dengan membulatkan sudut dan memotong bahan yang tidak perlu, sampai Anda mencapai bentuk awan 3D yang kasar. Tidak masalah seberapa kasarnya hal ini karena kami akan membahas semuanya dalam hal isian nanti - Anda dapat dengan mudah menyembunyikan kesalahan.

Langkah 5: Perbaiki Hooks, Tidy Up

Cara Membangun Lampu Awan dengan Lampu awan Suara Reaktif Suara 4 semprotan putih

Terakhir, pasang tiga atau empat kait ke pangkalan MDF, dari dalam setiap sudut rongga awan. Anda perlu mengebor lubang uji coba kecil karena MDF sulit untuk diluruskan.

Saya juga memberi semuanya lapisan cat semprot putih sederhana untuk memastikan dasar warna yang seragam, tetapi saya tidak yakin itu benar-benar diperlukan.

Langkah 6: Lem LED Strip

Cara Membangun Lampu Awan dengan Suara, lampu awan 5 kilat pada strip dipimpin

Sebelum Anda mulai menempelkan lem pada LED, mulai dari strip baru atau hitung berapa banyak LED yang Anda miliki secara total - Anda harus menentukan berapa banyak yang akan Anda gunakan nanti dalam langkah pemrograman. Potong lubang kecil di sisi cloud Anda dan colok melalui kabel yang membentuk awal strip LED Anda ke dalam rongga cloud. Berhati-hatilah karena Anda memulai dari ujung yang benar - strip LED peka terhadap arah, jadi pastikan panah sinyal menjauhi rongga.

Bekerja lambat, tempel piksel LED ke dasar polystyrene dalam pola melingkar, sebelum menarik strip ke bawah untuk menutupi bagian bawah. Sekali lagi - Anda tidak perlu menjadi sempurna di sini, karena setelah kami menyebar semuanya dan menahannya dengan isian, itu semua tetap terlihat sangat memukau.

Saya menggunakan total 85 LED, atau hanya lebih dari 2,5m, setelah mengelilingi tubuh utama dua kali dan menggunakan string tunggal LED di bagian bawah.

Langkah 7: Wiring Diagram

Cara Membangun Lampu Awan dengan Diagram pengkabelan kabel lampu awan Suara Reaktif

Kabel itu rumit, tetapi mudah dipecah menjadi beberapa bagian.

Pertama, dapatkan catu daya dengan kabel dan diamankan, sebaiknya dalam kasus proyek terpisah. Saya tidak akan menguliahi Anda tentang keamanan kabel AC hidup, jadi saya akan menganggap Anda dapat menangani bagian ini, dan Anda memiliki jalur 5V dan GND darinya.

PENTING: saat memprogram dan menguji Arduino, 5V dari catu daya Anda harus tetap terisolasi dari Arduino (yang Namun, semua GND terhubung - ini hanya akan memberi daya pada strip LED, sedangkan Arduino menggunakan 5V yang disediakan melalui USB. Ketika Anda selesai pemrograman, USB harus diputuskan, dan tidak akan lagi memberikan 5V ke Arduino - pada titik ini, Anda harus menghubungkan 5V dari suplai Anda ke rel 5V di sisi kiri papan tempat memotong roti.

Mulailah dengan menghubungkan pin tanah dan 5V dari masing-masing Arduino ke rel sisi kiri papan tempat memotong roti. Mereka akan berbagi sumber daya yang sama, apakah itu PSU eksternal yang kita miliki atau USB dicolokkan ke salah satunya.

Selanjutnya, lengkapi bagian kabel I2C - inilah yang memungkinkan dua Arduino kami untuk berkomunikasi. Ambil pin A4 dari kedua Arduino ke satu baris di papan tempat memotong roti, lalu sambungkan resistor 2.2k dari baris itu ke rel 5V. Ulangi untuk A5, menghubungkannya pada baris terpisah, dengan resistor 2.2k lagi ke 5V.

Hubungkan penerima IR berikutnya - periksa konfigurasi pin jika Anda memiliki model lain, tetapi pada dasarnya pin sinyal harus menuju ke D11 pada satu Arduino. Unggah thundercloud_ir_receiver.ino buat sketsa Arduino ini (semua kode di sini), lalu cabut USB karena kita tidak lagi membutuhkannya.

Di Arduino lain, hubungkan Data Dalam pin sinyal dari awal strip LED Anda ke D6. GND dari LED Anda harus sama dengan semua Arduino, tetapi pada saat ini 5V akan datang langsung dari PSU.

Juga di Arduino ini, colokkan modul mikrofon ke A0. Unggah yang lain thundercloud.ino buat sketsa, dan tetap gunakan USB untuk saat ini saat Anda debug. Mulailah dengan mengubah NUM_LEDS variabel tepat.

Langkah 8: Tempel pada Isian

Cara Membangun Lampu Awan dengan Lampu awan 7 Lampu Suara Reaktif yang menempel pada isian

Sebagai langkah terakhir, rekatkan isian Anda. Tidak ada teknik khusus di sini - cukup semprotkan awan dengan lapisan lem dan ambil beberapa isian. Akan lebih mudah untuk bekerja dengan isian jika Anda sudah menggodanya untuk menambah luas permukaan.

Jika Anda telah menggunakan remote yang sama seperti yang saya lakukan, tombol STROBE membuatnya menjadi mode cloud reaktif suara; FLASH adalah mode warna trippy, dan FADE adalah lampu suasana warna lambat yang memudar.

Langkah 9: Penjelasan Kode

Cara Membangun Lampu Cloud dengan demo cloud cloud Sound Reactive Sound

Mengapa dua Arduino? Baik pemrograman penerima inframerah dan pustaka driver pixel WS2818B sangat sensitif terhadap pengaturan waktu - jika pengaturan waktu tertunda, sinyal IR rusak. Dengan memberikan masing-masing rangkaian itu pengontrol mikro sendiri dan membiarkan mereka berbicara melalui protokol I2C, kami dapat memastikan waktunya tepat pada masing-masing sirkuit. Anda juga dapat menemukan modul IR terpisah dengan pengontrol mikro sendiri, tetapi penelitian saya menemukan bahwa harganya sebenarnya lebih mahal daripada klon Arduino sederhana dan LED IR. Thundercloud_ir_receiever seharusnya tidak memerlukan penjelasan, meskipun Anda mungkin ingin membaca tentang dasar-dasar I2C terlebih dahulu.

Pada pengontrol thundercloud utama, kami mendefinisikan mode operasi yang berbeda, seperti ON (efek petir tidak bersuara diaktifkan), CLOUD (petir hanya diaktifkan suara), ACID (awan menunjukkan warna trippy), atau warna tunggal sederhana mode. Untuk menetapkan mode baru, tambahkan ke enum pertama, kemudian buka konsol dan temukan tombol remote control untuk memetakannya - setiap pers jarak jauh harus mencetak satu baris debug. Dalam acceptEvent () metode, kami memetakan penekanan tombol tersebut ke mode, jadi tambahkan pernyataan beralih tambahan di sana. Akhirnya, di utama loop () Metode kami merutekan pemilihan mode tersebut ke berbagai fungsi tampilan.

Kode penghalusan mikrofon pada awalnya dari Adafruit - Saya menyederhanakannya untuk kebutuhan kita, dan menambahkan pemicu ketika suara lebih keras dari rata-rata terdengar.

Langkah 10: Mode Petir

Cara Membangun Lampu Awan dengan demo Lampu awan lampu Suara Reaktif

Layar petir menggabungkan tiga "jenis" petir yang berbeda untuk mencapai sesuatu yang cukup realistis, atau setidaknya menyenangkan mata. Tipe pertama adalah retak(), di mana setiap LED dihidupkan sebentar antara 10-100 ms. Tipe kedua adalah bergulir () - di mana setiap LED memiliki peluang 10% untuk mengaktifkan, dan seluruh loop diulang 2-10 kali, dengan penundaan 5-100ms antara setiap siklus. Tipe ketiga adalah thunderburst (), yang mengambil dua bagian strip yang berbeda, masing-masing antara 10-20 LED, berkedip bagian ini secara singkat dari 3-6 kali. Periksa metode ini secara terperinci untuk melihat bagaimana masing-masing LED diaktifkan - roda warna HSV digunakan di seluruh (jadi putih adalah H = 0, S = 0, V = 255). Saya mendorong Anda untuk mengubah atau menulis tampilan kilat baru, lalu membaginya dalam komentar jika Anda membuatnya.

Setiap kali petir dipicu atau loop dijalankan, cloud secara acak memilih di antara ketiga jenis petir. Akhirnya, a atur ulang () metode mematikan semua lampu, jika tidak mereka akan "mengingat" keadaan mereka sebelumnya.

Pertanyaan atau masalah - silakan menghubungi komentar dan saya akan melakukan yang terbaik untuk membantu. Jika Anda memiliki akun Github, jangan ragu untuk mengirim bug atau masalah ke pelacak masalah sebagai gantinya. Jika Anda membuat modifikasi atau menulis beberapa fungsi pencahayaan baru, silakan bagikan tautan ke kode Anda Inti atau Pastebin.

James memiliki gelar BSc dalam Artificial Intelligence, dan bersertifikat CompTIA A + dan Network +. Dia adalah pengembang utama MakeUseOf, dan menghabiskan waktu luangnya bermain VR paintball dan boardgames. Dia telah membangun PC sejak dia masih kecil.