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
Diff: main.cpp
- 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