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?
fuente
Respuestas:
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 es20 m A . Si tiene 50, entonces la corriente máxima es20 m A ⋅ 50 = 1000 m A . Mirando la hoja de datos , veo que la corriente máxima del colector para 2N3904 es200 m A . Entonces la respuesta es no: no puede cambiar 50 LED con un 2N3904.
Supongo que tienes varias opciones:
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.
fuente
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.
simular este circuito : esquema creado con CircuitLab
fuente
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.
fuente