Entendendo o Funcionamento de Uma Porta Analógica

Font Size

Neste artigo estaremos entendendo o funcionamento de uma porta analógica por completo. Além disso, você vai saber como é construído o valor lido pelos microcontroladores. Por fim, veremos toda a parte de multiplexação das portas analógicas, e você sabia que podemos expandir para até 16? Então vamos nessa!

Dando o seu contexto.

Primeiramente, você já deve ter feito o projeto com LDR ou potenciômetro. Ou até mesmo testado o seu primeiro servo motor. Em todos eles, acredito que tenha utilizado algumas das entradas analógicas (as famosas A0, A1, A2, …).

Além disso, quando estamos utilizando elas, estamos também trabalhando com alguns conceitos como:

Todos estes conceitos tem a sua importância aqui. Entretanto, como eles trabalham em conjunto para pegar o valor de tensão que está sendo enviado para a porta A0 e resultar no valor de 403 usando o analogRead()? Bom, continue a sua leitura!

Projetos usando as Portas Analógicas.

Então, continuando o nosso aprendizado de hoje, deixo abaixo alguns projetos super legais. Em todos eles, foram utilizadas as portas analógicas. Por isso, perceba a variedade de projetos e como as portas analógicas foram essenciais neles.

Portanto, perceba que a utilização dessas portas se faz muito necessário. Sabe o que é mais necessário ainda? Saber como ela trabalha. Então vamos nessa!

Conceito de Aproximações Sucessivas.

O conceito de aproximações sucessivas é um método matemático muito utilizado em sistemas. O seu principal objetivo é encontrar uma constante, ou um valor mais próximo do resultado de uma função. No nosso caso, o objetivo será descobrir o valor da tensão!

Entendendo o processo.

Tal método parte sempre de um valor inicial (em nosso caso, como o Arduino UNO tem uma maior tensão de 5V, então partimos da metade 2,5V). Beleza, agora o que fazer? O Arduino vai variar o valor dessa tensão interna dele. Aqui entra mais dois conceitos:

 

Fonte: Brincando com Ideias

Observando a imagem acima, perceba que o Arduino identifica o que ele está recebendo graças ao seu comparador. Ou seja, vamos supor que estou regulando a tensão do circuito na porta A0 e enviando 2V para ela.

Agora, vou aplicar o comando analogRead(A0) e quero saber o valor lido. Para isso o Arduino vai passar a realizar esse processo.

Processo de Identificação do Arduino.

Começo com 2.5V e pergunto ao meu comparador: isso é maior que o valor de entrada? Sim (0) e Não (1). Agora ele faz o processo da aproximação e divide 2.5V pela metade e vai até 1.25 e faz a mesma pergunta aos comparador: isso é maior ou menor? Sim (0) e Não (1).

Ele realiza esse processo 10 vezes. Pois adivinha? O valor 10 vem da sua resolução 2^10 = 1023 lembra? Assim, como na imagem, o valor em binário é 403. Portanto a saída do analogRead(A0) = 403.

Detalhes Importantes.

Vale ressaltar alguns pontos importantes:

Expandindo as portas do Arduino.

Para finalizar o nosso estudo de hoje, vamos conhecer o CD74HC4067. Ele é um um módulo no qual conseguimos expandir as saídas analógicas para até 16 canais!

Além disso, com relação a preocupação da tensão de operação, que discutimos em um artigo anterior, ele pode atuar tanto nas tensões de 3,3V e 5V. Portanto, você só precisa se preocupar com a tensão necessária para alimentar todos os componentes ligados nas portas!

Ficou alguma dúvida?

Então, como foi o estudo até aqui? Ficou alguma dúvida? Comenta abaixo! Caso tenha sido bem esclarecedor, então compartilhe. Conteúdo de qualidade merece ser compartilhado para o mundo. Vejo você no próximo artigo!

Posts relacionados

Monitorando ambiente com NodeMCU

por autocore
8 anos ago

Construindo um Radar com Sensor Ultrassônico

por Danilo Nogueira
6 anos ago

Utilizando sensor TCRT5000 com Arduino

por autocore
8 anos ago
Sair da versão mobile