Encendido de múltiples leds con arduino usando transistor


8

Quiero poder encender 50 LED rojos con un pin de un Arduino. No quiero control individual, solo quiero poder activarlos o desactivarlos todos.

Encontré este ejemplo . Utiliza un transistor 2N3904. ¿Es este el enfoque que quiero tomar? ¿Supongo que necesitaría un transistor de mayor potencia?

Estoy usando una fuente de alimentación externa que está conectada a una placa personalizada con un regulador de voltaje de 5v, por lo que estoy alimentando los LED directamente desde este regulador.

Los LED vienen en forma de esta matriz de barra de luz LED (o al menos muy similar) ...

Había mencionado en un comentario en una respuesta a continuación que estaba usando una resistencia de 330 ohmios con cada LED. En otra parte de este proyecto, utilizo las barras de luz como medidores de nivel, y cada LED separado se controla a través de un registro de desplazamiento, por lo tanto, la resistencia separada. Después de pensarlo, me doy cuenta de que no necesito tener una resistencia en serie con cada LED para esto ahora, ya que están todos encendidos o apagados (hmmm ... ¡perdón por mis comentarios casuales!).

Pensé que podría tener algún tipo de interruptor electrónico que pueda desconectar la tierra o 5V. ¿Es esto viable?


Esto es para un controlador de software que estoy haciendo. Las luces deben poder responder con relativa rapidez (es decir, cada 200 milisegundos)
Adam

1
El software es fácil de entender. Creo que un poco más de explicación del hardware ayudaría. ¿Qué tipo de barra LED estás usando? ¿Los LED están en serie, paralelo, cátodo común, ánodo común o todos independientes? ¿"Alimentar los LED directamente desde la red eléctrica" ​​significa desde el regulador de 5V? Porque eso podría tomarse como muchas otras cosas. Usted mencionó una resistencia de 330 ohmios por LED ... ¿entonces cada LED (los 50) tiene una resistencia en serie? Solo trato de aclarar para que podamos darle la mejor respuesta posible.
Kurt E. Clothier

Hola Kurt, he editado mi publicación original con la información. Saludos
Adam

Respuestas:


7

Un transistor es básicamente un interruptor que puede desconectar la tierra o 5V. Hay transistores de todo tipo, y algunos pueden cambiar cargas realmente enormes. 50 LEDs no es gran cosa.

Entonces, la pregunta es: ¿puede un solo 2N3904 cambiar 50 LED?

Para responder eso, primero deberíamos saber qué tipo de LED. Pero supongamos que está utilizando la habitual variedad nada especial. Una estimación razonable de la corriente máxima de estos es20metroUNA. Si tiene 50, entonces la corriente máxima es20metroUNA50=1000metroUNA. Mirando la hoja de datos , veo que la corriente máxima del colector para 2N3904 es200metroUNA. Entonces la respuesta es no: no puede cambiar 50 LED con un 2N3904.

Supongo que tienes varias opciones:

  • usar múltiples 2N3904
  • usar menos LEDs
  • usar los mismos LED, pero conducirlos con menos corriente
  • use un transistor más grande ( TIP121 es muy fácil de encontrar)
  • utilizar algún otro dispositivo de conmutación

De estos, creo que reducir la corriente del LED o usar un transistor más grande es probablemente la solución más probable. Otros dispositivos de conmutación (como un relé) son probablemente más caros y más lentos.


1
* Use un MOSFET IRLML2502, mi componente favorito del día. :-)
Anindo Ghosh

Estoy usando 5 barras de luces LED rojas (10 LED en cada una). Estoy usando una resistencia de 330 ohmios en serie con cada LED, así que estoy buscando alrededor de 2 mA por LED. Esto totaliza menos que las especificaciones del transistor (creo - ¡Siempre me confundo un poco al calcular el uso total de corriente!)
Adam

Eso parece poco probable. Su resistencia representaría una caída de voltaje de 330Ω x 0.002A = 0.66V, por lo que a menos que sus LED tengan un Vf de 4.34V (que sería inusualmente alto para los LED rojos), es probable que su corriente sea considerablemente más alta.
microtherion

1
Esta respuesta solo considera los leds cableados en paralelo. Los leds podrían ser dos en serie. Entonces, la corriente sería de 20mA * 25 cadenas. Pero @Adam 2mA es bajo para un led, ¿se iluminan con ese consumo de corriente?
Passerby

1
@Passerby, comprensible. Estoy seguro de que algunos de los de alta potencia requieren un poco más para encenderse. Pero los LED comunes con los que he trabajado están muy contentos con las corrientes pequeñas (incluso mucho menos de 1 mA), aunque no brillan mucho. De hecho, los LED en este proyecto mío solo usan 1.8mA cada uno. Y dado que están multiplexados y solo en 1/3 de las veces, la corriente efectiva es más como 0.6mA. Aún así, la pantalla es fácilmente visible con luz brillante desde una distancia decente. projectsbykec.com/projects/miscellaneous/…
Kurt E. Clothier

3

Teniendo en cuenta la información dada (50 LED rojos notados a 1.95V, fuente de 5v, corriente de 2mA, resistencias de 330Ω), lo siguiente funcionaría.

Teniendo en cuenta el cálculo de la resistencia Led común:
(Vcc - Tensión directa) / Corriente
donde Vcc es 5v, la Tensión directa es 1.95v por led, ya que tenemos dos en serie, 1.95v * 2, y la Corriente deseada es 2mA.
(5 - (1.95 * 2)) / 0.002 o (5 - 3.9) / 0.002 o 1.1 / 0.002 = 550.
Dado que tiene resistencias de 330Ω, el ajuste para eso daría 3 mA por serie. No por led, sino por serie, ya que la corriente es igual en una ruta de serie. Cada serie de resistencias, en este caso dos, usaría los mismos 3 mA de corriente. Por lo tanto, esto simplifica la ecuación a las cadenas de la serie 3mA * 25, solo 75mA que deben cambiarse.

Cualquier transistor de señal pequeña común como el 2n3904 puede manejar 75 mA sin problemas. Se usa una resistencia de base de 1kΩ entre la base del transistor y el pin MCU.

Tenga en cuenta que el siguiente esquema solo muestra una barra led, simplemente agregaría el resto de la misma manera. Conecte el cátodo del primer led al ánodo del siguiente led y una resistencia por par.

esquemático

simular este circuito : esquema creado con CircuitLab


-3

Debe usar el pin en el Arduino para controlar un transistor que enciende un relé y los contactos del relé encienden todos los LED al aplicar tierra. Si debe usar un transistor, entonces sí, necesita encontrar uno que pueda manejar toda la corriente. Incluso con un relé, asegúrese de verificar las clasificaciones de corriente de contacto. Vea el circuito de muestra a continuación. Dependiendo de la clasificación actual y la resistencia de la bobina del relé que seleccione, puede necesitar o no R2.

ingrese la descripción de la imagen aquí


Un relé tiene un tiempo de conmutación relativamente alto y una vida mecánica limitada. Puede valer la pena pedirle a OP que confirme que no quieren cambiar los LED muy rápido o con demasiada frecuencia.
Anindo Ghosh

Gracias. Creo que un relé sería demasiado lento para mi aplicación. He agregado un comentario a mi publicación original.
Adam

¡No tiene ningún sentido utilizar un relé cuando hay tantos transistores disponibles que pueden conmutar corrientes muy grandes! Además de la baja velocidad y el gran tamaño de los relés, las soluciones eléctricas casi siempre sobreviven y superan a las mecánicas.
Kurt E. Clothier

Si bien los relés pueden no ser la mejor opción, son una opción viable (no obstante la velocidad). +1 para compensar a quien haya votado negativamente.
Passerby

Eso es lo que quise decir: no es la mejor opción, pero no lo votaría ... Si se usa algún tipo de control pulsado, un relé tendrá una vida útil muy corta si puede manejar la velocidad del pulso.
Kurt E. Clothier
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.