25 de outubro de 2021

Do bit Ao Byte

Embarcados, Linux e programação

Potenciômetro com Arduino

potenciômetro com Arduino

Sempre antes de montar algum projeto procuro escrever sobre os periféricos relacionados. Tenho certeza que já escrevi ao menos 2 artigos sobre potenciômetro, mas já faz tanto tempo que não consigo mais encontrar facilmente entre os quase 850 artigos publicados, com exceção de outro potenciômetro slider. Mas não faz mal, é bom renovar de vez em quando. Vamos ao artigo de potenciômetro com Arduino.

Das vezes que escrevi sobre potenciômetro não estava usando um módulo como agora. Na protoboard o trabalho é um pouco diferente, mas com o módulo que já vem pronto pra uso é muito mais fácil, além de ajudar na implementação também. Esse potenciômetro slider 10K é bastante suave, os outros que já tive eram mais duros. Esse artigo é básico de tudo, pode servir bem para iniciantes, mas qualquer nível acima não vai encontrar nenhuma surpresa nesse artigo.

Wiring do módulo potenciômetro

Usei o OUT0 em A0 do Arduino, 5V no VCC e GND no GND. Não tem segredo.

Para experimentar, coloquei um LED na protoboard com um resistor de 330Ohms, mas invés de alimentar diretamente pelo potenciômetro, fiz um map no código do Arduino. Isso é necessário porque o ADC do Arduino Mega tem 10 bits, enquanto o PWM tem 8 bits.

Código de teste

O código utilizado foi esse:

void setup() {
  Serial.begin(9600);

}

void loop() {
int val = analogRead(0);
  val = map(val, 0, 1023, 0, 255);
  String msg = "/*Analog 0," + String(analogRead(0)) + ", PWM ," + String(val) + "*/";
  Serial.println(msg);
  analogWrite(7,val);
  delay(10);
}

O arquivo json para essa leitura no Serial Studio é esse:

{ 
   "t":"%1", 
   "g":[ 
      { 
         "t":"Analog 0", 
         "d":[ 
            { 
               "t":"5V", 
               "v":"%2", 
               "g":true, 
               "u":"signal" 
            } 
            ] 
      }, 
      { 
      "t":"%3", 
         "d":[ 
            { 
               "t":"Map", 
               "v":"%4", 
               "g":true, 
               "u":"PWM" 
            } 
            ] 
      } 
      ] 
}
 

Vídeo

A parte legal está aqui. Para mostrar o efeito do map ao proporcionalizar a leitura e acender o LED, fiz um vídeo mostrando a tensão no osciloscópio, o LED sendo aceso, a saída analógica no gráfico e a saída PWM no gráfico também, utilizando o Serial Studio para tal. O Vídeo é tão curto quanto esse artigo, mas acredito que assim iniciantes poderão acompanhar os projetos que disponho, que vão um pouco além do básico. Se é iniciante, agora já sabe como usar potenciômetro com Arduino. Se já sabia, pode agora se distrair com o vídeo. A string está no formato para ler e gerar o gráfico no Serial Studio.

Onde comprar o potenciômetro?

Esse é mais um produto da AutoCore Robótica, que você encontra na loja através desse link.