verslag
Dependencies: Encoder HIDScope MODSERIAL- mbed-dsp mbed
Fork of PROJECT_FINAL by
Diff: PROJECT_main.cpp
- Revision:
- 20:5007ddcd03ef
- Parent:
- 19:fe284ddaa88a
- Child:
- 21:779de788eb92
--- a/PROJECT_main.cpp Tue Nov 04 09:47:10 2014 +0000 +++ b/PROJECT_main.cpp Tue Nov 04 10:09:43 2014 +0000 @@ -123,8 +123,8 @@ float Ki1 = 0.0; //Kp en Ki van motor1, voor de slag float Kd1 = 0.0; -float Kp2 = 2.0; //Kp en Ki van motor2, voor in het positie brengen en voor de return -float Ki2 = 0.1; //0.30 en 0.20 +float Kp2 = 5.0; //Kp en Ki van motor2, voor in het positie brengen en voor de return +float Ki2 = 0.0; //0.30 en 0.20 float Kd2 = 0.0; volatile bool looptimerflag; //voor motorcontrol TSAMP @@ -294,7 +294,7 @@ motor2cal: //motorarm naar nul-positie - blink.attach(kalbi, 0.2); + blink.attach(kalbi, 0.4); blink2.attach(kaltri, 0.2); //calibration motor 2 @@ -548,7 +548,7 @@ //setpoint2 += 1*TSAMP; switch (direction) { case 1: - angle = 0.18; + angle = 0.20; break; case 2: angle = 0.13; @@ -558,20 +558,13 @@ break; } - setpoint2 = angle; - - if(batjeset < 1000) { // dit is nog te bepalen, op dit moment als binnen marge van 1% voor 2 seconde, dan naar volgende motorcontrol - if (motor2.getPosition()*omrekenfactor2 > setpoint2*1.05 || motor2.getPosition()*omrekenfactor2 < setpoint2*0.95) { - batjeset = 0; - } else { - batjeset++; - } - } else { + setpoint2 = angle; + + if(motor2.getPosition()>angle) { // batjeset (controle bereik) + count = 0; state=2; - count=0; - batjeset = 0; } - + /* if(setpoint2>angle) { // batjeset (controle bereik) setpoint2 = angle; //setpoint2 = motor2.getPosition()*omrekenfactor2;