Code

Code


#include <AFMotor.h>

 

//initial motors pin

AF_DCMotor motor1(1, MOTOR12_1KHZ);

AF_DCMotor motor2(2, MOTOR12_1KHZ);

AF_DCMotor motor3(3, MOTOR34_1KHZ);

AF_DCMotor motor4(4, MOTOR34_1KHZ);

 

int val;

int Speeed = 255;

 

void setup()

{

  Serial.begin(9600);  //Set the baud rate to your Bluetooth module.

}

void loop(){

  if(Serial.available() > 0){

    val = Serial.read();

     

    Stop(); //initialize with motors stoped

     

          if (val == 'F'){

          forward();

          }

 

          if (val == 'B'){

          back();

          }

 

          if (val == 'L'){

          left();

          }

 

          if (val == 'R'){

          right();

          }

          if (val == 'I'){

          topright();

          }

 

          if (val == 'J'){

          topleft();

          }

 

          if (val == 'K'){

          bottomright();

          }

 

          if (val == 'M'){

          bottomleft();

          }

          if (val == 'T'){

          Stop();

          }

  }

}

          

 

           

 

 

 

void forward()

{

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(FORWARD); //rotate the motor clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(FORWARD); //rotate the motor clockwise

  motor3.setSpeed(Speeed);//Define maximum velocity

  motor3.run(FORWARD); //rotate the motor clockwise

  motor4.setSpeed(Speeed);//Define maximum velocity

  motor4.run(FORWARD); //rotate the motor clockwise

}

 

void back()

{

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(BACKWARD); //rotate the motor anti-clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(BACKWARD); //rotate the motor anti-clockwise

  motor3.setSpeed(Speeed); //Define maximum velocity

  motor3.run(BACKWARD); //rotate the motor anti-clockwise

  motor4.setSpeed(Speeed); //Define maximum velocity

  motor4.run(BACKWARD); //rotate the motor anti-clockwise

}

 

void left()

{

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(BACKWARD); //rotate the motor anti-clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(BACKWARD); //rotate the motor anti-clockwise

  motor3.setSpeed(Speeed); //Define maximum velocity

  motor3.run(FORWARD);  //rotate the motor clockwise

  motor4.setSpeed(Speeed); //Define maximum velocity

  motor4.run(FORWARD);  //rotate the motor clockwise

}

 

void right()

{

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(FORWARD); //rotate the motor clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(FORWARD); //rotate the motor clockwise

  motor3.setSpeed(Speeed); //Define maximum velocity

  motor3.run(BACKWARD); //rotate the motor anti-clockwise

  motor4.setSpeed(Speeed); //Define maximum velocity

  motor4.run(BACKWARD); //rotate the motor anti-clockwise

}

 

void topleft(){

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(FORWARD); //rotate the motor clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(FORWARD); //rotate the motor clockwise

  motor3.setSpeed(Speeed/3.1);//Define maximum velocity

  motor3.run(FORWARD); //rotate the motor clockwise

  motor4.setSpeed(Speeed/3.1);//Define maximum velocity

  motor4.run(FORWARD); //rotate the motor clockwise

}

 

void topright()

{

  motor1.setSpeed(Speeed/3.1);//Define maximum velocity

  motor1.run(FORWARD); //rotate the motor clockwise

  motor2.setSpeed(Speeed/3.1);//Define maximum velocity

  motor2.run(FORWARD); //rotate the motor clockwise

  motor3.setSpeed(Speeed);//Define maximum velocity

  motor3.run(FORWARD); //rotate the motor clockwise

  motor4.setSpeed(Speeed);//Define maximum velocity

  motor4.run(FORWARD); //rotate the motor clockwise

}

 

void bottomleft()

{

  motor1.setSpeed(Speeed); //Define maximum velocity

  motor1.run(BACKWARD); //rotate the motor anti-clockwise

  motor2.setSpeed(Speeed); //Define maximum velocity

  motor2.run(BACKWARD); //rotate the motor anti-clockwise

  motor3.setSpeed(Speeed/3.1);//Define maximum velocity

  motor3.run(BACKWARD); //rotate the motor anti-clockwise

  motor4.setSpeed(Speeed/3.1);//Define maximum velocity

  motor4.run(BACKWARD); //rotate the motor anti-clockwise

}

 

void bottomright()

{

  motor1.setSpeed(Speeed/3.1);//Define maximum velocity

  motor1.run(BACKWARD); //rotate the motor anti-clockwise

  motor2.setSpeed(Speeed/3.1);//Define maximum velocity

  motor2.run(BACKWARD); //rotate the motor anti-clockwise

  motor3.setSpeed(Speeed); //Define maximum velocity

  motor3.run(BACKWARD); //rotate the motor anti-clockwise

  motor4.setSpeed(Speeed); //Define maximum velocity

  motor4.run(BACKWARD); //rotate the motor anti-clockwise

}

 

 

void Stop()

{

  motor1.setSpeed(0); //Define minimum velocity

  motor1.run(RELEASE); //stop the motor when release the button

  motor2.setSpeed(0); //Define minimum velocity

  motor2.run(RELEASE); //rotate the motor clockwise

  motor3.setSpeed(0); //Define minimum velocity

  motor3.run(RELEASE); //stop the motor when release the button

  motor4.setSpeed(0); //Define minimum velocity

  motor4.run(RELEASE); //stop the motor when release the button

}


Report Page