Werkend aansturingsscript voor 2 motoren, incl werkende program switch. Motoren oscilleren nog iets. Vuur mechanisme ontbreekt nog.

Dependencies:   HIDScope MODSERIAL QEI biquadFilter mbed

Fork of frdm_Motor_V2_2 by Margreeth de Breij

Revision:
3:687729d7996e
Parent:
2:099da0fc31b6
Child:
4:0d4aff8b57b3
--- a/main.cpp	Mon Sep 28 12:25:05 2015 +0000
+++ b/main.cpp	Mon Sep 28 13:25:19 2015 +0000
@@ -15,10 +15,9 @@
 Ticker ScopeTime;
 float Aantal_Degs;
 float Aantal_pulses;
-
 float Error;
 float refference;
-float Kp = 0.01;
+const float Kp = 0.01;
 
 
 void ScopeSend()//Functie die de gegevens voor de scope uitleest en doorstuurt
@@ -27,38 +26,37 @@
     scope.set(1, motor2speed.read());
     scope.set(2, Aantal_Degs);
     Aantal_Degs = Encoder.getPulses()*360/31/131;
+    Error = refference - Aantal_Degs;
     scope.send();
     
 }
 
+
 int main()
 {
     motor2direction = 0;
     motor2speed = 0;
     led = 1;
     pc.baud(115200);
-    pc.printf("Tot aan loop werkt");
+    float refference = 0;
+    pc.printf("Tot aan loop werkt\n");
     ScopeTime.attach_us(&ScopeSend, 10e4);
     
     
     while (true) 
     {
-        char c = pc.getc();
-        switch(c)
+        char c = pc.getc();   
+        if(c == 'r')
         {
-            case 'r':
-            {
-                refference = refference + 10;
-                break;
-            }
-            case 'f':
-            {
-                refference = refference - 10;
-                break;
-            }
+            refference = refference + 10;
+            pc.printf("rx \n");
+        }
+        if(c=='f')
+        {
+            refference = refference - 10;
+            pc.printf("fx \n");
         }
         
-        Error = refference - Aantal_Degs;
         if(Error > 0)
         {
             motor2direction = 0;
@@ -68,6 +66,7 @@
             motor2direction = 1;
         }
         motor2speed = Kp*abs(Error);
-      
+        pc.printf("reffence = %f,error = %f \n",refference,Error);
+
     }
 }
\ No newline at end of file