heres the code

Dependencies:   Motor Servo mbed

Committer:
JackTamas
Date:
Mon Oct 22 14:45:39 2018 +0000
Revision:
7:8881672744fd
Parent:
6:d58256361419
newest;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
JackTamas 6:d58256361419 1 #include "mbed.h"
JackTamas 0:e8eaa22280a2 2 #include "stdio.h"
JackTamas 0:e8eaa22280a2 3 #include "Motor.h"
JackTamas 0:e8eaa22280a2 4 #include "Servo.h"
JackTamas 4:3447c3fa5719 5 #include "time.h"
JackTamas 4:3447c3fa5719 6
JackTamas 6:d58256361419 7 Motor knife(p26, p30, p29);
JackTamas 2:e43e3a2eb025 8 Servo finish(p22);
JackTamas 2:e43e3a2eb025 9 Servo start(p21);
JackTamas 6:d58256361419 10 DigitalOut led[4]={LED1, LED2, LED3, LED4};
JackTamas 4:3447c3fa5719 11 int i, j;
JackTamas 6:d58256361419 12 int x;
JackTamas 4:3447c3fa5719 13
JackTamas 6:d58256361419 14
JackTamas 0:e8eaa22280a2 15 int main() {
JackTamas 3:4243b540714d 16 start.calibrate(0.0009, 90.0);
JackTamas 2:e43e3a2eb025 17 finish.calibrate(0.0009, 90.0);
JackTamas 6:d58256361419 18
JackTamas 6:d58256361419 19 start = 0.25; //lowers start gate
JackTamas 6:d58256361419 20 wait (1.0); //gives time for crab to get down track
JackTamas 4:3447c3fa5719 21
JackTamas 0:e8eaa22280a2 22 x = (rand()%9)+1;
JackTamas 6:d58256361419 23 printf("%d", x);
JackTamas 4:3447c3fa5719 24
JackTamas 6:d58256361419 25 start = 0.0; //set initial start gate position
JackTamas 6:d58256361419 26
JackTamas 6:d58256361419 27
JackTamas 7:8881672744fd 28 if (x <= 7) {
JackTamas 2:e43e3a2eb025 29 finish = 1.0; //gate has a 70% chance to go one way
JackTamas 6:d58256361419 30 for (i=0; i<5; i++) {
JackTamas 6:d58256361419 31 led[i] = 1;
JackTamas 6:d58256361419 32 wait (0.15);
JackTamas 6:d58256361419 33 led[i]=0;
JackTamas 3:4243b540714d 34 }
JackTamas 6:d58256361419 35 }
JackTamas 4:3447c3fa5719 36 else { //30% chance the gate will go the other way
JackTamas 6:d58256361419 37 finish = 0.0;
JackTamas 6:d58256361419 38 knife.speed (0.5);
JackTamas 6:d58256361419 39 wait (.5);
JackTamas 6:d58256361419 40 knife.speed (-0.5);
JackTamas 6:d58256361419 41 wait (.5);
JackTamas 6:d58256361419 42 knife.speed(0);
JackTamas 6:d58256361419 43 }
JackTamas 4:3447c3fa5719 44
JackTamas 6:d58256361419 45 finish = 0.5; //set finish gate to halfway point
JackTamas 6:d58256361419 46
JackTamas 6:d58256361419 47
JackTamas 0:e8eaa22280a2 48 }