Isi kandungan:

Pengawal Pencahayaan LED Dinamik untuk Seni: 16 Langkah (dengan Gambar)
Pengawal Pencahayaan LED Dinamik untuk Seni: 16 Langkah (dengan Gambar)

Video: Pengawal Pencahayaan LED Dinamik untuk Seni: 16 Langkah (dengan Gambar)

Video: Pengawal Pencahayaan LED Dinamik untuk Seni: 16 Langkah (dengan Gambar)
Video: cara membuat lampu plafon LED gaya modern bulat | lampu hias plafon dari paralon 2024, Julai
Anonim
Image
Image

Pengenalan:

Pencahayaan adalah aspek penting dalam seni visual. Dan jika pencahayaan dapat berubah seiring dengan waktu, ia dapat menjadi dimensi seni yang ketara. Projek ini dimulakan dengan menghadiri pertunjukan cahaya dan mengalami bagaimana pencahayaan dapat mengubah warna objek sepenuhnya. Kami mula meneroka ini dalam seni kain pencahayaan. Sejauh ini kami telah membina pencahayaan dinamik untuk 8 keping termasuk lukisan dan gambar. Kesan pencahayaan meliputi: mensimulasikan waktu subuh dan matahari terbenam, cahaya bawah air melalui permukaan yang bergelombang, kilat di awan, dan secara dramatis mengubah warna dan suasana karya seni yang dirasakan. Video kesan ini disertakan dalam langkah pengaturcaraan di bawah.

Instruksional ini membina pengawal yang menetapkan kecerahan dan warna rentetan LED yang boleh diatasi secara individu dari masa ke masa. Ini juga termasuk litar input pilihan untuk penyesuaian secara manual (menetapkan kecerahan dan warna) segmen pencahayaan. Anda juga akan mengetahui banyak masalah dan penambahbaikan yang kami dapati selama ini.

Kami juga menulis instruksional terkait untuk membina kotak bayangan dan bingkai. Lihat di:

Buat masa ini kami akan memberi tumpuan kepada elektronik dan pengaturcaraan.

Langkah 1: Bahan:

  • Rentetan daripada WS2812 LED
  • Arduino Pro Mini 328 - 5V / 16 MHz
  • Antaramuka USB Rakan FTDI
  • Kabel USB A ke MiniB untuk FTDI
  • Kapasitor 4700 μf
  • Bekalan Kuasa 5v dengan penyambung 5.5 x 2.1
  • Power Socket 5.5 x 2.1
  • Blok Terminal
  • Papan litar prototaip
  • Butang
  • Potensiometer
  • LED Petunjuk
  • Penentang
  • Kabel reben
  • Lelaki tajuk
  • Header wanita

Langkah 2: Sumber:

  • Arduino; Persekitaran Pembangunan Interaktif (IDE)
  • Perpustakaan Adafruit NeoPixel
  • Tutorial NeoPixel
  • Program Contoh Strandtest
  • Perpustakaan FastLED
  • Pautan dan Dokumentasi FastLED
  • Forum FastLED
  • Lakaran Pencahayaan Kami

Langkah 3: Gambaran Keseluruhan Pengawal:

Gambaran Keseluruhan Pengawal
Gambaran Keseluruhan Pengawal
Gambaran Keseluruhan Pengawal
Gambaran Keseluruhan Pengawal

Skema kelihatan cukup sederhana dan memang begitu. Kami membina alat kawalan kami untuk disematkan dalam bingkai gambar. Dimensi litar yang digambarkan adalah 2.25 "x 1.3" x 0.5 ". Penala pilihan dibina di papan litar berasingan dengan penyambung kabel pita. Gambar-gambar ini menunjukkan projek siap kami.

Kami mahu memasukkan pengawal kami ke dalam bingkai gambar sehingga kami memilih Arduino pro mini 5v untuk ukuran, kos, dan keluaran 5v yang kecil. Saiz bekalan kuasa 5v yang anda perlukan bergantung pada berapa banyak LED dan kecerahan maksimumnya dalam projek anda. Semua projek kami berjalan kurang dari 3 amp dan ada yang kurang dari 1 amp. Terdapat beberapa jenis LED warna yang dapat diatasi. Kami bermula dengan WS2812 yang dijual oleh Adafruit sebagai salah satu produk "NeoPixel" mereka. Ini berfungsi untuk kami dan kami belum meneroka LED lain. Sebilangan besar projek kami menggunakan jalur LED 60 per meter. Setakat ini, projek kami telah merangkumi 145 LED.

