Iklan

lampu pusat mediaJika Anda menonton banyak film di PC atau pusat media, saya yakin Anda telah menghadapi dilema pencahayaan; apakah Anda benar-benar mematikan semua lampu? Apakah Anda menyimpannya dalam ledakan penuh? Atau apakah Anda menggunakan saklar dimmer untuk menjaga cahaya kuning kusam di suatu tempat? Yah, jangan menderita lagi.

Kurang dari $ 100, Anda dapat mengatur sistem pencahayaan yang luar biasa yang akan mencerminkan apa yang ada di layar; jika video adalah pemandangan malam biru, lampu akan menjadi biru; ketika nyala api oranye menyala, demikian juga lampu Anda. Selamat datang di dunia pencahayaan RGB sekitar.

Komponen

  • RGB light strip - ini adalah strip RGB LED 5 meter yang dapat dibeli di eBay dan dikirim dari Hong Kong dengan harga masing-masing kurang dari £ 20. Jika Anda membeli di toko elektronik Anda akan membayar berdasarkan meteran dan gulungan 5m akan dikenakan biaya tiga atau empat kali lipat, jadi belilah secara online. Jenis strip LED ini dapat diubah ke warna apa saja, tetapi hanya secara bersamaan - tidak dapat disesuaikan secara individual.
  • instagram viewer
  • Catu daya 12v - daya (ampage) yang dibutuhkan tergantung pada berapa banyak strip LED yang akan Anda sambungkan. Setiap meter menghasilkan sekitar 0,6 amp, tetapi ini tergantung pada kerapatan LED Anda, jadi pastikan untuk memeriksa strip LED khusus Anda. 3A akan mencukupi untuk strip 5m yang saya tautkan di atas, dan catu daya terpisah dapat dibeli dengan harga sekitar £ 10 jika Anda tidak dapat sumber satu di tempat lain.
  • 3 x Transistor MOSFET N - Anda dapat menemukan probaby lebih murah, tapi saya membeli paket 6 (ketik STP16NF06FP) sekitar £ 10. Ini digunakan untuk mengisolasi arus dari Arduino - menghubungkan strip langsung ke Arduino akan menggorengnya dengan jumlah arus yang mereka gambar. Anda memerlukan 1 transistor MOSFET per saluran warna LED, untuk Merah, Hijau, dan Biru.
  • Arduino Apa Arduino & Apa Yang Dapat Anda Lakukan dengannya?Arduino adalah perangkat elektronik kecil yang luar biasa, tetapi jika Anda belum pernah menggunakannya sebelumnya, apa sebenarnya itu, dan apa yang dapat Anda lakukan dengan itu? Baca lebih banyak - Saya belum memasukkan biaya item ini karena diasumsikan Anda sudah memilikinya, dan ada berbagai klon yang dapat Anda beli jika Anda tidak mampu membeli yang resmi.

Total biaya karena itu sekitar £40 tidak termasuk Arduino.

pengantar

Proyek ini terdiri dari dua bagian. Pertama-tama kita akan membuat rangkaian Arduino dasar yang mendengarkan perintah dari komputer, dan mengatur LED RGB ke warna yang sesuai. Yang kedua melibatkan menggunakan aplikasi baru yang disebut Pengolahan dan Java di sisi komputer - untuk mengetahui warna apa yang saat ini ada di layar, rata-rata, dan menampilkannya ke port komunikasi serial agar Arduino bereaksi.

Bagian 1: Sirkuit dan Arduino

Sirkuit yang kami gunakan sangat sederhana seperti yang Anda lihat dari diagram di bawah ini. Strip LED harus dilengkapi dengan colokan jantan di salah satu ujung yang dapat Anda tempatkan langsung ke papan tempat memotong roti.

lampu pusat media

Strip LED Anda mungkin bervariasi, tetapi jika Anda melihat lebih dekat, Anda akan melihat 12v, R, G, B tertulis di rel di suatu tempat. Strip ini sebenarnya dapat dipotong pada titik-titik tembaga ini (setiap 3 LED yang saya miliki), jadi jika Anda ingin memotong strip di sudut TV Anda dapat melakukannya dengan aman - Anda tidak perlu menggunakan keseluruhan 5m, sehingga Anda mungkin memiliki beberapa yang tersisa untuk masa depan proyek. Hubungkan positif 12v langsung ke catu daya eksternal.

pencahayaan ambient yang dinamis

