Ativando vários leds com arduino usando transistor


8

Quero poder ligar 50 LEDs vermelhos com um pino de um Arduino. Não quero controle individual, só quero poder ativá-los ou desativá-los.

Eu encontrei este exemplo . Ele usa um transistor 2N3904. É essa a abordagem que quero adotar? Presumo que precisaria de um transistor de potência mais alta?

Estou usando uma fonte de alimentação externa conectada a uma placa personalizada com um regulador de tensão de 5V, por isso estou alimentando os LEDs diretamente desse regulador.

Os LEDs vêm na forma deste conjunto de barras de luz LED (ou pelo menos muito semelhante) ...

Eu mencionei em um comentário em uma resposta abaixo que eu estava usando um resistor de 330 ohm com cada LED. Em outra parte deste projeto, eu uso as barras de luz como medidores de nível, e cada LED separado é controlado por um registrador de mudança, portanto, o resistor separado. Depois de pensar nisso, percebo que não preciso ter um resistor em série com cada LED agora, pois eles estão todos ligados ou desligados (hmmm ... desculpe pelos meus comentários aleatórios!).

Eu pensei que poderia ter algum tipo de interruptor eletrônico que pode desconectar o terra ou 5V. Isso é viável?


Isto é para um controlador de software que estou fazendo. As luzes precisa ser capaz de responder de forma relativamente rápida (ou seja, a cada 200 milissegundos)
Adam

1
O software é fácil de descobrir. Eu acho que um pouco mais de explicação do hardware ajudaria. Que tipo de barra de LED você está usando? Os LEDs são em série, paralelo, cátodo comum, ânodo comum ou todos independentes? "Ligar os LEDs diretamente da rede elétrica" ​​significa do regulador de 5V? Porque isso pode significar muitas outras coisas. Você mencionou um resistor de 330 ohms por LED ... então cada LED (todos os 50) tem um resistor em série? Apenas tentando esclarecer para que possamos lhe dar a melhor resposta possível.
Kurt E. Clothier

Oi Kurt, editei minha postagem original com as informações. Cheers
Adam

Respostas:


7

Um transistor é basicamente um comutador que pode desconectar o terra ou 5V. Existem transistores de todos os tipos, e alguns podem trocar cargas realmente enormes. 50 LEDs não é grande coisa.

Portanto, a questão é a seguinte: Um único 2N3904 pode alternar 50 LEDs?

Para responder a isso, precisamos saber primeiro que tipo de LEDs. Mas vamos supor que você esteja usando a variedade usual nada especial. Uma estimativa razoável da corrente máxima destes é20mA. Se você tem 50, a corrente máxima é20mA50=1000mA. Olhando para a folha de dados , vejo que a corrente máxima do coletor para 2N3904 é200mA. Portanto, a resposta é não: você não pode alternar 50 LEDs com um 2N3904.

Suponho que você tenha várias opções:

  • use vários 2N3904
  • use menos LEDs
  • use os mesmos LEDs, mas conduza-os com menos corrente
  • use um transistor maior (o TIP121 é muito fácil de encontrar)
  • use outro dispositivo de comutação

Destas, acho que reduzir a corrente do LED ou usar um transistor maior é provavelmente a solução mais provável. Outros dispositivos de comutação (como um relé) são provavelmente mais caros e mais lentos.


1
* Use um MOSFET IRLML2502, meu componente favorito do dia. :-)
Anindo Ghosh

Estou usando 5 barras de luz LED vermelhas (10 LEDs em cada). Estou usando um resistor de 330 ohm em série com cada LED, então estou procurando cerca de 2 mA por LED. Isso totaliza menos do que as especificações do transistor (eu acho - eu sempre fico um pouco confuso ao calcular o uso total de corrente!) #
Adam

Isso parece improvável. Seu resistor representaria uma queda de tensão de 330Ω x 0,002A = 0,66V, portanto, a menos que seus LEDs tenham um Vf de 4,34V (o que seria incomumente alto para LEDs vermelhos), é provável que sua corrente seja consideravelmente maior.
microtherion

1
Esta resposta considera apenas os leds conectados em paralelo. Os leds podem ser dois em série. Portanto, a corrente seria de 20mA * 25 cadeias. Mas o @Adam 2mA é baixo para um led, eles ainda acendem com o consumo atual?
quer

1
@ Passerby, compreensível. Tenho certeza de que alguns dos de alta potência exigem um pouco mais para ligar. Mas os LEDs comuns com os quais trabalhei são muito felizes com pequenas correntes (até muito menos de 1mA), embora não brilhem muito. De fato, os LEDs neste projeto meu usam apenas 1,8mA cada. E como eles são multiplexados e apenas em 1/3 do tempo, a corrente efetiva é mais parecida com 0,6mA. Mesmo assim, a tela é facilmente visível sob luz brilhante a uma distância decente. Projetosbykec.com/projects/misc
Miscellaneous/…

3

Considerando as informações fornecidas (50 LEDs vermelhos anotados em 1,95V, fonte de 5v, corrente de 2mA, resistores de 330Ω), o seguinte funcionaria.

Levando em conta o cálculo comum do resistor de Led:
(Vcc - Voltagem direta) / Corrente
Onde Vcc é 5v, a Voltagem direta é de 1,95v por led, pois temos dois em série, 1,95v * 2 e a Corrente desejada é de 2mA.
(5 - (1,95 * 2)) / 0,002 ou (5 - 3,9) / 0,002 ou 1,1 / 0,002 = 550.
Como você tem resistores de 330Ω, o ajuste para isso daria 3mA por série. Não por led, mas por série, pois a corrente é igual no caminho de uma série. Cada série de resistores, neste caso dois, usaria os mesmos 3mA de corrente. Portanto, isso simplifica a equação para cadeias da série 3mA * 25, apenas 75mA que precisam ser trocadas.

Qualquer transistor de sinal pequeno comum como o 2n3904 pode suportar 75mA sem problemas. Um resistor de base de 1kΩ é usado entre a base do transistor e o pino do MCU.

Observe que o esquema abaixo mostra apenas uma barra de led, você adicionaria o restante da mesma maneira. Conecte o cátodo do primeiro led ao ânodo do próximo led e um resistor por par.

esquemático

simular este circuito - esquemático criado usando o CircuitLab


-3

Você deve usar o pino no Arduino para controlar um transistor que liga um relé e os contatos do relé acendem todos os LEDs aplicando terra. Se você precisar usar um transistor, sim, precisará encontrar um que possa lidar com toda a corrente. Mesmo com um relé, verifique as classificações atuais do contato. Veja o exemplo de circuito abaixo. Dependendo da classificação atual e da resistência da bobina do relé selecionado, você pode ou não precisar de R2.

insira a descrição da imagem aqui


Um relé tem um tempo de comutação relativamente alto e vida útil mecânica limitada. Pode valer a pena pedir ao OP para confirmar que eles não desejam trocar os LEDs muito rapidamente ou com muita frequência.
Anindo Ghosh

Obrigado. Eu acho que um relé seria muito lento para minha aplicação. Eu adicionei um comentário ao meu post original.
Adam

Não há absolutamente nenhum sentido em usar um relé quando existem tantos transistores que podem mudar correntes muito grandes! Além da baixa velocidade e do enorme tamanho dos relés, as soluções elétricas quase sempre superam e superam as mecânicas.
Kurt E. Clothier

Embora os relés possam não ser a melhor opção, eles são uma opção viável (a velocidade não suporta). +1 para compensar quem diminuiu o voto.
quer

Foi isso que eu quis dizer: não é a melhor opção, mas eu não votaria contra ... Se qualquer tipo de controle pulsado for usado, um relé terá uma vida útil muito curta, se puder suportar a velocidade do pulso.
Kurt E. Clothier
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.