Penala Pilihan:

Kami membina "tuner" litar input kecil sehingga kami dapat menyesuaikan segmen pencahayaan dengan mudah tanpa mengubah dan memuat naik program untuk setiap penyesuaian. Ia mempunyai: output LED yang memancarkan mod input; butang yang menukar mod input; dan tombol yang boleh dilaraskan. Arduino kemudian dapat mengeluarkan nilai ke komputer yang disambungkan.

Langkah 4: Pengawal Bangunan:

Pengawal Bangunan
Pengawal Bangunan

Senarai bahan tidak mengandungi wayar, tabung pemanas air, dan bekalan lain yang mungkin anda perlukan. Untuk litar 5v dan tanah ke LED, saya cadangkan anda menggunakan wayar 26 gauge atau helai yang lebih berat. Kami menggunakan tolok 26. Juga penebat silikon pada wayar lebih baik kerana tidak meleleh di dekat tempat anda menyolder dan lebih fleksibel. Saya dapati ruang yang lebih sedikit antara komponen membuat fabrikasi lebih mudah. Sebagai contoh, pengawal yang digambarkan pada Langkah # 6 ruang antara perumahan soket kuasa (hitam) dan blok terminal (biru) adalah sekitar 1 inci. Penutup pemasangan kami adalah dua lapisan venir kayu.

Gambar dalam langkah ini menunjukkan pendawaian header wanita enam kontak untuk penala pilihan. Hubungan yang tidak digunakan antara wayar merah dan hijau dipasang dengan sekeping tusuk gigi untuk mengelakkan sambungan terbalik.

Langkah 5:

Imej
Imej
Imej
Imej
Imej
Imej

Sekarang, mari digabungkan sehingga sesuai dengan bingkai kotak bayangan. Bingkai tebal 3/4 "jadi kami mempunyai had ketinggian pengawal 1/2". Kami membuat pelekap pelekap dengan melekatkan dua kepingan pelapis venir dengan biji-bijian tegak lurus antara satu sama lain untuk membatasi melengkung. Komponen disusun sedemikian rupa sehingga soket kuasa akan berada di tengah kerangka. Lubang soket elektrik dipotong dengan gergaji perhiasan dan dimasukkan ke dalam agar sesuai. Komponen kemudian disatukan sebelum dipasang. Soket dilekatkan di tempat dengan epoksi. Kotak pelekap buih kekal dua sisi digunakan di bawah terminal skru dan arduino. Gam lebur panas juga digunakan untuk menahan arduino di tempat dan juga kapasitor.

Langkah 6: Membangun Tuner Pilihan:

Penala Pilihan Bangunan
Penala Pilihan Bangunan
Penala Pilihan Bangunan
Penala Pilihan Bangunan
Penala Pilihan Bangunan
Penala Pilihan Bangunan

Kami membina "tuner" litar input kecil sehingga kami dapat menyesuaikan segmen pencahayaan dengan mudah tanpa mengubah dan memuat naik program untuk setiap penyesuaian. Ia mempunyai: output LED yang memancarkan mod input; butang yang menukar mod input; dan tombol yang boleh dilaraskan. Arduino kemudian dapat mengeluarkan nilai ke komputer yang disambungkan.

Gambar-gambar ini menunjukkan fabrikasi penala. Saya menutup bahagian belakang dengan pita "Gorilla". Yang memegang kabel pita stabil dan juga membuat pemegang yang bagus.

Langkah 7: Gambaran Keseluruhan Pengawal Pengaturcaraan:

Ini adalah bahagian yang sukar bagi projek ini. Semoga anda dapat menggunakan beberapa kod dan kaedah kami untuk memulakannya.

