quinta-feira, 23 de agosto de 2018

14 º Encontro - Controle de Servo motor com potenciômetro

14 º Encontro - Controle de Servo motor com potenciômetro

Olá turma, em nosso encontro do dia 17/08/2018, passamos a controlar nosso servo motor com um potenciômetro (resistor variável). mantivemos a sinalização com leds,
Outra atividade que realizamos foi reconfigurar um dos carros robóticos para funcionar com apenas 3 rodas, todavia não conseguimos concluir esta parte, ainda estamos procurando uma solução apropriada.
Nossa atividade no Tinkercad (simulador virtual).
Eletrônica
Conhecemos com funciona um potenciômetro.
Conectamos um potenciômetro no circuito com Arduino (porta A0).
conforme imagem abaixo:



Programação
Criamos as seguintes variáveis:
int pinoPOT = A0; //PINO ANALÓGICO usado pelo Potenciômetro
int leituraA0; //VARIÁVEL QUE ARMAZENA O valor lido na porta analogica A0


Conhecemos a função map 
Através desta função convertemos os valores lido na porta analógica A0 que vão de 0 a 1023 em 0 a 180 que são os valores que precisamos para controlar o servo.

leituraA0= analogRead(pinoPOT);//analogRead(pinPOT);
 pos= map(leituraA0, 0, 1023, 180, 0); //EXECUTA A FUNÇÃO "map" DE ACORDO COM OS PARÂMETROS PASSADOS.

Fizemos alterações  na função posLed que monitora a posição em graus.Para solucionarmos a visualização do led Verde, aumentamos a faixa de sensibilidade entre mair que 87 e menor que 93.

void posLed(int grau){
 if(grau>87 && grau<93){
   digitalWrite(ledVerde,HIGH);
   digitalWrite(ledVermelho,LOW);
   digitalWrite(ledAmarelo,LOW);
   }
if(grau<88){
   digitalWrite(ledVerde,LOW);
   digitalWrite(ledVermelho,HIGH);
   digitalWrite(ledAmarelo,LOW);
   }
if(grau>92){
   digitalWrite(ledVerde,LOW);
   digitalWrite(ledVermelho,LOW);
   digitalWrite(ledAmarelo,HIGH);
   }

}

Abraço a todos!


Nenhum comentário:

Postar um comentário