Menghidupkan beberapa led dengan arduino menggunakan transistor

8

Saya ingin dapat menyalakan 50 LED merah dengan satu pin Arduino. Saya tidak ingin kontrol individu, saya hanya ingin dapat mengaktifkan atau menonaktifkan semuanya.

Saya menemukan contoh ini . Ia menggunakan transistor 2N3904. Apakah ini pendekatan yang ingin saya ambil? Saya kira saya akan membutuhkan transistor daya yang lebih tinggi?

Saya menggunakan catu daya eksternal yang disambungkan ke papan khusus dengan regulator tegangan 5v jadi saya memberi daya pada LED langsung dari regulator ini.

LED datang dalam bentuk array bar cahaya LED ini (atau setidaknya sangat mirip) ...

Saya telah menyebutkan dalam komentar dalam jawaban di bawah ini bahwa saya menggunakan resistor 330 ohm dengan masing-masing LED. Pada bagian lain dari proyek ini, saya menggunakan light bar sebagai level meter, dan setiap LED terpisah dikontrol melalui register geser, sehingga resistor terpisah. Saya menyadari setelah berpikir tentang hal itu bahwa saya tidak perlu memiliki resistor secara seri dengan masing-masing LED untuk ini sekarang karena mereka baik semua atau semua off (hmmm .... maaf untuk komentar saya yang agak sembarangan!).

Saya memang berpikir bahwa saya dapat memiliki semacam saklar elektronik yang dapat memutuskan hubungan ke tanah atau 5V. Apakah ini layak?

Adam
sumber
Ini untuk pengontrol perangkat lunak yang saya buat. Lampu-lampu itu harus dapat merespons secara relatif cepat (yaitu setiap 200 milidetik)
Adam
1
Perangkat lunak ini mudah diketahui. Saya pikir penjelasan lebih banyak tentang perangkat keras akan membantu. Bar LED macam apa yang Anda gunakan? Apakah LED dalam seri, paralel, katoda umum, anoda umum atau semuanya independen? Apakah "menyalakan LED langsung dari listrik" berarti dari regulator 5V? Karena itu bisa berarti banyak hal lain. Anda menyebutkan resistor 330 ohm per LED ... sehingga setiap LED (semuanya 50) memiliki resistor seri? Hanya berusaha mengklarifikasi sehingga kami dapat memberikan jawaban terbaik kepada Anda.
Kurt E. Clothier
Hai Kurt, saya telah mengedit posting asli saya dengan info ini. Cheers
Adam

Jawaban:

7

Transistor pada dasarnya adalah sebuah saklar yang dapat memutuskan hubungan ground atau 5V. Ada berbagai jenis transistor, dan beberapa dapat mengubah beban yang sangat besar. 50 LED bukan masalah besar.

Jadi, pertanyaannya kemudian adalah ini: Dapatkah 2N3904 satu saklar 50 LED tunggal?

Untuk menjawabnya, kita perlu tahu dulu jenis LED apa. Tapi mari kita asumsikan Anda menggunakan varietas biasa-biasa-biasa saja. Estimasi yang masuk akal dari arus maksimum ini adalah20mA. Jika Anda memiliki 50, maka arus maksimum adalah20mA50=1000mA. Melihat datasheet saya melihat arus kolektor maksimum untuk 2N3904 adalah200mA. Jadi jawabannya tidak: Anda tidak dapat mengganti 50 LED dengan satu 2N3904.

Saya kira Anda memiliki beberapa opsi:

  • gunakan beberapa 2N3904
  • gunakan lebih sedikit LED
  • menggunakan LED yang sama, tetapi mengendarainya dengan arus yang lebih sedikit
  • gunakan transistor yang lebih besar ( TIP121 sangat mudah ditemukan)
  • gunakan beberapa perangkat switching lainnya

Dari jumlah tersebut, saya pikir mengurangi arus LED atau menggunakan transistor yang lebih besar mungkin merupakan solusi yang paling mungkin. Perangkat switching lain (seperti relay) mungkin lebih mahal dan lebih lambat.