Adafruit dan FastLED telah menerbitkan dua perpustakaan hebat untuk membolehkan Arduino mengendalikan banyak jenis LED yang dapat diatasi. Kami menggunakan kedua-dua perpustakaan ini dalam projek yang berbeza. Kami mencadangkan anda juga membaca beberapa bahan sumber di perpustakaan ini dan meneroka beberapa contoh program mereka.

Repositori Github program kami disenaraikan dalam "Sumber" di atas. Perhatikan bahawa kita jauh dari mahir dalam pengaturcaraan Arduino sehingga ada banyak ruang untuk diperbaiki. Jangan ragu untuk menunjukkan masalah dan menyumbang penambahbaikan.

Langkah 8: Pengaturcara Pengatur Contoh Ripple:

"Ripple" oleh Jeanie Holt adalah kejayaan pertama kami. Potongan ini adalah ikan seni fabrik dalam bingkai kotak bayangan. Pencahayaan berwarna biru rendah dari bawah. Dan dari atas, hingga tiga batang cahaya putih yang lebih terang bergerak dari kanan ke kiri seolah-olah dibiaskan dengan pergerakan riak di permukaan air. Ini adalah konsep yang agak sederhana dan program ini tidak menggunakan input "tuner". Ia bermula termasuk perpustakaan Adafruit dan menentukan pin kawalan output dan bilangan LED. Seterusnya kita melakukan satu kali penyediaan komunikasi bersiri dan jalur LED. Kemudian kami menentukan sebilangan pemboleh ubah dalaman, seperti, kelewatan antara penyegaran, ciri-ciri batang cahaya (kecerahannya dari waktu ke waktu dan pergerakannya), kemudian nyatakan pemboleh ubah untuk setiap batang cahaya.

Fungsi “changeBright ()” akan meningkatkan kecerahan poros cahaya selama waktu “serangan”, menahannya tetap untuk waktu “bertahan”, kemudian memudar pada waktu “peluruhan”.

Fungsi “riak ()” dipanggil untuk masing-masing tiga batang cahaya selama setiap kenaikan waktu. Kecerahan sementara dikira berdasarkan pudar dari kecerahan maksimum pada kerosakan berterusan dari masa ke masa. Kemudian untuk setiap LED di sebelah kiri kedudukan permulaan kecerahan dikira. Kita dapat membayangkan riak cahaya bergerak ke kiri. Setiap LED ke kiri berada pada titik yang lebih awal dalam kurva waktu kecerahan riak. Apabila riak ini tidak mempunyai kecerahan sifar untuk semua LED, bendera yang telah selesai diset ke 1. Jika LED sudah lebih terang (ditetapkan oleh salah satu riak yang lain) kita meninggalkan nilainya tidak berubah.

Gelung utama dimulakan dengan mematikan LED. Kemudian untuk ketiga-tiga riak itu memanggil fungsi riak dan menambah pembilang waktunya. Sekiranya bendera yang telah selesai ditetapkan, ia akan mula berubah. Akhirnya gelung utama menetapkan cahaya biru pucat di bahagian bawah.

Langkah 9: Contoh Pengawal Pengaturcaraan Subuh hingga Senja:

Image
Image

Projek seterusnya, "Dawn to Dusk" oleh Jeanie Holt, adalah karya seni kain lain kali ini dengan pohon dengan dedaunan berwarna musim luruh. Pencahayaan adalah simulasi hari dengan subuh mulai terang di sebelah kiri menuju cerah tengah hari diikuti dengan warna matahari terbenam kemerahan dan berkembang hingga malam. Cabaran di sini adalah mempermudah perihalan peralihan warna dan kecerahan dengan masa melebihi 66 LED. Cabaran lain adalah membuat cahaya berubah dengan lancar. Kami benar-benar bergelut dengan peralihan cahaya yang ketara pada tahap cahaya rendah. Saya cuba mendapatkan peralihan pencahayaan yang lebih lancar menggunakan perpustakaan FastLED tetapi tidak berjaya. Penerangan program ini akan kurang terperinci. Sekali lagi kami menggunakan perpustakaan NeoPixel Adafruit.

