Convertores Analógico-Digitais (ADCs): Guia Completo com Aplicações e Exemplos

Principais Pontos a Reter

  • Os Conversores Analógico-Digitais (ADCs) são ferramentas essenciais para transformar sinais contínuos, como som e luz, em dados digitais, abrindo portas para inúmeras aplicações.
  • A frequência de amostragem de um ADC define a quantidade de leituras efetuadas a cada segundo. Frequências mais altas resultam numa representação mais fiel do sinal original.
  • A profundidade de bits de um ADC impacta diretamente a qualidade da amostra. Mais bits significam medições mais suaves e precisas. Existem vários tipos de ADCs, cada um com diferentes vantagens em termos de velocidade, exatidão e consumo de energia.

Os conversores analógico-digital (ADCs) desempenham um papel crucial na conversão de fenômenos do mundo real em valores que podemos usar em projetos de programação. Mas, como é que um ADC converte sinais analógicos em digitais que podemos usar?

Aplicações dos ADCs

Os ADCs estão presentes em quase todos os dispositivos eletrônicos. Encontramo-los nos nossos telefones, a transformar a nossa voz em sequências binárias, nos nossos carros, a medir a rotação das rodas, e até em osciloscópios, a ajudar a capturar e representar sinais. No entanto, a sua aplicação mais comum é no domínio do vídeo e do áudio, onde a digitalização de luz e som é crucial.

O Conceito de Taxa de Amostragem e o Seu Impacto num ADC

Uma das métricas mais importantes de um ADC é a sua taxa de amostragem, que corresponde ao número de leituras efetuadas por segundo.

Um osciloscópio de última geração pode efetuar dez mil milhões de amostragens por segundo, enquanto o pequeno ADC MCP3008 suporta um valor modesto de duzentos mil. No campo do áudio, uma taxa de amostragem de 44.100 amostras por segundo (44,1 kHz) é comum.

Quanto mais amostras forem recolhidas, mais fiel será a representação do sinal. Em algumas situações, essa precisão é vital, noutras, nem tanto. Imaginemos que estamos a construir um painel de faders (para controlar componentes eletrónicos como numa mesa de iluminação ou áudio) com alguns potenciómetros. Os valores que precisamos medir não vão mudar milhões de vezes por segundo, pois os nossos dedos não se movem tão depressa. É suficiente ter amostras que produzam um resultado suave e responsivo.

A Importância da Taxa de Bits na Qualidade de um ADC

Outro aspeto crucial é a qualidade da amostra obtida, que é determinada pela taxa de bits. Esta indica quantos estados “ligado-desligado” são usados para representar a tensão digitalmente. Mais bits resultam em mais valores possíveis para registar em cada amostra, produzindo um resultado mais suave e exato.

Se não estiver familiarizado com o sistema binário, recomendamos que consulte informação sobre o tema. Quantos bits são necessários? Depende da aplicação. Por vezes, somos limitados pelo protocolo usado. O protocolo MIDI 1.0, por exemplo, está limitado a valores de sete bits (e por vezes, catorze bits). Noutros casos, a limitação reside na perceção humana. Se o aumento da fidelidade não resultar numa melhoria percetível no resultado, pode não valer a pena.

Como a Multiplexação Melhora a Eficiência do ADC

Circuitos integrados ADC populares, como o ADS1115 e o MCP3008, oferecem várias entradas. No entanto, internamente, utilizam apenas um único ADC. Isto é possível graças aos multiplexadores incluídos nestes dispositivos. Os multiplexadores, comuns em eletrónica e telecomunicações, atuam como controladores de tráfego para o seu ADC. O ADC pode amostrar um canal, depois o seguinte, e assim por diante. Assim, se tiver oito canais e uma taxa de amostragem de 200.000, pode alternar entre eles, obtendo 25.000 amostras por canal.

Diversidade de Tipos de ADC

Os ADCs operam de várias formas, dependendo do custo e dos recursos necessários.

Um ADC Flash usa um divisor de tensão complexo. Um conjunto de resistências divide a tensão de referência em incrementos, que são comparados com a entrada através de um conjunto de comparadores. Os ADCs Flash são extremamente rápidos, mas a sua profundidade de bits é limitada devido ao número de comparadores necessários. O seu consumo de energia também é elevado.

Um ADC Subrange tenta minimizar estas desvantagens dividindo o trabalho em duas unidades: uma para calcular a tensão de forma aproximada e outra para refiná-la. Ao dividir o processo, reduz-se o número de comparadores. Alguns ADCs de subfaixa dividem o trabalho em três fases, com correção de erros integrada.

