Arduino Codes

Bellow are the commented Arduino Codes used throughout the project in order to complete their respective labs.

Lab 1:

No Arduino code was required for this lab.

Lab 2:

Scenerio 1:
celerate(1,0,15,2.5); //Increases power of motor 1 from 0% to 15% over 2.5 seconds
goFor(1); //Waits 1 seconds
brake(1); // Brake motor 1
celebrate(2,0,27,4); //Increases power of motor 2 from 0% to 27% over 2.5 seconds
goFor(2.7); //Wait 2.7 seconds
celerate(2,27,15,1); //Decreases power of motor 2 from 27% to 15% over 1 second
brake(2); // Brake motor 2
reverse(2); // Reverses motor 2
celerate(2,0,31,2); //Increase power of all motors from 0% to 31% over 2 seconds
motorSpeed(4,35); //Set all motors power to 35%
goFor (1); // Wait 1 seconds
brake(2); //Brake motor 2
goFor(3); //Wait 3 seconds
brake(4); //Brake all motors
goFor(1); //Wait 1 second
reverse(1); //Reverse motor 1
celebrate(1,0,19,2); //Increases power of motor1 from 0% to 19% over 2 seconds
motorSpeed(2,35); //Set motor 2’s power to 35%
motorSpeed(4,19); //Sets all motors power to 19%
goFor(2); //Waits 2 seconds
celebrate(4,19,0,3); //Decreases power of all motors from 19% to 0% over 3 seconds\
brake(4); //Brakes all motors

Scenerio 2: Imperial March Theme: 
revers(4); //Reverses all motors
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(0.1); //Continues previous function for .1 seconds
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(.1); //Continues previous function for .1 seconds
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(0.1); //Continues previous function for .1 seconds
motorSpeed(4,15); //Increases all motors to 15% power
goFor(0.3); //Continues previous function for .3 seconds
brake(4); //Brakes all motors
gofro(.05); //Continues previous function for .05 seconds
motorSpeed(4,40); //Increases all motors to 40% power
goFor(0.3); //Continues previous function for .3 seconds
motorSpeed(4,15); //Increases all motors to 15% power
goFor(0.3); //Continues previous function for .3 seconds
brake(4); //Brakes all motors
gofro(.05);//Continues previous function for .05 seconds
motorSpeed(4,40); //Increases all motors to 40% power
goFor(0.3); //Continues previous function for .3 seconds
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
motorSpeed(4,15); //Increases all motors to 15% power
goFor(0.3); //Continues previous function for .3 seconds
brake(4); //Brakes all motors
gofro(.05); //Continues previous function for .05 seconds
motorSpeed(4,40); //Increases all motors to 40% power
goFor(0.3); //Continues previous function for .3 seconds //Continues previous function for .3 seconds
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
gofro(0.5); //Continues previous function for .5 seconds
motorSpeed(4,55); //Increases all motors to 55% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(0.1); //Continues previous function for .1 seconds
motorSpeed(4,55); //Increases all motors to 55% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(0.1); //Continues previous function for .1 seconds
motorSpeed(4,55); //Increases all motors to 55% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors
goFor(0.1); //Continues previous function for .1 seconds
motorSpeed(4,65); //Increases all motors to 65% power
goFor(0.3); //Continues previous function for .3 seconds //Continues previous function for .3 seconds
brake(4); //Brakes all motors
gofro(.05); //Continues previous functionfor .05 seconds
motorSpeed(4,40); //Increases all motors to 40% power
goFor(0.3); //Continues previous function for .3 seconds //Continues previous function for .3 seconds
motorSpeed(4,20); //Increases all motors to 20% power
goFor(0.5); //Continues previous function for .5 seconds
motorSpeed(4,15); //Increases all motors to 15% power
goFor(0.3); //Continues previous function for .3 seconds //Continues previous function for .3 seconds
brake(4); //Brakes all motors
goFor(.05); //Continues previous functionfor .05 seconds
motorSpeed(4,40); //Increases all motors to 40% power
goFor(0.3); //Continues previous function for .3 seconds //Continues previous function for .3 seconds
motorSpeed(4,25); //Increases all motors to 25% power
goFor(0.5); //Continues previous function for .5 seconds
brake(4); //Brakes all motors

