Paso 3: Arduino Motorshield
Una vez todo su escudo del motor conectado, se convierte en una cuestión de programar el arduino:
const int DIRB = 13; sistemas de dirección del motor a la izquierda
const int DIRA = 12; establece dirección motor derecho
const int PWMB = 11; análogo; ajusta la velocidad del motor
const int PWMA = 3; análogo; ajusta la velocidad del motor
int PWMAfwd, PWMArev, PWMAleft, PWMAright, PWMAhalt, PWMBfwd, PWMBrev, PWMBleft, PWMBright;
void setup() {}
pinMode (DIRB, salida);
pinMode (PWMB, salida);
pinMode (PWMA, salida);
pinMode (DIRA, salida);
Serial.Begin(9600);
PWMAfwd = 200; utilizado para cortar motorspeeds para las ejecuciones diferentes robot
PWMBfwd = 255;
PWMArev = 200;
PWMBrev = 255;
PWMAleft = 200;
PWMBleft = 255;
PWMAright = 200;
PWMBright = 255;
}
void fwd () {//sets motores hacia adelante
digitalWrite (DIRA, alto);
digitalWrite (DIRB, alto);
analogWrite (PWMA, PWMAfwd);
analogWrite (PWMB, PWMBfwd);
}
(rev vacío) {//sets motores para invertir
digitalWrite (DIRB, LOW);
digitalWrite (DIRA, LOW);
analogWrite (PWMB, PWMBrev);
analogWrite (PWMA, PWMArev);
}
void () {//turns bot en punto a la izquierda
digitalWrite (DIRB, LOW);
digitalWrite (DIRA, alto);
analogWrite (PWMB, PWMBleft);
analogWrite (PWMA, PWMAleft);
}
anular (derecha) {/ / convierte a punto bot
digitalWrite (DIRB, alto);
digitalWrite (DIRA, LOW);
analogWrite (PWMB, PWMBright);
analogWrite (PWMA, PWMAright);
}
void frenar () {//stops de motores
digitalWrite (PWMB, bajo);
digitalWrite (PWMA, LOW);
}
void directiontest () {}
FWD ();
retrasar (1000);
detener ();
retrasar (1000);
(Rev);
retrasar (1000);
detener ();
retrasar (1000);
(izquierda);
retrasar (1000);
detener ();
retrasar (1000);
(derecha);
retrasar (1000);
detener ();
retrasar (1000);
}
void loop () {}
directiontest();
}
Si los movimientos de tu bot no corresponden a los nombres de función se puede volver a colocar los cables del motor escribir los conjuntos alta dirección pin los motores hacia adelante, o se puede ajustar dentro de su programa.
No es necesario definir variables para cada proceso de modulación de anchura de pulso, pero yo quería ser capaz de ajustar las velocidades de motor en diferentes funciones.