hallo

Dependencies:   Servo mbed pixy

Fork of PES1 by Gruppe 3

Revision:
6:4af735d26b7a
Parent:
5:f48b2609c328
Child:
7:edb4e0cfc0d1
--- a/main.cpp	Tue Apr 11 14:43:29 2017 +0000
+++ b/main.cpp	Tue Apr 11 14:53:18 2017 +0000
@@ -15,13 +15,13 @@
 Servo servos1(PB_7);
 Servo servos2(PA_6);
 
-//Periphery for limit switch 
+//Periphery for limit switch
 DigitalIn limitSwitch1(PA_10);
-DigitalIn limitSwitch2(PB_13); 
+DigitalIn limitSwitch2(PB_13);
 
-//Periphery for Swich ON/OFF
+//Periphery for Switch ON/OFF
 
-DigitalIn swichOnOFF (USER_BUTTON); 
+DigitalIn swichtOnOFF (USER_BUTTON);
 
 //motor stuff
 DigitalOut enableMotorDriver(PB_2);
@@ -35,56 +35,82 @@
 
 int main()
 {
-    enable = 1;  // Sensoren einschalten 
-    enableMotorDriver = 1; // Schaltet die Motoren ein 
+    enable = 1;  // Sensoren einschalten
+    enableMotorDriver = 1; // Schaltet die Motoren ein
     pwmL->period(0.00005f); // Setzt die Periode auf 50 μs
     pwmR->period(0.00005f);
-    
+
     int state = 0; // Diese Variable gibt an in welchem State man sich befindet
 
-if ( kamera() == 1){ state = 4;) // Die Kamera erkennt ein grünen Klotz 
-    while(1) {
+    if ( kamera() == 1) {
+        state = 4;
+        ) // Die Kamera erkennt ein grünen Klotz
+        while(1) {
+
+        switch(state) {
+
+                case 1: // Roboter Anschalten mit Knopf
+
+                    if (switchOnOff == 1) {
+                        state = 2;
+                    }
+                    if (swichtOnOff ==0) {
+                        state =1;
+                    }
+                    break;
+
+                case 2:
+                    roboter1.bandeAusweichen();
+                    static int time1 = 0;
+                    if(time1 < 10) {       // Im Kreis drehen für 1s
+                        pwmL = 0.4f;
+                        pwmR = 0.4f;
+                        time1 ++;
+                    } else {
+                        time1 = 0;
+                        pwmL = 0.5f;
+                        pwmR = 0.5f;
+                        state = 3;
+                    }
+                    break;
+
 
-    swich(state){
-      
-      case 1: // Roboter Anschalten mit Knopf 
-      
-      if (swichOnOff == 1){
-          state = 2;}
-      if (swichOnOff ==0){
-          state =1;) 
-      
-      break; 
-      
-      case 2: // Im Kreis drehen
-       
-        ....
-      break;
-        
-      case 3: // gerade aus fahren 
-      
-      ....
-      break; 
-      
-      case 4: // Roboter erkennt gründer Klotz, Klotz wird angefahren 
-      
-      ...
-      break;
-      
-      case 5: // Aufnehmen des Klotzes 
-      
-      
-      .....
-      break; 
-      
-      
-      default 
-      
-      ... break ; }
+                case 3:
+                    roboter1.bandeAusweichen();
+                    static int time2 = 0;
+                    if(time2 < 10) {    // gerade aus fahren
+                        pwmL = 0.6f;
+                        pwmR = 0.4f;
+                        time2 ++;
+                    } else {
+                        time2 = 0;
+                        pwmL = 0.5f;
+                        pwmR = 0.5f;
+                        state = 2;
+                    }
+                    break;
+
+
+                case 4: // Roboter erkennt gründer Klotz, Klotz wird angefahren
 
-        wait(0.1f);
+                    ...
+                    break;
+
+                case 5: // Aufnehmen des Klotzes
+
+
+                    .....
+                    break;
+
+
+                default
+
+                        ... break ;
+            }
+
+            wait(0.1f);
+
+        }
 
     }
 
-}
-