Lab 3:

No Arduino code was required for this lab.

Lab 4:

reverse(4); //reverse all motors
motorSpeed(4,30); //all motors to 30%
goFor(2); //wait 2s
motorSpeed(4,25); //all motors to 25%
goToAbsolutePosition(-247); //go till the -247th mark from start
reverse(4); //reverse all motors
motorSpeed(4,30); //all motors to 30%
goToRelativePosition(148); //go till the 148th mark from start
brake(4); //stop all motors

Lab 5:

No Arduino code was required for this lab.

Lab 6: 

Flat rail test using relative position function:
motorSpeed(4,25);// powers all motors to 25% power
goToRelativePosition(370);// maintains power at 25% until it travels 370 marks
brake(4);// brakes all motors
goFor(2);// executes brake for 2 seconds
reverse(4);// reverses all motors
motorSpeed(4,25);// powers all motors to 25% power
goToRelativePosition(247);// maintains power at 25% until to travels 247 marks
brake(4);// brakes all motors

Flat rail test using accelerate function:
celerate(4,35,35,7.98);// accelerates all motors from 35% power to 35% power for 7.98 seconds
celerate(4,35,0,1);// decelerates all motors form 35% power to 0% power
reverse(4);// reverses all motors
celerate(4,35,35,5.32);//accelerates all motors from 35% power to 35% power for 5.32 seconds

Half rail test:
motorSpeed(4,35); //changes all motor powers to 35%
goToRelativePosition(-143); // allows the AEV to travel 143 marks
brake(4); //brakes all motors
reverse(4); //reverses all motors
motorSpeed(4,40); //changes all motor speeds to 40%
goFor(01.5); //continues the motors at 40% for 1.5 seconds
brake(4); // brakes all motors
goFor(5);// continues brake for 5 seconds
motorSpeed(4,30); // sets motors to 30%
goToRelativePosition(496); // allows the AEV to travel 496 marks
brake(4); // brakes all motors
reverse(4); //reverses all motors
motorSpeed(4,40); //sets all motors speeds to 40%
goFor(1.35);// continues to have the motors speeds at 40% for 1.35 seconds
brake(4);// brakes all motors
goFor(5);// continues brake for 5 seconds
reverse(4);// reverses all motors
motorSpeed(4,46); // sets all motors to 46%
goToRelativePosition(170);// allows the AEV to travel 170 marks
brake(4);// brakes all motors
reverse(4);// reverses all motors
motorSpeed(4,35);// sets all motor speeds to 35% power
goFor(01);// continues the motor speed command for 1 second
brake(4);// brakes all motors

Final Run: 

Half Run Code:
reverse(4); //Reverse polarity on all motors
motorSpeed(4,35); //Set motor speed to 35 for all motors
goToAbsolutePosition(95); //-for 75 marks in the negative direction from origin
motorSpeed(4,14); //Set motor speed to 14 for all motors
goToAbsolutePosition(110); //-for 85 marks in the negative direction from origin
brake(4); //Power down all motors
goFor(5); //-for 5 seconds grand
reverse(4); //Reverse polarity on all motors
celerate(4,23,15,4.4); //Accelerate all motors from 15 to 33% power in 4.2 seconds.
brake(4); //brake all motors
goFor(2); //-for 2 seconds
motorSpeed(4,20); //Set motor speed to 20% power for all motors and go
goFor(1.0); //-for 1.5 seconds.
reverse(4); //Reverse polarity on all motors.
celerate(4,33,1,1); //Accelerate all motors from 33 to 1% power in 1 seconds.
brake(4); //Brake all motors
goFor(6); //-for 6 seconds.
reverse(4); //Reverse polarity on all motors.
motorSpeed(4,33); //Power all motors at 33% power and go
goFor(2.7); //-for 2.7 seconds.
reverse(4); //Reverse polarity on all motors.
celerate(4,33,1,1.5); //Accelerate all motors from 33 to 1 % power in 1.5 seconds.
brake(4); //Brake all motors.

Full Run With Cart:
// Maint. station to grand
reverse(4); //Reverse polarity on all motors
motorSpeed(4,27);
goToRelativePosition(160);
reverse(4);
motorSpeed(4,30);
goFor(.35);
brake(4);
goFor(2);
rotateServo(60);
goFor(5);

//waves
motorSpeed(4,20);
goToAbsolutePosition(-63);
brake(4);
goFor(1);
motorSpeed(4,18);
goToAbsolutePosition(-288);
reverse(4);
motorSpeed(4,60);
goFor(0.2);
brake(4);
goFor(4);

//alaska

reverse(4);
motorSpeed(4,33);
goToAbsolutePosition(-590);
reverse(4);
motorSpeed(4,50);
goFor(.2);
brake(4);
goFor(4);

//incline stop
motorSpeed(4,20);
goToRelativePosition(52);
goFor(0.25);
reverse(4);
motorSpeed(4,34);
goFor(2.5);
brake(4);
goFor(1);

// rocky montains
reverse(4);
motorSpeed(4,15);
goToRelativePosition(144);
reverse(4);
motorSpeed(4,50);
goFor(.3);
brake(4);
goFor(2);

// hocking hills
reverse(4);
motorSpeed(4,26);
goToRelativePosition(240);
reverse(4);
motorSpeed(4,50);
goFor(.4);
brake(4);
goFor(2);

// back to grand
reverse(4);
motorSpeed(4,33);
goToRelativePosition(200);
reverse(4);
motorSpeed(4,40);
goFor(.4);
brake(4);
goFor(3);
rotateServo(0);
goFor(2);

motorSpeed(4,23);
goToAbsolutePosition(0);
reverse(4);
motorSpeed(4,70);
goFor(.5);
brake(4);

Full Run With Weighted Cart
// Maint. station to grand
reverse(4); //Reverse polarity on all motors
motorSpeed(4,27);
goToRelativePosition(160);
reverse(4);
motorSpeed(4,30);
goFor(.35);
brake(4);
goFor(2);
rotateServo(60);
goFor(5);

//waves
motorSpeed(4,27);
goToAbsolutePosition(-53);
brake(4);
goFor(1);
motorSpeed(4,20);
goToAbsolutePosition(-288);
reverse(4);
motorSpeed(4,60);
goFor(0.4);
brake(4);
goFor(4);

//alaska

reverse(4);
motorSpeed(4,39);
goToAbsolutePosition(-590);
reverse(4);
motorSpeed(4,60);
goFor(.3);
brake(4);
goFor(4);

//incline stop
motorSpeed(4,29);
goToRelativePosition(52);
brake(4);
goFor(0.25);
reverse(4);
motorSpeed(4,35);
goFor(2.5);
brake(4);
goFor(1);

// rocky montains
reverse(4);
motorSpeed(4,17);
goToAbsolutePosition(-300);
reverse(4);
motorSpeed(4,70);
goFor(.35);
brake(4);
goFor(2);

// hocking hills
reverse(4);
motorSpeed(4,28);
goToAbsolutePosition(-60);
reverse(4);
motorSpeed(4,60);
goFor(.4);
brake(4);
goFor(2);

// back to grand
reverse(4);
motorSpeed(4,42);
goToRelativePosition(200);
reverse(4);
motorSpeed(4,70);
goFor(.5);
brake(4);
goFor(3);
rotateServo(0);
goFor(2);

motorSpeed(4,25);
goFor(.5);
motorSpeed(4,15);
goToAbsolutePosition(20);
reverse(4);
motorSpeed(4,70);
goFor(.5);
brake(4);