Os ADCs SAR (Registro de Aproximação Sucessiva) funcionam através de uma pesquisa binária. Suponha que temos oito bits para preencher. O SAR começa em 10000000, que é o valor intermediário (00000000 é o valor inferior e 11111111 o valor superior). Se a tensão exceder este ponto médio, o SAR mantém o dígito mais à esquerda como 1; caso contrário, define-o como 0. O processo repete-se com o dígito seguinte e assim por diante. Desta forma, o valor estimado aproxima-se gradualmente do valor real:

O processo de busca é refinado continuamente, dividindo as possibilidades ao meio e verificando se o resultado é superior ou inferior ao ponto médio. Neste exemplo, o valor encontra-se entre 0 e 255, e após algumas iterações, o ADC determina que é cerca de 77.

Os conversores Sigma-delta são dos mais complexos. São usados em aplicações musicais e de medição de sinais de alta precisão. Funcionam sobreamostrando um sinal e refinando o resultado através de filtragem e cálculos complexos. Este processo reduz a taxa de amostragem, aumentando a precisão. Estes ADCs são ideais quando o ruído e a precisão são mais importantes do que a velocidade.

Por fim, temos os ADCs Integrantes, ainda mais lentos do que os sigma-delta. Estes usam um capacitor cuja taxa de carga é usada para determinar a tensão de entrada. A taxa de amostragem é frequentemente sincronizada com a frequência da fonte de alimentação para minimizar o ruído.

A Teoria de Nyquist-Shannon

Para descrever digitalmente um sinal analógico, necessitamos de pelo menos dois pontos por ciclo: um no pico e outro na base. Portanto, a frequência de amostragem deve ser, pelo menos, o dobro da frequência mais alta que esperamos medir.

Este valor é conhecido como frequência de Nyquist, nome do físico sueco-americano Harry Nyquist. A teoria foi nomeada em homenagem a Nyquist e Claude Shannon (um matemático e criptógrafo), mas não em homenagem a Edmund Whittaker, que teve a ideia antes de qualquer um deles.

No entanto, existe um problema com esta teoria. É impossível saber com antecedência quando surgirão o pico e a base de uma onda. E se as amostras forem recolhidas no meio da onda de entrada? Uma alteração no sinal de entrada pode distorcer completamente o resultado capturado:

Ou até mesmo criar novas formas de onda que nem sequer existiam:

Estas distorções são conhecidas como “aliasing”.

O Problema com o “Aliasing”

É provável que esteja familiarizado com a ilusão da “roda de carroça”, que ocorre quando um objeto em rotação é filmado. As rodas de um carro ou as hélices de um helicóptero parecem girar para trás, embora muito lentamente. Em alguns casos, as lâminas podem parar completamente (com resultados curiosos).

Em jogos antigos, é possível que tenha reparado que linhas paralelas podem produzir estranhos artefactos distorcidos. Vedações, escadas e roupa às riscas começam a ter um aspeto peculiar. Ou aqueles sons agudos que por vezes se ouvem quando se fala através de uma conexão digital de baixa qualidade? Trata-se de distorção, um tipo específico. De onde vêm essas frequências estranhas que emergem do ruído? Se estiver a ouvir um conteúdo harmonicamente rico, como uma bateria, o efeito é ainda mais percetível, especialmente nas frequências agudas.

Compreender a causa de um destes exemplos ajuda a compreender todos os outros. No caso da roda da carroça, a taxa de quadros fixa significa que não conseguimos capturar o movimento corretamente. Se algo girar 350° por cada quadro, é natural perceber que, na verdade, se moveu 10° para trás. Em outras palavras, não há informação suficiente para representar o que está a acontecer. As amostras que coletamos não correspondem ao que estamos a tentar medir.

Este problema não é exclusivo da conversão analógico-digital. Em muitos casos, estamos a converter um tipo de sinal digital noutro.

Qual é a solução? Existem várias. Uma opção é aplicar um filtro especial para minimizar estes artefactos, algo que muitos ADCs fazem nos bastidores. Outra solução é recolher mais amostras do que o necessário. Quanto mais amostras forem recolhidas, mais precisa se torna a representação da onda:

Amostragem com Qualidade Superior para Melhores Resultados

Se este tipo de assunto for do seu interesse, saiba que estamos apenas a começar. Os ADCs são dispositivos muito complexos.

No entanto, do ponto de vista do utilizador final ou do entusiasta do Arduino, os ADCs são bastante simples. Tensões entram e números saem. Independentemente do que pretenda medir, seja o nível de humidade do solo, as oscilações da voz humana ou o fluxo de fotões refratados através de uma lente, existe, provavelmente, um ADC que faz o trabalho.