Prom_Roebi_0.1

Dependencies:   Farbsensor IRSensorLib PID_Control Servo mbed PixyLib

Revision:
3:017c85c4b14b
Parent:
2:dea0bab5e45c
Child:
4:c1d1bcc96b14
--- a/Fahren.cpp	Wed May 10 18:12:34 2017 +0000
+++ b/Fahren.cpp	Sat May 13 12:52:51 2017 +0000
@@ -82,33 +82,47 @@
         }
     }
       
-    // Wenn Front etwas sehen => drehen***********************************
-        
-    else if(sensors[1] <= wand || sensors[5]<=wand){
-        pwmLeft->write(0.35);
-        pwmRight->write(0.65);
+    
+     //plötzlicher Wand anschlag    ***************************************
+    else if(sensors[1] <= wand ){
+        pwmLeft->write(0.3);
+        pwmRight->write(0.3);
+        if (pc) {  
+            pc->printf("links drehen");}
+    }    
+    else if(sensors[5] <= wand ){
+        pwmLeft->write(0.7);
+        pwmRight->write(0.7);
+        if (pc) {  
+            pc->printf("rechts drehen");}
     }
     
+    
+    // Wenn Front etwas sehen => drehen***********************************
+    
     else if(sensors[0]<0.25 && sensors [1]<=wenden) {  
-        pwmLeft->write(0.4);
-        pwmRight->write(0.4);
+        pwmLeft->write(0.3);
+        pwmRight->write(0.3);
         if (pc) {  
             pc->printf("drehen links\n\n\n");}
     }  
                     
     else if (sensors[0]<0.25 && sensors [5]<=wenden){    
-        pwmLeft->write(0.6);
-        pwmRight->write(0.6);
+        pwmLeft->write(0.7);
+        pwmRight->write(0.7);
         if (pc) { 
-            pc->printf("drehen\n\n\n");}
+            pc->printf("drehen rechts\n\n\n");}
                }
+               
     else if(sensors[0]<0.25) {
     if (rand()%2==0 && state != drehen) {
-            pwmLeft->write(0.4);
-            pwmRight->write(0.4);
+            pwmLeft->write(0.3);
+            pwmRight->write(0.3);
+             pc->printf("random drehen\n\n\n");}
         } else if (rand()%2 != 0 && state != drehen) {
-            pwmLeft->write(0.6);
-            pwmRight->write(0.6);
+            pwmLeft->write(0.7);
+            pwmRight->write(0.7);
+             pc->printf("random drehen\n\n\n");}
         }
     state=drehen;
     }
@@ -134,8 +148,8 @@
     else if(sensors[0]>=0.26) {
         if(pc) {
             pc->printf("gerade\n");}
-        pwmLeft->write(0.65);
-        pwmRight->write(0.35);
+        pwmLeft->write(0.65);   
+        pwmRight->write(0.35);      
         state=gerade;
     }
     else {