Kami pergi ke konvensyen memulakan jalur LED kami di sudut kiri atas. Ini menjadikan penomboran lokasi LED agak janggal pada bahagian ini. Terdapat 86 LED di sekitar bingkai. Fajar menerangi sebelah kiri yang bergerak dari 62 hingga 85. Kemudian kiri atas ke kanan bawah adalah 0 hingga 43.

Program ini tidak termasuk kemampuan untuk menggunakan rangkaian input "Tuner".

Program ini menggunakan dithering masa untuk mengurangkan kerlipan. Kami mengemas kini setiap LED kelima, kemudian muncul shift satu dan mengemas kini setiap LED kelima dan mengulang sehingga semuanya dikemas kini. Atas sebab ini kami menentukan panjang tali LED sedikit lebih lama daripada yang sebenarnya.

Sekarang inilah cara kami mempermudah penerangan mengenai corak pencahayaan. Kami mengenal pasti 12 kedudukan LED rujukan di sekitar bingkai dari kiri bawah ke kanan bawah. Kemudian kami menentukan intensiti LED merah, hijau, dan biru (RGB) untuk LED rujukan ini hingga 12 titik putus hingga waktu waktu subuh hingga senja. Untuk setiap titik rehat terdapat 4 bait, jumlah kiraan masa sejak titik putus terakhir, dan nilai satu bait untuk setiap warna RGB. Susunan ini memerlukan 576 bait memori berharga.

Kami sekarang menggunakan interpolasi linear untuk mencari nilai antara titik putus dan interpolasi linear sekali lagi untuk mencari nilai untuk LED yang terletak di antara LED rujukan. Agar interpolasi berfungsi dengan baik, kita perlu menggunakan beberapa nilai antara titik terapung. Tempoh subuh hingga senja dipecahkan kepada 120 tempoh masa separuh kedua.

Langkah 10: Pengawal Pengaturcaraan Contoh Hutan Hujan:

Projek seterusnya yang akan saya jelaskan adalah "Rain Forest" karya Juli-Ann Gasper. Ini adalah karya seni kain yang lebih besar dengan banyak kedalaman. Di sini kami menggunakan kotak bayangan sedalam 4.4”. Konsep pencahayaan adalah tahap cahaya latar yang redup di bahagian bawah dengan cahaya yang berkelip-kelip melalui daun di atas dari semasa ke semasa. Konsep di sini serupa dengan Ripple tetapi pancaran cahaya tidak bergerak. Dan tidak seperti riak di mana kecerahan berubah dengan lancar, di sini kecerahan kerlipan perlu turun naik. Kami membuat susunan 40 bait yang dipanggil flicker_b2. Kami mendapati kesan visualnya baik jika kami menggunakan corak yang sama untuk semua lokasi yang berkedip. Kami mewujudkan 5 lokasi kerlipan. Semasa meninjau kesan visual, kami mendapati bahawa salah satu kelipan perlu jauh lebih lebar daripada yang lain. Kami menggunakan fungsi fill_gradient_RGB () untuk meregangkan lebih kurang 20 LED. Setiap kelipan bebas dan bermula secara rawak. Kebarangkalian setiap kerlipan dapat ditetapkan.

Warna latar belakang harus diatur dan dipulihkan apabila kerlipan tidak lebih terang daripada latar belakang.

Untuk karya ini kami menggunakan perpustakaan FastLED. Dalam program ini #define TUNING digunakan untuk menunjukkan jika papan penala dipasang, ia harus 0 apabila papan penala tidak dipasang. Jika tidak, pengawal sensitif terhadap elektrik statik dan poltergeists. Penyusun hanya merangkumi segmen program yang menggunakan "Tuner" apabila pemboleh ubah ini adalah 1.

Langkah 11: Pengawal Pengaturcaraan Contoh Badai:

Projek lain adalah menyalakan foto bernama "Storm" oleh Mike Beck. Gambarnya adalah awan ribut. Kami menggunakan perpustakaan FastLED dan tidak termasuk kemampuan penalaan. Konsep pencahayaan di sini adalah beberapa cahaya latar dengan kilatan kilat muncul secara rawak pada tiga titik di sekitar awan. Kilat di setiap lokasi disebabkan oleh tiga LED. Ruang antara LED ini berbeza untuk setiap lokasi. Kecerahan ketiga-tiga LED ini ditentukan oleh tiga susunan 30 bait. Urutan kecerahan dalam tiga susunan memberikan variasi dan pergerakan yang jelas di ketiga-tiga LED. Arah pergerakan yang dirasakan dan kecerahan keseluruhan dipilih untuk setiap lokasi. Tempoh denyar di setiap lokasi disesuaikan dengan kelewatan masa antara mengemas kini nilai kecerahan. Terdapat kelewatan masa secara rawak antara 0.2 dan 10.4 saat antara sambaran petir. Manakah dari tiga lokasi mogok yang juga rawak dengan peluang 19% di atas awan, peluang 45% di kanan bawah, dan peluang 36% di sebelah kiri.

Langkah 12: Pengaturcara Contoh Pengawal Macaw dan Nordic Tree:

Potongan "Macaw" oleh Dana Newman dan "Nordic Tree" oleh Jeanie Holt menggunakan warna pencahayaan untuk mengubah warna potongan yang dirasakan. Dan dalam keadaan lukisan Dana macaw besar, suasana burung berubah dari gembira menjadi mengancam bergantung pada warna cahaya yang mengelilingi burung. Kedua-dua program ini hampir sama. Kami menggunakan perpustakaan Adafruit NeoPixel dan kemampuan papan penala ada dalam program ini. Program-program ini diadaptasi dari fungsi theatreChaseRainbow () dalam Adafruit_NeoPixel / example / Strandtest.ino (dimuat turun 7/29/2015)

Pencahayaan dipegang pada kecerahan yang relatif tetap sementara warna cahaya beralih melalui roda warna warna. Kemajuan di sekitar roda warna dibuat dengan memulakan dengan 100% merah dan secara bertahap menurun merah sambil bertambah hijau. Setelah hijau pada 100% maka ia akan menurun sambil bertambah biru. Dan akhirnya apabila biru berkurang dan merah bertambah, anda akan datang dengan bulatan penuh.

Ini memberikan pencahayaan menggunakan dua warna utama dan membiarkannya keluar. Semasa kita memutar roda warna pencahayaan ini pada suatu ketika, warna dalam karya seni akan hilang dalam cahaya yang disediakan. Perubahan yang dihasilkan dalam warna yang dirasakan dapat menjadi sangat dramatik dan menjadi sebahagian daripada ekspresi seni. Oleh itu, jika warna merah tidak terdapat dalam cahaya, warna merah pada lukisan akan kelihatan gelap. Apabila cahaya berwarna merah murni maka warna merah benar-benar bersinar dan warna-warna lain disenyapkan.

Langkah 13: Contoh Pengawal Pengaturcaraan Copperhead:

"Copperhead" oleh Jeanie Holt menggunakan variasi pencahayaan untuk meningkatkan rasa di luar rumah dan variasi yang jelas pada ular. Pengaturcaraan meletakkan gelombang cahaya di atas lampu latar.

Untuk program ini, kami menggunakan perpustakaan FastLED bersama dengan rangkaian Tuner kami untuk pembangunan.

Warna latar ditetapkan pada 10 titik di sekitar bingkai dan fungsi fill_gradient () digunakan untuk peralihan antara warna dengan lancar.

Pada permulaan kitaran tontonan latar belakangnya redup dan warna beralih ke biru menggunakan kurva kosinus dari masa ke masa dan fungsi setBrightness ().

Selepas kelewatan tiga gelombang cahaya bergerak dari kanan atas ke kiri bawah. Gelombang pertama adalah yang paling terang dengan gelombang berikut menjadi lebih malap. Gelombang pertama juga bergerak lebih perlahan.

Langkah 14: Pengawal Pengaturcaraan Contoh Doodle Hitam:

Image
Image

"Black Doodle" oleh Jeanie Holt meneroka pantulan dari vinil hitam.

Program ini juga menggunakan perpustakaan FastLED dan dapat mengambil input dari litar penalaan.

