Bagaimana saya harus menyalakan semua LED?


8

Saya sedang mengerjakan kubus LED 4x4x4. Saya telah menghubungkan semua terminal negatif LED dalam lapisan horizontal satu sama lain, dan saya menggunakan satu pin Arduino per lapisan. Saya telah menghubungkan semua terminal positif LED dari kolom vertikal bersama-sama dan saya mengendalikan setiap kolom melalui pin.

Jadi, 16 pin digunakan untuk kolom dan 4 pin digunakan untuk lapisan horizontal. Pin secara langsung menyalakan dan menenggelamkan LED.

Dari perhitungan saya, saya dapat menyalakan paling banyak 16 LED pada satu waktu sebelum mencapai batas saat ini. Jadi, jika saya ingin menerangi semua lapisan secara bersamaan, tanpa membakar papan, bagaimana saya harus melakukannya?


@MarkBooth Langsung tenggelam dalam pin I / O.
asheeshr

Jawaban:


5

Secara umum kubus yang dipimpin ini menggunakan kegigihan penglihatan dan multiplexing untuk meminimalkan jumlah kabel dan pin IO digital untuk ukuran tertentu dari kubus, tetapi dalam kasus Anda, Anda juga dapat menggunakannya untuk mengurangi arus keseluruhan yang diambil oleh kubus. Alih-alih hanya menyalakan atau mematikan LED, Anda akan mem-flash led berkali-kali per detik untuk memberikan kecerahan yang tampaknya terus menerus tetapi pada penarikan arus yang jauh lebih rendah.

Misalnya, jika Anda dapat terus-menerus menyalakan 16 LED tetapi perlu menyalakan 64 LED maka Anda dapat melakukannya jika Anda memiliki siklus kerja 25%. Setiap LED akan dinyalakan selama seperempat waktu dan dimatikan selama tiga perempat waktu, sehingga akan menjadi 1/4 dari kecerahan LED yang terus menyala tetapi juga hanya mengonsumsi 1/4 daya.

Jika Anda dapat menggilir antara 4 pesawat setiap 5ms (50Hz) maka tergantung pada seberapa terang LED kubus orang yang melihat langsung pada kubus mungkin tidak akan melihat kerlipan, tetapi siapa pun yang mencari di tempat lain mungkin akan melihat kerlipan dari sudut. dari mata mereka. Pada 2ms (125Hz) beberapa orang akan melihat kerlipan, bahkan dari sudut mata mereka.

Untuk informasi lebih lanjut, lihat halaman wikipedia di ambang fusion Flicker .


6

Cara terbaik untuk melakukannya adalah multiplexing .

Begitulah cara Monitor / Layar Anda (ponsel, laptop, dan sebagainya) berfungsi. Saya juga akan merekomendasikan register geser (seperti yang saya tulis dalam topik ini )

Semoga itu bisa membantu!


3

The Texas Instruments TLC5940 adalah cara lain untuk dengan mudah mengusir LED dari Arduino itu. Anda dapat membuat rantai daisy hingga 40 di antaranya. Ada begitu banyak informasi bagus di halaman taman bermain Arduino. Silakan periksa.

Berikut adalah salah satu contoh dari pengguna forum Arduino bernama Saeveritt yang menggambarkan ide tentang bagaimana diagram kabel akan terlihat. Ikuti tautan untuk mempelajari cara menyalakan banyak LED ini menggunakan teknik ini.

masukkan deskripsi gambar di sini


1

Saya akan berpikir bahwa dengan jumlah transistor yang sesuai Anda dapat mengubah keadaan tanpa harus menenggelamkan semua arus LED melalui pin Arduino.

Anda tidak menunjukkan sumber daya Anda, tetapi saya akan melakukannya menyalakan langsung LED (bukan melalui Arduino) dan menggunakan Arduio untuk membalik saklar transistor.


Bisakah Anda menjelaskan lebih lanjut tentang cara melakukan ini ... mungkin tautan atau contoh skema?
Penguin Anonim

@annonomus person - Mari kita asumsikan sumber 5v. Saya pikir alih-alih "5v> pin Arduino> sekelompok LED> tanah" Anda akan melakukan "5V> pin Arduino> basis transistor NPN" dan "5v> kolektor transistor> transistor emitor> sekelompok LED> tanah". Tulis "tinggi" ke pangkalan NPN dari Arduino untuk membalik transistor dan menyalakan LED tanpa menenggelamkan arus melalui pin Arduino.
mikeY

Saya tahu itu, tapi maksud saya transistor apa yang akan Anda gunakan? Adakah yang memenuhi arus? Maksud saya, bagaimana Anda menghitung berapa banyak tegangan dan saturasi yang Anda butuhkan untuk menyalakannya, dll?
Penguin Anonim

Saya pikir mereka yang tahu akan menggunakan MOSFET yang mewah. Saya akan mencobanya dengan 2N3904 karena saya punya banyak dari mereka.
mikeY
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.