MOSFET memiliki tiga pin; gerbang, menguras, dan sumber. Gerbang itu seperti sakelar elektronik yang akan dikendalikan Arduino. Ini kemudian menentukan arus yang mengalir antara sumber dan tiriskan. Aliran setiap MOSFET harus dihubungkan dengan tanah Arduino, dan tanah dari catu daya, sedangkan sumber terhubung ke saluran strip LED.

pencahayaan ambient yang dinamis

Saat Anda telah menyelesaikan sirkuit, unduh dan jalankan ini kode uji (berasal dari LadyAda, pin dimodifikasi). Anda akan melihat strip LED Anda berputar melalui berbagai warna.

pencahayaan ambient yang dinamis

Bagian 2: Memproses

Unduh Pengolahan dan lari. Anda mungkin terkejut menemukan tampilannya hampir persis seperti lingkungan pengembangan Arduino; itu karena lingkungan Arduino didasarkan padanya, meskipun mereka berdua menjalankan fungsi yang berbeda. Raih kode iniawalnya oleh Republik Silikon tetapi banyak dimodifikasi oleh saya untuk membuat pengaturan ukuran layar otomatis dan dengan representasi warna yang lebih baik - dan luangkan waktu sejenak untuk melihatnya. Pada dasarnya ia menggunakan kelas Java yang disebut Robot untuk melakukan tangkapan layar setiap 10 ms; kemudian memilih setiap piksel aneh dan rata-rata total warna. Jika kinerja merupakan masalah bagi Anda, tingkatkan skipValue variabel ke 3 atau 4 untuk melewati lebih banyak piksel - efek keseluruhannya harus sama tetapi akan berjalan lebih cepat karena memeriksa lebih sedikit piksel. Akhirnya, saya menambahkan filter yang membantu saturasi warna dengan meningkatkan maksimum dan mengurangi nilai RGB minimum yang ditemukan (tanpa ini, saya menemukan warna terlalu putih).

Jalankan aplikasi; pertama kali, Anda mungkin akan mendapatkan kesalahan saat mencoba mengakses port serial yang salah.

pencahayaan ambient yang dinamis

Periksa jendela debug untuk daftar port serial saat ini, dan catat nomor di sebelah Arduino Anda. Dalam kasus saya di Mac, koneksi USB adalah port 4. Ubah nomor di baris ini ke port yang benar:

port = Serial baru (ini, Serial.list () [4], 9600); // atur baud rate

Simpan dan jalankan kembali; Anda akan melihat jendela kecil muncul - ini mewakili warna rata-rata dari semua yang ada di layar. Luncurkan aplikasi melukis atau sesuatu dengan warna-warna yang kuat untuk mengujinya, jika tidak, mungkin hanya akan menampilkan warna abu-abu keruh. Hentikan aplikasi ketika Anda melakukan pengujian karena kami memerlukan akses port serial untuk memprogram Arduino.

lampu pusat media

Akhirnya, muat kode ini ke Arduino Anda. Alih-alih mengirim warna acak ke strip LED, kode ini membaca nilai-nilai dari port serial (yang sedang diproses oleh Pemrosesan). Ini cukup mudah dimengerti, satu-satunya bagian yang sulit adalah penggunaan marker dalam data serial:

if (Serial.available ()> = 4) { if (Serial.read () == 0xff) { red = Serial.read (); hijau = Serial.read (); blue = Serial.read (); } }

Ini memastikan kami membaca nilai byte yang benar - aplikasi Pemrosesan mengeluarkan penanda sebagai "breakpoint" antara setiap rangkaian nilai sehingga Arduino tidak akan keluar dari sinkronisasi dan berpikir bahwa nilai hijau untuk biru dll

Setelah kode Arduino diunggah (seharusnya tidak ada output pada strip LED pada awalnya), maka Anda dapat memuat dan menjalankan aplikasi Pemrosesan; segera Anda akan melihat lampu ambient Anda bekerja.

Berikut adalah demo video tentang cara kerjanya bagi saya dengan beberapa video musik trippy acak.

Bagaimana menurut anda?! Meskipun itu tidak cukup mengesankan seperti sesuatu yang menganalisis setiap bagian layar dan penggunaannya piksel LED individual, itu jauh lebih murah dan jauh lebih cerah. Satu-satunya downside ke ini adalah bahwa semuanya harus dijalankan di komputer media center Anda - itu tidak akan berfungsi dengan siaran TV biasa atau Xbox 360 Anda, misalnya. Jika Anda memiliki masalah, pertanyaan, atau saran, silakan tanyakan saja; atau mungkin tautan ke video dari pengaturan Anda yang sudah selesai.

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.