Phil Frost
sumber
1
* Gunakan MOSFET IRLML2502, komponen favorit saya hari ini. :-)
Anindo Ghosh
Saya menggunakan 5 lightbar LED merah (masing-masing 10 LED). Saya menggunakan resistor 330 ohm secara seri dengan masing-masing LED, jadi saya mencari sekitar 2 mA per LED. Ini total kurang dari spesifikasi transistor (saya pikir - saya selalu agak bingung menghitung total penggunaan saat ini!)
Adam
Sepertinya tidak mungkin. Resistor Anda akan menyebabkan penurunan tegangan 330Ω x 0,002A = 0,66V, jadi kecuali LED Anda memiliki Vf sebesar 4,34V (yang biasanya tinggi untuk LED merah), arus Anda kemungkinan akan jauh lebih tinggi.
microtherion
1
Jawaban ini hanya menganggap led kabel secara paralel. Led bisa dua seri. Jadi saat ini akan menjadi 20mA * 25 rantai. Tapi @Adam 2mA rendah untuk led, apakah mereka bahkan menyala pada undian saat ini?
Pejalan kaki
1
@ Derby, bisa dimengerti. Saya yakin beberapa yang berkekuatan tinggi memang membutuhkan lebih banyak untuk menghidupkan. Tetapi LED umum yang telah saya gunakan sangat senang dengan arus kecil (bahkan kurang dari 1mA), meskipun mereka tidak bersinar sangat terang. Faktanya, LED dalam proyek tambang ini masing-masing hanya menggunakan 1,8mA. Dan karena mereka multiplexing dan hanya pada 1/3 waktu, arus efektif lebih seperti 0,6mA. Meski begitu, tampilan ini mudah terlihat dalam cahaya terang dari jarak yang layak. projectsbykec.com/projects/miscellaneous/…
Kurt E. Clothier
3

Mempertimbangkan informasi yang diberikan (50 Red Leds Tercatat pada 1.95V, 5v Source, 2mA current, 330Ω resistor), berikut ini akan berfungsi.

Dengan mempertimbangkan perhitungan Led resistor yang umum:
(Vcc - Forward Voltage) / Arus
Di mana Vcc adalah 5v, Forward Voltage adalah 1,95v per led, karena kami memiliki dua seri, 1.95v * 2, dan Current Desired Current adalah 2mA.
(5 - (1.95 * 2)) / 0,002 atau (5 - 3,9) / 0,002 atau 1,1 / 0,002 = 550.
Karena Anda memiliki resistor 330Ω, menyesuaikan dengan itu akan menghasilkan 3mA per Seri. Bukan per dipimpin, tetapi per seri, karena saat ini sama di jalur seri. Setiap rangkaian resistor, dalam hal ini dua, akan menggunakan arus 3mA yang sama. Jadi ini menyederhanakan persamaan ke rantai seri 3mA * 25, hanya 75mA yang perlu diaktifkan.

Transistor sinyal kecil yang umum seperti 2n3904 dapat menangani 75mA tanpa masalah. Basis resistor 1kΩ digunakan antara basis transistor dan pin MCU.

Catatan, skema di bawah ini hanya menunjukkan satu bilah dipimpin, Anda hanya akan menambahkan sisanya dengan cara yang sama. Kawat katoda led pertama ke anoda led berikutnya, dan satu resistor per pasang.

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Pejalan kaki
sumber
-3

Anda harus menggunakan pin pada Arduino untuk mengontrol transistor yang menyalakan relay dan kontak relay menghidupkan semua LED dengan menerapkan ground. Jika Anda harus menggunakan transistor, maka ya Anda perlu menemukan satu yang dapat menangani semua arus. Bahkan dengan relay, pastikan untuk memeriksa peringkat kontak saat ini. Lihat contoh sirkuit di bawah ini. Tergantung pada peringkat saat ini dan resistansi koil dari relai yang Anda pilih, Anda mungkin atau mungkin tidak perlu R2.

masukkan deskripsi gambar di sini

Suirnder
sumber
Relay memiliki waktu switching yang relatif tinggi, dan masa pakai mekanik yang terbatas. Mungkin perlu meminta OP untuk mengonfirmasi bahwa mereka tidak ingin mengganti LED dengan sangat cepat atau terlalu sering.
Anindo Ghosh
Terima kasih. Saya pikir relay akan terlalu lambat untuk aplikasi saya. Saya telah menambahkan komentar ke posting asli saya.
Adam
Sama sekali tidak ada gunanya menggunakan relay ketika begitu banyak transistor yang tersedia yang dapat beralih arus yang sangat besar! Selain dari kecepatan lambat dan ukuran besar relay, solusi listrik hampir selalu hidup lebih lama dan lebih baik daripada yang mekanis.
Kurt E. Clothier
Walaupun Relays mungkin bukan opsi terbaik, mereka adalah opsi yang layak (kecepatan tidak bertahan). +1 untuk menebus siapa pun yang diturunkan.
Pejalan kaki
Itulah yang saya maksudkan: itu bukan pilihan terbaik, tetapi saya tidak akan memilihnya ... Jika jenis kontrol apa pun digunakan, relay akan memiliki rentang hidup yang sangat singkat jika dapat menangani kecepatan pulsa sama sekali.
Kurt E. Clothier