2014-10-15 Arm 1 naar thuispositie. Eerste poging, fout in keep_in_range

Dependencies:   Encoder MODSERIAL TextLCD mbed mbed-dsp

Revision:
2:0cb899f2800a
Parent:
1:e5e1eb9d0025
Child:
3:adc3052039e7
diff -r e5e1eb9d0025 -r 0cb899f2800a main.cpp
--- a/main.cpp	Wed Oct 15 14:37:28 2014 +0000
+++ b/main.cpp	Thu Oct 16 11:53:26 2014 +0000
@@ -30,7 +30,18 @@
     regelaar_ticker_flag = true;
 }
 
-void keep_in_range(float * in, float min, float max);
+void keep_in_range(float * in, float min, float max){
+    if (*in < min){
+        *in = min;
+    }
+    if (*in > max){
+        *in = max;
+    }
+    else {
+        *in = *in;
+    }
+}
+    
 
 int puls_arm1_home = 363;
 float pwm_to_motor_arm1;
@@ -60,7 +71,7 @@
         
         ticker_regelaar.attach(setregelaar_ticker_flag,SAMPLETIME_REGELAAR);       //Ticker iedere zoveel seconde de flag op laten steken
         
-        while(1) {
+        while(rust == true && kalibratie_positie == false && kalibratie_EMG == false) {
             while(regelaar_ticker_flag != true) ;
             regelaar_ticker_flag = false;
             
@@ -74,9 +85,13 @@
                 dir_motor_arm1.write(0);
             }
             pwm_motor_arm1.write(abs(pwm_to_motor_arm1));
-                    
+            
+            if (pwm_to_motor_arm1 == 0) {
+                 kalibratie_positie = true;
+                 pc.printf("Arm 1 naar thuispositie compleet");
+            }        
             wait(1);
-            pc.printf("Arm 1 naar thuispositie compleet");
+            
         }   
     }    
 }
\ No newline at end of file