• Welcome to LusoRobótica - Robótica em Português.
 

O meu primeiro 'bot!

Started by amando96, 28 de February de 2009, 19:33

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Reonarudo

o0 ok então o teu codigo não é nada direccionado para isso

int delta=17; //graus para se mexer
int state=0;  //Estado inicial
void loop(){
  //Máquina de estados para verificação do estado do push
  switch(state){
  case 0:
    //Lê o push se for HIGH muda o estado para execução
    state=digitalRead(inPin)==HIGH?1:0;
    break;
  case 1:
    //Espera o tempo determinado pelo Pot
    delay(getTime());
    //Move o servo
    moveServo(delta);
    //Volta ao estado inicial
    state=0;
    break;
  }
}
//Posição actual do servo
int servoPos=0;
//Movimento do servo delta graus
void moveServo(int delta){
  for(int i=servoPos;i<servoPos+delta;i++){
    myservo.write(i);
//Isto é um valor enorme para um servo mover-se um grau
    delay(100);
  }
  servoPos=i;
}

//Função para obter o tempo atravez do Pot
int getTime(){
  return map(analogRead(potPin),0, 1023, 0, 10000);
}


O codigo nao ta completo mas na deve ser dificil completar ja está praticamente tudo feito aí
Penso que assim vai funcionar sem problemas, qualquer duvida é so dizer, posso na ser grande coisa a electro mas programação  a história é outra ^^

Leonardo Marques

amando96

 :o não percebo nada, nem sei o que, nem onde modificar  :-\

bem logo me desenrasco...

obrigado á mesma.

Reonarudo

Quote from: little resources on 08 de June de 2009, 13:04
:o não percebo nada, nem sei o que, nem onde modificar  :-\

Ainda bem assim obriga-te a aprender e não a fazer so copy paste :P
Leonardo Marques