Final Performance Test

Limitations:

  • Almost every limitation involved the inability to stay consistent across multiple sessions
  • The battery for each session was different, therefore giving a slightly different output.
  • Battery placement turned out to be a huge factor. A change in location by a few millimeters is enough to create a big enough change in friction to disrupt the landing zones.
  • Due to the way the servo arm was constructed, adjustments had to be made to it periodically. These small adjustments altered the stopping distances very little, but enough to cause for adjustments in the code.
  • The tape used to increase the coefficient of friction on the wheel gets brittle and bubbles over time.

Code:

//HOME TO GATE
rotateServo(45); //set servo to initial position
reverse(4); //reverse initial motor
motorSpeed(4,35); //set speed to 35 for all motors
goToAbsolutePosition(255); //go for 265 marks
brake(4); // stop
rotateServo(0); // engage servo as physical brake
motorSpeed(4,0);
goFor(8);

//GATE TO LOAD
rotateServo(45);
motorSpeed(4,25);
goToRelativePosition(278);
brake(4);
rotateServo(0);
motorSpeed(4,0);
goFor(1);

//SOFT LOAD BRAKE
rotateServo(45);
motorSpeed(4,27);
goFor(1.2);
brake(4);
motorSpeed(4,0);
goFor(5);

//LOAD TO GATE
reverse(4);
goFor(2);
motorSpeed(4,50);
goToRelativePosition(-288);
brake(4);
rotateServo(0);
motorSpeed(4,0);
goFor(6.15);

//GATE TO HOME
rotateServo(45);
motorSpeed(4,70);
goToRelativePosition(-145);
motorSpeed(4,0);
goToAbsolutePosition(-4);
brake(4);
rotateServo(0);