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.