Leituras analógicas.

article featured image

Na aula de hoje vamos aprender a utilizar os pinos analógicos do nosso Arduíno para ler a voltagem de um potenciómetro. Podemos ver os pinos analógicos no nosso Arduíno identificados pelos valores de A0 a A5.

Para o circuito de hoje vamos precisar do seguinte material: Arduíno, potenciómetro, breadboard e 5 jumpers.

Olhando novamente para o último esquema da aula anterior, Lei de Ohm e potenciómetros, podemos ver que Rp = R1 + R2 e que Vout = (R2 / Rp) * Vin

O que temos feito nas aulas anteriores, nomeadamente na aula oito onde falamos de valores analógicos, é enviar valores do Arduíno para o nosso circuito eletrónico. Hoje, vamos fazer o inverso, vamos ler valores do circuito para o Arduíno utilizando as portas analógicas deste.

Analisando as duas imagens anteriores podemos fazer a seguinte leitura: o potenciómetro vai receber 5V no pino de topo, este valor irá percorrer o nosso potenciómetro até R1, aqui teremos de ver como está colocado o regulador, se estiver virado todo para a esquerda temos: R1 = 5V; R2 = 0V; Vout = 0V; se o regulador estiver todo virado para a direita temos: R1 = 0V; R2 = 5V; Vout = 5V.

Vout é o pino central do potenciómetro, é este que através de uma das portas analógicas do Arduíno vamos aprender a ler.

Relembro que quando escrevemos um valor analógico este está situado entre 0 (0V) e 255 (5V). Agora vamos fazer a leitura, através das portas analógicas do nosso Arduíno, aqui esta é feita com uma escala diferente situada entre 0 (0V) e 1023 (5V).

Muito bem, vamos agora passar ao código necessário para fazer esta leitura:

O primeiro passo é identificar a porta analógica que vamos usar no nosso Arduíno;

Em seguida vamos dizer que a porta A0 é para entrada de dados e damos início à porta série;

Por último lemos o valor do potenciómetro e escrevemos esse valor no monitor de série;

A partir deste momento o nosso algoritmo vai mostrar, no monitor série, valores entre 0 (0V) e 1023 (5V). Se pretendermos visualizar estes valores em Volts teremos que efetuar um cálculo, V = 5 / 1023 * leValor, antes de imprimir esse valor no monitor de série. Mas vejamos a imagem seguinte para tentar compreender o porquê desta fórmula:

Vamos ver agora como ficaria o nosso algoritmo e o resultado no monitor de série:

Chamo a atenção para a fórmula:

A programar em Arduíno, quando temos valores inteiros e vamos usá-los para efetuar um cálculo cujo resultado seja real (float) necessitamos de colocar "." a seguir a cada um dos valores, caso não o façamos o resultado será sempre zero.

Espero que tenham gostado da aula e cá vos espero na próxima. Obrigado.