Circuitos integrados 7: PWM com 555

Nos exemplos com 555 mostrados nos posts anteriores, é impossível ter um pulso de nível BAIXO que seja maior que um pulso de nível ALTO. De acordo com as fórmulas, qualquer aumento de R2 que aumenta a duração do pulso em estado BAIXO, também aumenta o pulso em estado ALTO:

ALTO = 0,7 x C x (R1+R2)
BAIXO = 0,7 x C x R2

O pulso em estado ALTO acontece durante a carga do capacitor, com a corrente fluindo pelos dois resistores. Já o pulso em estado BAIXO corresponde à descarga do capacitor através do resistor R2 e pino 7 (DIS). Uma forma de evitar que R2 influencie no pulso ALTO é fazer com que ele não participe da carga do capacitor, apenas da descarga. Isto é possível usando um diodo.

Um diodo só permite a passagem de corrente em um sentido. Colocando um diodo em paralelo com o resistor R2, podemos deixar a corrente passar pelo resistor apenas quando ele estiver descarregando. Durante a carga o resistor será ignorado porque o diodo se comporta como um circuito fechado.

O circuito abaixo ilustra essa configuração:

Agora é possível calcular a duração de cada pulso usando apenas um resistor, e assim escolher suas durações de forma independente:

ALTO = 0,7 x C x R1
BAIXO = 0,7 x C x R2

Existe uma variação do circuito acima que é mais comum por permitir variar a largura dos pulsos mantendo R1 fixo. Essa configuração é importante para o uso do 555 com PWM – uma técnica eficiente para simular saída analógica com o 555. Esta variação está mostrada abaixo:

As fórmulas para calcular a duração de caba pulso são:

ALTO = 0,7 x C x (R1 + Rc)
BAIXO = 0,7 x C x Rd

As fórmulas são aproximadas e não levam em conta a queda de tensão nos diodos (que é de aproximadamente 0,7V).

PWM – Pulse Width Modulation

PWM significa modulação de largura de pulso. É uma das principais técnicas usadas para simular uma saída analógica através de um circuito digital. Consiste em gerar pulsos digitais em alta frequência, variando sua largura para produzir uma valor médio de tensão variável. Ou seja, o PWM é um pisca-pisca que varia os tempos aceso e apagado muito rapidamente, produzindo a ilusão de que a intensidade está variando.

Por exemplo, se um pulso de onda quadrada de 5V fica metade do tempo ligado, e metade do tempo desligado (em 0V), o valor médio simulado é de 2,5V. Aplicando um sinal desses a um LED, ele piscará muito rapidamente ficando aceso metade do tempo, e irá aparentar ter metade do brilho que teria com um valor contínuo.

Se o pulso ficar 25% do tempo em 5V, o valor médio cai para 1,25V, e se ele ficar 75% do tempo em 5V e apenas 25% do tempo em 0, o valor médio aumenta para 3,75V. Comparada ao uso de um potenciômetro, que consome energia dissipando na forma de calor, PWM é uma técnica mais eficiente de variar tensão e corrente, já que a carga fica desligada (consumindo zero amperes) durante o tempo que o pulso é BAIXO.

Com PWM o 555 pode ser usado para implementar aplicações como controles de intensidade luminosa (dimmers) e controle de velocidade de motores. É bastante usado em circuitos com Arduino, que implementa suas saídas analógicas usando PWM.

Nem todo circuito funciona com PWM. Dispositivos que têm limite de tensão menor que o valor máximo produzido podem ser danificados com uma tensão simulada baixa (pois ela sempre alterna entre valores máximo e mínimo). Nessas situações é preciso construir um circuito retificador para converter as ondas quadradas em um valor contínuo.

Os gráficos a seguir ilustram o funcionamento de PWM descrito acima.

Para que o primeiro pulso possa ser menor que o segundo, é preciso usar a configuração mostrada anteriormente (usando dois diodos) para poder controlar isoladamente os tempos de carga e descarga do capacitor.

Nos experimentos a seguir, implementaremos PWM nessa configuração usando um potenciômetro, que irá permitir a variação do equilíbrio de resistências de um divisor de tensão, e desta forma variar os tempos de carga e descarga do capacitor, e consequentemente a largura dos pulsos na saída OUT (pino 3) do 555.

Experimento 21 (extra) – Dimmer usando PWM

Material necessário:

  • Fonte ou bateria de 9V
  • 1 resistor de 1k Ω
  • 1 resistor e 680 Ω
  • 1 potenciômetro de 100k Ω
  • 2 diodos de propósito geral (1N4148 ou equivalente)
  • 2 capacitores de 10nF
  • 1 LED de qualquer cor
  • 1 circuito integrado 555
  • Protoboard, fios, jumpers

O circuito abaixo controla a intensidade do brilho do LED de forma eficiente usando PWM, em vez de desperdiçar energia dissipando o excesso de corrente com um resistor limitador (como fizemos no experimento com LED RGB).

Com PWM o LED permanece desligado parte do tempo. O LED acende e apaga completamente muito rapidamente, portanto a redução de brilho é uma ilusão causada principalmente pela persistência da visão (é o mesmo efeito que ocorre quando assistimos um filme no cinema), embora parte do efeito também se deva ao fato de que a onda quadrada não é perfeita.

O potenciômetro varia a largura de pulso para mais ou para menos, fazendo com que o brilho aparente do LED varie. O LED é a carga do circuito, e pode ser substituído por outro dispositivo analógico ou circuito que funcione com PWM.

A ilustração abaixo é uma possível implementação para o circuito acima.