Prometheus / Mbed 2 deprecated Prom_Roebi

Dependencies:   Farbsensor IRSensorLib PID_Control Servo mbed PixyLib

Revision:
6:d611637e7cad
Parent:
3:017c85c4b14b
Child:
8:077d0bb213a2
--- a/Farbauswertung.cpp	Sat May 13 13:53:16 2017 +0000
+++ b/Farbauswertung.cpp	Tue May 16 14:02:23 2017 +0000
@@ -29,7 +29,7 @@
     merker_rot1 = 0;
     merker_gruen =0;
     ausschaltZeit = 0;
-    einschlatZeit = 6;
+    einschlatZeit = 120;
 }
 
 void Farbauswertung::setSerialOutput(Serial *pc)
@@ -45,13 +45,13 @@
 void Farbauswertung::auswertung()
 {
 
-    if ((farbsensor.readg()>=68 && farbsensor.readg()<=70 && farbsensor.readr()>=69 && farbsensor.readr()<=72) || (farbsensor.readg()>=77 && farbsensor.readg()<=78 && farbsensor.readr()>=74 && farbsensor.readr()<=77) || (farbsensor.readg()>=75 && farbsensor.readg()<=76 && farbsensor.readr()>=75 && farbsensor.readr()<=77)) {
+    if ((farbsensor.readg()>=68 && farbsensor.readg()<=70.5 && farbsensor.readr()>=69 && farbsensor.readr()<=72) || (farbsensor.readg()>=77 && farbsensor.readg()<=78 && farbsensor.readr()>=74 && farbsensor.readr()<=77) || (farbsensor.readg()>=75 && farbsensor.readg()<=76 && farbsensor.readr()>=75 && farbsensor.readr()<=77)) {
 
         zustand =rot;
         if (merker_gruen==1) {   //Wenn wechsel Grün auf Rot Ausschaltzeit um X erhöhen
-            ausschaltZeit+=2;
+            ausschaltZeit+=100;
             if(ausschaltZeit !=0) { //Wenn die einschaltzeit nicht gleich Null ist muss die zeit plus die Einschaltverzögerung verlängert werden
-                ausschaltZeit+=(einschlatZeit+2);
+                ausschaltZeit+=(einschlatZeit+100);
             }
         }
         merker_gruen = 0;
@@ -70,7 +70,7 @@
 
     if(merker_rot1>=1 && merker_rot1<ausschaltZeit) { // Ausschaltverzögerung +  Auswurf schliessen
         merker_rot1 ++;
-        
+
         servoAusw->write(1.0f);
     }
     if (merker_rot1 == ausschaltZeit) { //wenn Ausschaltzeit abgelaufen => MerkerRot1 zurücksetzen + Auswurf öffnen
@@ -79,15 +79,20 @@
         servoAusw->write(0.01f);
     }
 
-    //Ausgaben an Konsole******************************************************
-    if (pc) {
-        pc->printf("\n\r");
-        pc->printf("Gruen:%f\n\r", farbsensor.readg());
-        pc->printf("Rot:%f\n\r", farbsensor.readr());
-        pc->printf("Status:%d\n\r",zustand);
-        pc->printf("Status Merker rt:%d\n\r",merker_rot);
-        pc->printf("Status Merker rot1:%d\n\r",merker_rot1);
-        pc->printf("Ausschaltzeit:%d\n\r",ausschaltZeit);
+    static int timer = 0;
+    ++timer;
+
+    if( timer % 100 == 0) {
+        //Ausgaben an Konsole******************************************************
+        if (pc) {
+            pc->printf("\n\r");
+            pc->printf("Gruen:%f\n\r", farbsensor.readg());
+            pc->printf("Rot:%f\n\r", farbsensor.readr());
+            pc->printf("Status:%d\n\r",zustand);
+            pc->printf("Status Merker rt:%d\n\r",merker_rot);
+            pc->printf("Status Merker rot1:%d\n\r",merker_rot1);
+            pc->printf("Ausschaltzeit:%d\n\r",ausschaltZeit);
+        }
     }
 
 }
\ No newline at end of file