domingo, 13 de enero de 2008

Controlando!!

Ueeee!!! Por fin controlamos velocidad, tiempo de ejecución de cada función...etc

El siguiente código hace que el cotxe se mueva durante 10 segundos recto, se pare durante 10 segundos y haga un giro hacia la derecha durante 10s, repitiendose el ciclo indefinidamente.

///////////////////////////////////////////////////////VARIABLES

//Nom pels diferents servos
int outpin0 = 0;
int outpin1 = 2;

//Diferents valors de tensió [0-255]
int val0 = 255;
int val1 = 0;

//Altres
int control =0;

/////////////////////////////////////////////FUNCIONS [de moviment]
void cotxet_run(int pin_esq, int pin_dreta, int atope)
{
analogWrite(pin_esq, atope);
analogWrite(pin_dreta, atope);
}
void cotxet_stop(int pin_esq, int pin_dreta, int parao)
{
analogWrite(pin_esq, parao);
analogWrite(pin_dreta, parao);
}
void cotxet_gir(int pin_esq, int pin_dreta, int atope, int parao)
{
analogWrite(pin_esq, atope);
analogWrite(pin_dreta, parao);
}

////////////////////////////////////////////////////////EJECUTANDO

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

void loop() {

cotxet_run(outpin0, outpin2, val0);
delay(10000);//delays necessaris xq no executi totes les funcions alhora [q físicament es tradueix com la divisió del valor de tensió als pins 0 i 2]
cotxet_stop(outpin0, outpin2, val1);
delay(10000);
cotxet_gir(outpin0, outpin2, val0, val1);
delay(10000);
}

No hay comentarios: