Time is good

Dependencies:   RoboClaw mbed

Fork of Robot2016_2-0 by ARES

Files at this revision

API Documentation at this revision

Comitter:
IceTeam
Date:
Fri May 06 18:25:24 2016 +0000
Parent:
93:c0b040954eac
Child:
96:1e91cac784fe
Commit message:
Save new GotoThet

Changed in this revision

ControlleurPince/ControlleurPince.cpp Show annotated file Show diff for this revision Revisions of this file
deplacement.cpp Show annotated file Show diff for this revision Revisions of this file
entete.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/ControlleurPince/ControlleurPince.cpp	Fri May 06 17:33:43 2016 +0000
+++ b/ControlleurPince/ControlleurPince.cpp	Fri May 06 18:25:24 2016 +0000
@@ -7,8 +7,6 @@
     pos_r = 0;
     pos_z = 0;
     pos_l = 0;
-    
-    
 }
 
 void ControlleurPince::init()
@@ -67,8 +65,8 @@
         => pos_l = (130-delta)/2 + center
         */
         
-        float r = (130.f-delta)/2.f - center;
-        float l = (130.f-delta)/2.f + center;
+        float r = (150.f-delta)/2.f - center;
+        float l = (150.f-delta)/2.f + center;
         
         RMot.mm(r-pos_r,true);
         pos_r = r;
@@ -86,13 +84,13 @@
 {
     Lax12.setGoal(150);
     Rax12.setGoal(150);
-    wait(0.2);
+    wait(2);
 }
 
 
 void ControlleurPince::open()
 {
-    Lax12.setGoal(100);
-    Rax12.setGoal(200);
-    wait(0.2);
+    Lax12.setGoal(46);
+    Rax12.setGoal(248);
+    wait(2);
 }
\ No newline at end of file
--- a/deplacement.cpp	Fri May 06 17:33:43 2016 +0000
+++ b/deplacement.cpp	Fri May 06 18:25:24 2016 +0000
@@ -75,11 +75,30 @@
     int distance_ticks_right = theta_*ENTRAXE/(2*(diameter_right*3.14159/4096));
 
     if (theta_ < 0)
-        roboclaw.SpeedAccelDeccelPositionM1M2(-accel_angle, vitesse_angle, deccel_angle, distance_ticks_right, accel_angle, vitesse_angle, deccel_angle, distance_ticks_left, 1);
+        roboclaw.SpeedAccelDeccelPositionM1M2(accel_angle, vitesse_angle, deccel_angle, distance_ticks_right, accel_angle, vitesse_angle, deccel_angle, distance_ticks_left, 1);
     else
-        roboclaw.SpeedAccelDeccelPositionM1M2(-accel_angle, vitesse_angle, deccel_angle, distance_ticks_right, -accel_angle, vitesse_angle, deccel_angle, distance_ticks_left, 1);
+        roboclaw.SpeedAccelDeccelPositionM1M2(accel_angle, vitesse_angle, deccel_angle, distance_ticks_right, accel_angle, vitesse_angle, deccel_angle, distance_ticks_left, 1);
 
-    wait(10);
+    wait(3);
     roboclaw.ForwardM1(0);
     roboclaw.ForwardM2(0);
+}
+
+void Odometry::GotoDistPos(double distance)
+{
+    int32_t pos_initiale_right = m_pulses_right, pos_initiale_left = m_pulses_left;
+
+    int32_t distance_ticks_right = (int32_t) distance/m_distPerTick_right + pos_initiale_right;
+    int32_t distance_ticks_left = (int32_t) distance/m_distPerTick_left + pos_initiale_left;
+
+    roboclaw.SpeedAccelDeccelPositionM1M2(accel_dista, avant ? vitesse_dista : 0 - vitesse_dista, deccel_dista, distance_ticks_right, accel_dista, avant ? vitesse_dista : 0 - vitesse_dista, deccel_dista, distance_ticks_left, 1);
+
+    //logger.printf("IniR:%6d\tDistR:%6d\tIniL:%6d\tDistL:%6d\n\r", pos_initiale_right, distance_ticks_right, pos_initiale_left, distance_ticks_left);
+    
+    while((m_pulses_right != distance_ticks_right)&&(m_pulses_left != distance_ticks_left)); //logger.printf("PR:%6d\tIR:%6d\tDR:%6d\tPL:%6d\tIL:%6d\tDL:%6d\n\r",m_pulses_right, pos_initiale_right, distance_ticks_right, m_pulses_left, pos_initiale_left, distance_ticks_left);
+    
+    wait(0.4);
+    //logger.printf("arrivey %d\n\r",pos_prog);
+    //logger.printf("X : %3.2f\tY : %3.2f\tTheta : %3.2f\n\r", getX(), getY(), getTheta()*180/PI);
+    logger.printf("End\n\r");
 }
\ No newline at end of file
--- a/entete.h	Fri May 06 17:33:43 2016 +0000
+++ b/entete.h	Fri May 06 18:25:24 2016 +0000
@@ -48,9 +48,9 @@
 
 #define ENTRAXE 243.8
 
-#define accel_angle 400
-#define vitesse_angle 400
-#define deccel_angle 400
+#define accel_angle 3200
+#define vitesse_angle 3200
+#define deccel_angle 3200
 
 #define accel_dista 2000
 #define vitesse_dista 2000
--- a/main.cpp	Fri May 06 17:33:43 2016 +0000
+++ b/main.cpp	Fri May 06 18:25:24 2016 +0000
@@ -87,8 +87,8 @@
         GotoDist(4.6);
     }
     else if (SCouleur == NOIR) {
-        end.attach(&endFonc, 90);
-        GotoDist(9.0);
+        GotoThet(-3.14159/2);
+        GotoDist(1);
     }
 
     while(1);