Solução de hardware para acender / apagar o LED com saída digital


11

Gostaria de encontrar uma solução baseada em hardware para fazer com que os LEDs desapareçam dos pinos digitais. isto é, em vez de ligar / desligar, diminui lentamente (500ms) para dentro / fora do brilho total. Não consigo imaginar um capacitor pequeno levando meio segundo para descarregar ... Idealmente, ele seria um bom pacote DIP16 para que eu possa obter uma variedade de LEDs desbotados. O componente dos meus sonhos existe?


Dirigir um LED de um oscilador de onda triangular?
Bitrex

11
Se eu programar um microcontrolador para fazer isso e colocar meu próprio número de peça na embalagem e depois vender para você, isso conta como uma solução de hardware?
gbarry

11
Eu aprecio que você dedique um tempo do seu dia para me vender um script PWM, mas eu estava realmente me perguntando se existe algum componente que possa completar um sinal digital acima de 500ms sem alguma forma de oscilação.
ROM

Teórico, apenas. Passei pelos mesmos pensamentos e finalmente percebi que, em algum nível, um chip é um chip. No entanto, você não deseja oscilações, o que restringe a questão.
gbarry

Por que sem oscilação?
starblue

Respostas:


14

A maneira usual de fazer isso é usar PWM (Modulação por Largura de Pulso)

Praticamente qualquer microcontrolador moderno possui um periférico PWM que pode ser configurado para esse fim. Se você não quiser usar um microcontrolador, um IC PWM dedicado ou um IC de timer como o onipresente 555 podem ser usados.

O processo é simples, a frequência de pulso é definida com rapidez suficiente para que o olho humano não possa detectar cintilação (geralmente acima de 25Hz - consulte Persistência da visão ) e o tempo decorrido vs o intervalo varia de 100% a (brilho total) a 50% a 50% de desconto (meio brilho) a 0% de desconto (desligado)
Observe que isso pode ser facilmente usado para uma matriz; você simplesmente fornece o PWM a todos os transistores de driver de LED (verifique se a corrente base é adequada para bipolar ou use MOSFETs As opções de design dependerão do tipo de LED que você está dirigindo, corrente alta / baixa)

Verifique na rede "555 LED Fade" e você deverá obter muitos resultados. Aqui está um escolhido aleatoriamente a partir daqui (eu não o verifiquei, não posso confirmar se funciona corretamente):

Fade LED

Como alternativa, se a precisão absoluta do tempo não for tão importante, uma opção simples seria usar um filtro RC e uma chave de transistor. Dessa forma, a tampa não precisa fornecer a corrente do LED, apenas a corrente base. Algo assim:

Circuito de Desvanecimento

Simulação:

Simulação do circuito de desvanecimento

Qualquer NPN de propósito geral deve funcionar, e você pode ajustar os valores de R e C para se adequarem.

Essa opção pode ser facilmente estendida para uma matriz de espelhos atual com a adição de um opamp. Este circuito deve ter um bom desempenho, desde que os transistores sejam do mesmo tipo (a fonte usada é + 5V):

Matriz de desvanecimento do LED

Simulação:

Simulação de matriz de desvanecimento por LED

Se você tiver uma tensão de alimentação alta o suficiente, os LEDs podem entrar em séries como esta (a fonte usada aqui é + 10V):

Série Opamp LED Fade

Simulação:

Simulação Opade LED Fade Series

Como alternativa, se você tem uma tensão de alimentação baixa, mas deseja acionar os LEDs em série, há muitos ICs de impulso baratos, como o CAT4238 . Esta parte pode escurecer os LEDS usando PWM ou uma tensão DC variável (os detalhes estão na folha de dados)

IC do impulso do diodo emissor de luz


Resposta abrangente, obrigado. A configuração do RC é a mais próxima do que estou procurando, no entanto, os LEDs desaparecendo de sincronia com níveis de brilho estranhos não parecem promissores. Se eu entendi direito, não seria possível fabricar um IC independente com um resistor variável para alterar o valor de RC e, finalmente, ajustar o tempo de desbotamento?
ROM

11
@rom - desde que os transistores sejam do mesmo tipo e correspondam muito bem, o circuito deve funcionar bem. No entanto, se você estiver preocupado com isso, dê-me um pouco de tempo e postarei uma opção semelhante que não sofrerá com esse problema, e controlada por um resistor variável por tempo de desbotamento (também podemos tornar o desbotamento linear).
Oli Glaser

11
@rom - alterei os circuitos para versões mais estáveis. Qualquer um destes deve ser adequado. As opções de série seriam a melhor opção se você tiver a capacidade de suprimento, mas a fonte de corrente paralela ficará bem, desde que você use os mesmos transistores com ganhos razoavelmente compatíveis (se você tiver um testador de transistor, poderá selecioná-los à mão se você deseja, mas a diferença atual será pequena de qualquer maneira e provavelmente não o suficiente para ser visível) Adicionei um exemplo de IC - você também pode dar uma olhada em todas as outras opções .
Oli Glaser


3

Você pode usar uma tampa pequena + um resistor grande para gerar uma boa característica de carga longa (t = RC), alimentá-la na base de um transistor e acionar o LED a partir daí.

Isso permite uma resistência maior, já que a corrente através do LED não é limitada pelo tamanho do resistor e, em seguida, você pode usar uma pequena tampa.

Seria necessário polarizar o transistor para que ele esteja sendo usado como um amplificador (se atingir a saturação, o LED permanecerá aceso).


1

Se por um pino digital você estiver usando uma saída de algum tipo de processador, é possível alterar o brilho do firmware. À medida que você altera o ciclo de trabalho do pino, o olho age como um filtro e percebe um tempo mais curto como uma diminuição do brilho.

1 - Use uma saída de pino PWM em vez de pinos GPIO digitais. Alterando alguns registros, você pode alterar o tempo de ativação do LED e, portanto, o brilho.

2 - Use um timer (sondado ou interrompido) para alterar o estado do seu pino.

3 - Use ICs de registradores de mudança externos para travar os tempos de ativação / desativação de n LEDs. Embora isso exija mais esforço de programação, é extensível e usa menos pinos GPIO que (1) e (2).


0

Drivers de LED PWM. Eles precisam de configuração de um microcontrolador. 555 Timer + alguns resistores e tampas podem fazer o mesmo, sem necessidade de software.

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.