Pencahayaan terdiri daripada 5 paparan cahaya serentak yang dimainkan dari titik rawak di sekitar bingkai. Setiap paparan berkembang melalui 60 nilai kecerahan yang sama dari masa ke masa. Setiap paparan melibatkan 7 LED bersebelahan dengan kecerahan berkurang ke arah tepi. Sebelum setiap paparan dimulakan terdapat kelewatan secara rawak. Lokasi paparan adalah rawak tetapi lokasi berhampiran paparan aktif dihambat.

Latar belakang adalah pelangi warna yang tersebar di sekeliling bingkai. Pelangi latar ini perlahan-lahan berpusing dan membalikkan arah secara rawak.

Huraian ini adalah gambaran keseluruhan dan membantu membaca program. Kami harap anda dapati beberapa kesan pencahayaan ini cukup menarik untuk dimasukkan ke dalam salah satu projek anda. Pautan ke github.com tempat program disimpan adalah di Langkah 2 Sumber.

Langkah 15: Mengatur Fungsi Penalaan:

Dalam program RainForest kita dapat menghidupkan fungsi penalaan dengan "#define TUNING 1" dan memasang papan input penalaan menggunakan kabel ribennya. Kita juga perlu menetapkan parameter yang mana LED akan dipengaruhi oleh penalaan. Sebagai contoh mari menyesuaikan LED pada kedudukan 61 hingga 73. Kami menggunakan #define START_TUNE 61 dan #define END_TUNE 73. Kami menetapkan segmen rentetan lain ke warna latar dalam persediaan () menggunakan panggilan fill_gradient_RGB (). Sketsa selebihnya tidak boleh menyetel LED dalam julat penalaan atau anda tidak akan dapat melihat penyesuaian anda. Sekarang jalankan lakaran dan paparkan monitor bersiri. Bahagian penalaan program mempunyai 4 keadaan [Hue, Saturation, Value, and Brightness}. Hue adalah roda warna dengan 0 = Merah dan 255 warna biru hingga hampir merah. Keadaan semasa hendaklah dicetak pada monitor bersiri dan LED penunjuk pada papan penala akan berkedip untuk menunjukkan keadaan (satu sekelip adalah Hue; dua sekelip adalah Ketepuan dan sebagainya). Nilai adalah intensiti cahaya sementara kecerahan adalah faktor pengurangan yang diterapkan pada semua nilai intensiti LED. Jadi untuk set kecerahan penuh Nilai = 255 dan Kecerahan = 255. Tekan butang untuk mengalihkan keadaan. Apabila anda berada di keadaan yang anda mahu tetapkan putar tombol. Program ini mengabaikan tombol sehingga dipusingkan lebih daripada INHIBIT_LEVEL. Ini mengelakkan perubahan nilai di negeri lain semasa anda mengitarinya. Contoh anda mungkin bermula dengan Hue dan dapatkan warna yang anda inginkan, kemudian beralih ke nilai dan sesuaikan untuk mencari kecerahan yang anda mahukan.

Sketsa Macaw dan Nordic_Tree merangkumi penalaan tetapi fungsinya sedikit berbeza. Dalam lakaran ini hanya terdapat dua mod. Satu untuk kecerahan dan satu untuk kedudukan roda warna. Dengan contoh-contoh ini, anda dapat melihat bagaimana menyesuaikan fungsi penalaan agar berfungsi dengan hampir semua parameter dalam kawalan pencahayaan anda.

Termasuk dalam repositori adalah sketsa 'Tuning' yang mengambil fungsi penalaan dari RainForest. Sketsa ini hanya fungsi penalaan sehingga anda dapat meneroka dan lebih mudah mengikuti cara lakaran tersebut berfungsi. Kami menggunakan lakaran ini untuk mengendalikan bingkai lampu ujian yang dapat kami letakkan dengan cepat di atas karya seni dan meneroka kesan pencahayaan. Nanti kita akan menggunakan maklumat penalaan untuk membina pengawal pencahayaan tersuai.

Semoga anda mendapat pengajaran yang berguna ini dalam menjayakan projek anda.

Langkah 16: Selebihnya Cerita:

Ini adalah salah satu daripada dua arahan dalam projek ini. Sekiranya anda belum melakukannya, lihat rakan seperjuangan di:

Disyorkan: