Conversao Digital Analogica: mudanças entre as edições
Linha 60: | Linha 60: | ||
O circuito é bastante simples, entretanto a escolha do '''resistor R''' e do '''capacitor C''' tem influencia na '''frequência de corte''' do circuito, na '''ondulação da tensão sobre o capacitor''' ('''''ripple''''') e no '''tempo de resposta''' do circuito. A referência <ref>SCOTT. Arduino’s AnalogWrite – Converting PWM to a Voltage, 2011. https://provideyourown.com/2011/analogwrite-convert-pwm-to-voltage/</ref> faz uma análise detalhada destes fatores e também fornece um link para uma [http://sim.okawa-denshi.jp/en/PWMtool.php ferramenta para calculo ''online''] do '''ripple''' a partir da '''frequência de corte''' ou dos valores do '''resistor''' e '''capacitor''' escolhidos para filtragem de uma onda quadrada '''PWM'''. | O circuito é bastante simples, entretanto a escolha do '''resistor R''' e do '''capacitor C''' tem influencia na '''frequência de corte''' do circuito, na '''ondulação da tensão sobre o capacitor''' ('''''ripple''''') e no '''tempo de resposta''' do circuito. A referência <ref>SCOTT. Arduino’s AnalogWrite – Converting PWM to a Voltage, 2011. https://provideyourown.com/2011/analogwrite-convert-pwm-to-voltage/</ref> faz uma análise detalhada destes fatores e também fornece um link para uma [http://sim.okawa-denshi.jp/en/PWMtool.php ferramenta para calculo ''online''] do '''ripple''' a partir da '''frequência de corte''' ou dos valores do '''resistor''' e '''capacitor''' escolhidos para filtragem de uma onda quadrada '''PWM'''. | ||
Esta estrutura com '''filtro RC passa baixas''' funciona bem caso a carga não exija corrente significativa. Caso a carga demande corrente pode-se utilizar um ''buffer'' com '''Amplificador Operacional''' para fornecer corrente. | |||
===Exemplo de filtragem da saída PWM do Arduíno=== | ===Exemplo de filtragem da saída PWM do Arduíno=== |
Edição das 11h52min de 19 de outubro de 2021
Conversão Digital Analógica
Um dispositivo conversor digital analógico (DAC) permite gerar uma tensão elétrica analógica a partir de um dado digital.
Conversores DA
Um exemplo de Conversor Digital Analógico (DAC) de 4 bits é ilustrado na figura, utilizando um circuito somador com amplificador operacional e uma malha resistiva com pesos binários.
-vout = 1/2 D3 + 1/4 D2 + 1/8 D1 + 1/16 D0
- Funcionamento do circuito
- Entradas digitais (0V ou 5V) e saída analógica variando entre 0V e 5V.
- O circuito DAC de 4 bits vai fornecer uma saída analógica escalonada em 16 níveis de tensão.
- Exemplos de algumas entradas e os respectivos níveis de tensão de saída:
Entrada digital Ganho Ampop Saída analógica 1000 1/2 2,5 V 0100 1/4 1,25 V 0010 1/8 0,625 V 0001 1/16 0,3125 V
- Para uma conversão com um número elevado de bits, a relação entre as resistências se torna elevada o que dificulta a precisão.
Existem outras estruturas eletrônicas que permitem implementar conversores DA, além de placas conversoras DAC para uso com microcontroladores.
Placa Conversor Digital Analógico DAC
Um exemplo de placa Conversor Digital Analógico DAC é a placa Mcp4725, a qual pode ser utilizada com Arduíno ou outros tipos de microcontroladores.
O módulo MCP4725 converte sinais digitais em sinais analógicos. Os sinais são enviados via interface I2C e no pino OUT sai o valor analógico correspondente.
Microcontroladores e Saídas PWM
Muitos microcontroladores, como o Arduíno, emulam saídas analógicas através de modulação PWM (Pulse Width Modulation).
O sinal PWM é uma onda quadrada, com frequência constante, mas a fração de tempo em que o sinal é HIGH (5V) (duty cycle) pode variar entre 0 e 100%, fornecendo uma média de tensão variável na saída [1].
O Arduíno possui 6 saídas PWM são identificadas pelo sinal ~ e fornecem pulsos PWM de 8 bits, possibilitando, portanto, 256 valores diferentes de tensão analógica entre 0V e 5V, com passos de 0 a 255.
Entretanto, em situações onde uma sinal PWM não possa para ser utilizado como controle analógico pode ser necessário utilizarmos um filtro de saída PWM ou até dispormos de um conversor DAC, o qual pode necessitar circuitos eletrônicos analógicos, como Amplificadores Operacional, capacitores, resistores e outros.
Convertendo PWM em tensão elétrica
Em situações onde uma onda quadrada PWM não for apropriado para realizar um controle analógico pode utilizar um filtro passa baixas visando converter a saída em uma tensão elétrica correspondente ao percentual do sinal PWM. Desta forma, poderemos ter um conversor DA para uso com o Arduíno ou outros microcontroladores.
O circuito filtro passa baixas RC abaixo pode ser utilizado neste caso.
Neste circuito, quando um tensão é aplicada na entrada do resistor R, o capacitor C começa a carregar. Lembre que o capacitor bloqueia corrente contínua e permite um maior fluxo de corrente a medida que a frequência do sinal elétrico aumenta. Para altas frequências o capacitor se comporta como um curto circuito. Para valores de frequência intermediária o circuito RC vai filtrar o sinal de entrada de acordo com a constante de tempo do circuito.
O circuito é bastante simples, entretanto a escolha do resistor R e do capacitor C tem influencia na frequência de corte do circuito, na ondulação da tensão sobre o capacitor (ripple) e no tempo de resposta do circuito. A referência [2] faz uma análise detalhada destes fatores e também fornece um link para uma ferramenta para calculo online do ripple a partir da frequência de corte ou dos valores do resistor e capacitor escolhidos para filtragem de uma onda quadrada PWM.
Esta estrutura com filtro RC passa baixas funciona bem caso a carga não exija corrente significativa. Caso a carga demande corrente pode-se utilizar um buffer com Amplificador Operacional para fornecer corrente.
Exemplo de filtragem da saída PWM do Arduíno
O Arduíno fornece saída PWM (portas 3, 5, 6, 9, 10 e 11) com frequência de 490 Hz [1].
Utilizando a ferramenta para calculo online descrita acima, para uma onda PWM de 0V a 5V, com duty cicle de 50% e frequência de corte de 10 Hz, obtêm-se um ripple aceitável (Vpp = 0,15 V) e um tempo de resposta de 0,04 s, como mostra a figura abaixo.
Cálculo dos valores de R e C a partir da frequência de corte:
fc = 1 / 2πRC
Escolhendo
C = 2,2 uF fc = 10 Hz
temos
R = 1/2πfcC R = 1/2π 10 2,2u R = 7,2 kΩ
Módulo Conversor de Sinal PWM para Tensão Analógica
Existem no mercado módulos para conversão do sinal PWM para tensão analógica, como o módulo LC-LM358.
O módulo LC-LM358 converte sinal PWM para sinal analógico, PWM duty cicle 0% a 100% para tensão de 0 a 10V.
São aplicados para interface com PLC (Controladores Lógico Programáveis) ou outras placas de controle industrial.
Referências
- ↑ 1,0 1,1 https://www.arduino.cc/reference/en/language/functions/analog-io/analogwrite/
- ↑ SCOTT. Arduino’s AnalogWrite – Converting PWM to a Voltage, 2011. https://provideyourown.com/2011/analogwrite-convert-pwm-to-voltage/
Evandro.cantu (discussão) 13h53min de 18 de outubro de 2021 (-03)