Arduino Codes

 

PrgrmBasics

  // Accelerate motor one from 15% power in 2.5 seconds.
  celerate(1,0,15,2.5);
  // Constant speed of 15% power for 1 sec.
  goFor(1);
  // Brake motor
  brake(1);
  //Accelerating motor two from start to 27% in 4 seconds
  celerate(2,0,27,4);
  // motor 2 at a constant speed of 27% for 2.7 seconds
  goFor(2.7);
  //decelerating from 27% to 15% in 1 sec.
  celerate(2,27,15,1);
 //brake motor 2
  brake(2);
  //reverse motor 2
  reverse(2);
  //accelerate all motors from start to 31% in 2 sec.
  celerate(4,0,31,2);
  //run all motors at 31% in 1 sec.
  motorSpeed(4,35);
  goFor(1);
  // brake motor 2 but keep motor one at constant speed of 35%
  brake(2);
  motorSpeed(1,35);
  goFor(3);
  // brake all motors for 1 sec.
  brake(4);
  goFor(1);
  // reverse motor 1
  reverse(1);
  // accelerate motor 1 from 0 to 19% over 2 sec.
  celerate(1,0,19,2);
  //run motor 2 at 35% while motor 1 at 19% for 2 sec.
  motorSpeed(2,35);
  motorSpeed(1,19);
  goFor(2);
  //run both motors constant speed 19% for 2 seconds.
  motorSpeed(4,19);
  goFor(2);
  //Decelarate both motors to 0% in 3 seconds.
  celerate(4,19,0,3);
  //brake all motors.
  brake(4);

ExternalSensorsOutside

//run all motors at constant speed 25% power for 2 sec 

motorSpeed(4,25); 

goFor(2);  

 

//all motors constant speed of 20% power using goToAbsolutePosition 12 ft from starting point 

MotorSpeed(4,20); 

GoToAbsolutePosition(295); 

 

//reverse all motors 

reverse(4); 

 

//all motors in reverse at constant power 30% for 1.5 sec 

motorSpeed(4,30); 

goFor(1.5); 

 

//brake all motors 

brake(4); 


CSS1 

//accelerate all motors from start to 25% power for 3 secs 

celerate(4,0,25,3); 

//continue all motors at 25% power for 1 sec
motorSpeed(4,25);
goFor(1); 

//all motors go for 20% power for 2 secs
motorSpeed(4,20);
goFor(2); 

//reverse all motors
reverse(4); 

//in reverse all motors at 25% power for 2 secs
motorSpeed(4,25);
goFor(2); 

//brake all motors
brake(4); 

 


Performance testing 

PT 1 

reverse(1); 

motorSpeed(1,50); 

goToAbsolutePosition(187); 

 

brake(1); 

 

reverse(2); 

goToAbsolutePosition(319); 

motorSpeed(2,40); 

goFor(0.5); 

 

brake(4); 

 

goFor(7.5); 

motorSpeed(1,50); 

goToAbsolutePosition(340); 

 

PT 2 

reverse(1); 

motorSpeed(1,50); 

 

goToAbsolutePosition(193); 

 

brake(1); 

 

reverse(2); 

goToAbsolutePosition(317); 

motorSpeed(2,40); 

goFor(0.5); 

 

brake(4); 

goFor(7.5); 

motorSpeed(1,50); 

goToAbsolutePosition(363); 

brake(4); 

goFor(6.5); 

motorSpeed(2,50); 

goFor(3); 

 

PT 3 room 224 combined with 308 

//reverse motor 

reverse(1); 

//set motor 1 power at 50% 

motorSpeed(1,50); 

 

//Set it to go to position marker 187 

goToAbsolutePosition(194); 

//stop motor 1 

brake(1); 

//reverse motor 2 

reverse(2); 

//Set position marker 317 

goToAbsolutePosition(310); 

//set motor speed at 40% 

motorSpeed(2,60); 

// continue the 40% for 0.5 seconds 

goFor(0.5); 

//stop all motors 

brake(4); 

//stop all motors for 7.5 sec 

goFor(7.5); 

//set motor 1 for 25 % power 

motorSpeed(1,52); 

goToAbsolutePosition(385); 

brake(4); 

goToAbsolutePosition(580); 

goFor(8); 

 

motorSpeed(2,65); 

goToAbsolutePosition(457); 

brake(2); 

goToAbsolutePosition(410); 

motorSpeed(1,70); 

goFor(0.75); 

brake(4); 

goFor(8); 

 

//going back to start  

motorSpeed(2,75); 

goToAbsolutePosition(220); 

brake(4); 

goToAbsolutePosition(30); 

motorSpeed(1,60); 

goFor(0.5); 

brake(4); 

PT 3 room 308 going back to gate 

//reverse motor 

reverse(1); 

//set motor 1 power at 50% 

motorSpeed(1,50); 

 

//Set it to go to position marker 187 

goToAbsolutePosition(194); 

//stop motor 1 

brake(1); 

//reverse motor 2 

reverse(2); 

//Set position marker 317 

goToAbsolutePosition(310); 

//set motor speed at 40% 

motorSpeed(2,60); 

// continue the 40% for 0.5 seconds 

goFor(0.5); 

//stop all motors 

brake(4); 

//stop all motors for 7.5 sec 

goFor(7.5); 

//set motor 1 for 25 % power 

motorSpeed(1,52); 

goToAbsolutePosition(385); 

brake(4); 

goToAbsolutePosition(580); 

goFor(8); 

 

//going back to gate 

motorSpeed(2,65); 

goToAbsolutePosition(430); 

brake(2); 

goToAbsolutePosition(375); 

motorSpeed(1,70); 

goFor(0.75); 

brake(4); 

goFor(8); 

//going back to start  

motorSpeed(2,75); 

goToAbsolutePosition(260); 

brake(4); 

goToAbsolutePosition(35); 

motorSpeed(1,60); 

goFor(0.5); 

brake(4); 

 

PT 3 room 308 going back to start (Final Testing)  

//reverse motor 

reverse(1); 

//set motor 1 power at 50% 

motorSpeed(1,50); 

 

//Set it to go to position marker 194 

goToAbsolutePosition(194); 

//stop motor 1 

brake(1); 

//reverse motor 2 

//reverse(2); 

//Set position marker 310 

goToAbsolutePosition(310); 

//set motor speed at 40% 

motorSpeed(2,60); 

rotateServo(45); 

//continue the 40% for 0.5 seconds 

goFor(1); 

//stop all motors 

brake(4); 

//stop all motors for 7.5 sec 

goFor(7.5); 

//set motor 1 for 52 % power 

motorSpeed(1,52); 

goToAbsolutePosition(385); 

brake(4); 

goToAbsolutePosition(580); 

goFor(8); 

 

//going back to gate 

motorSpeed(2,65); 

goToAbsolutePosition(445); 

brake(2); 

goToAbsolutePosition(370); 

motorSpeed(1,70); 

goFor(0.75); 

brake(4); 

goFor(7);
 

//going back to start  

motorSpeed(2,70); 

goToAbsolutePosition(290); 

brake(4); 

goToAbsolutePosition(80); 

motorSpeed(1,70); 

goFor(0.75); 

brake(4); 

//TEST RESULTS 

//52.85 timed run test 1 

//Energy consumption: 161.615