Team Design project 3 main file

Dependencies:   mbed Motor_Driver Sensors MMA8451Q LocalPositionSystem

Fork of TDP_main by Ivelin Kozarev

Revision:
38:02ef89edd828
Parent:
37:c0fddc75c862
--- a/main.cpp	Tue Mar 24 22:34:52 2015 +0000
+++ b/main.cpp	Wed Mar 25 10:45:08 2015 +0000
@@ -51,15 +51,16 @@
     motors.setSteeringMode(NORMAL);
     motors.disableHardBraking();
     motors.forward();
-    motors.setSpeed (0.07f);
-    motors.start(); 
+    motors.setSpeed (0.1f);
+    motors.start();
+    wait(1); 
     //motors.enableSlew();
     
     while (1) {
         measureSensors();
         oldValuesFlag = USE;                
         switch (sensorsCheckSum) {
-        case 0:     //all black >> turn around by 180 degrees or a possible turn on the left
+/*        case 0:     //all black >> turn around by 180 degrees or a possible turn on the left
                 for (k=0;k<5;k++) {                             //left turn situation >> stop, go backwards
                     if (oldValues[k] == 194) {
                         motors.stop();
@@ -90,12 +91,12 @@
                         motors.stop();
                     }
                 } 
-            break;
+            break;  */
         case 30:    //all right sensors are white, left all black >> turn right
             motors.setSteeringMode(NORMAL);
             motors.forward();
             motors.setRightSpeed(0.02f);
-            motors.setLeftSpeed(0.07f);
+            motors.setLeftSpeed(0.04f);
             do
             {   
             motors.start();
@@ -103,11 +104,11 @@
             } while (sensorsCheckSum == 30);
             motors.stop();
             break;
-        case 46:    //robot is facing north-west >> turn left
+        case 46:    //robot is facing north-west >> turn right
             motors.setSteeringMode(NORMAL);
             motors.forward();
-            motors.setRightSpeed(0.03f);
-            motors.setLeftSpeed(0.07f);
+            motors.setRightSpeed(0.02f);
+            motors.setLeftSpeed(0.05f);
             do
             {   
             motors.start();
@@ -118,8 +119,8 @@
         case 94:    //normal <<STARTING POSITION>>, half of right and half of left are white
             motors.setSteeringMode(NORMAL);
             motors.forward();
-            motors.setRightSpeed(0.02f);
-            motors.setLeftSpeed(0.06f);
+            motors.setRightSpeed(0.08f);
+            motors.setLeftSpeed(0.08f);
             do
             {   
             motors.start();
@@ -148,11 +149,11 @@
             } while (measure(sensorArray[0]) == 0);
             motors.stop();
             break;
-        case 154:   //robot is facing north-east >> turn right
+        case 154:   //robot is facing north-east >> turn left
             motors.setSteeringMode(NORMAL);
             motors.forward();
-            motors.setRightSpeed(0.07f);
-            motors.setLeftSpeed(0.03f);
+            motors.setRightSpeed(0.05f);
+            motors.setLeftSpeed(0.02f);
             do
             {   
             motors.start();
@@ -163,8 +164,8 @@
         case 174:   //left all white, right all black >> turn left (move right wheel)
             motors.setSteeringMode(NORMAL);
             motors.forward();
-            motors.setRightSpeed(0.07f);
-            motors.setLeftSpeed(0.03f);
+            motors.setRightSpeed(0.06f);
+            motors.setLeftSpeed(0.02f);
             do
             {   
             motors.start();
@@ -176,8 +177,8 @@
         case 194:   //left all white, right half white >> go straight, turn right if 194 goes to 204
             motors.setSteeringMode(NORMAL);
             motors.forward();
-            motors.setRightSpeed(0.04f);
-            motors.setLeftSpeed(0.07f);
+            motors.setRightSpeed(0.01f);
+            motors.setLeftSpeed(0.02f);
             do
             {   
             motors.start();
@@ -185,7 +186,7 @@
             } while (sensorsCheckSum == 194);
             motors.stop();       //do while left is white
             break;
-        case 204:   //all sensors are white                 
+/*        case 204:   //all sensors are white                 
             for (k=0;k<6;k++) {                 //situation when a square is entered, need to follow right line
                 if (oldValues[k] == 194) {      //checks whether  black line on the right was present before
                     motors.setSteeringMode(NORMAL);
@@ -220,16 +221,24 @@
                     break;
                     }    
                 }        
-            break;              
-        default:
-            motors.start();
+            break;  */            
+        default:            
+ /*          if (sensorsCheckSum < 96) {
+                motors.setSpeed(0.0);
+                motors.setLeftSpeed(0.02);
+            }
+            else if (sensorsCheckSum > 96) {
+                 motors.setSpeed (0.0);
+                 motors.setRightSpeed(0.02);
+                 }
+            } */
+            //motors.start();  
             oldValuesFlag = SKIP;
             break;
-        }
-    }   // while() statement
-  
-}   //while loop
 
+        }   // switch statement
+    }      //while loop
+}   // main
 /*    
     motors.setSpeed (normalSpeed);
     while(1){    
@@ -239,36 +248,6 @@
 //            printBluetooth();
 //        }
         
-        switch (sensorsCheckSum) {
-            case 94:
-            motors.setSpeed (normalSpeed*2);
-            wait(0.4);
-            break;
-            
-            case 104:
-            turnRight ();
-            break;
-            default:
-            testOtherCases =1;
-            break;
-        }
-        if (testOtherCases == 1) {
-            if (sensorsCheckSum < 96) {
-                motors.setSpeed (0.0);
-                motors.setLeftSpeed(normalSpeed*2);
-                wait(0.1);
-            }
-            else if (sensorsCheckSum > 96) {
-                motors.setSpeed (0.0);
-                motors.setRightSpeed(normalSpeed*2);
-                wait(0.1);
-            }
-            
-        }    
-        motors.setSpeed(0.0);
-        wait(0.2);
-        
-    }
 } //int main
 
 void turnRight () {
@@ -324,7 +303,7 @@
                 if (oldValues[k] == sensorsCheckSum) {
                     for (i = k; i > 0; i--) {                           
                        oldValues[i] = oldValues[i-1];
-                   }
+                    }
                 } else {
                     oldValues[k] = oldValues[k-1];
                 }
@@ -332,4 +311,4 @@
             }
         }
      }
-}  //measureSensors end
+}