l

Dependencies:   mbed Asser2

Revision:
3:d38aa400d5e7
Parent:
2:3066e614372f
Child:
4:eac6746544fb
--- a/deplacement.cpp	Wed May 08 21:19:10 2019 +0000
+++ b/deplacement.cpp	Thu May 09 07:09:54 2019 +0000
@@ -112,14 +112,14 @@
     if(abs(vitesse_G) > 900){
         vitesse_local_G=900;
     }
-    if(abs(vitesse_G)<2){
-        vitesse_local_G=2;
+    if(abs(vitesse_G)<10){
+        vitesse_local_G=10;
     }
     if(abs(vitesse_D) > 900){
         vitesse_local_D=900;
     }
-    if(abs(vitesse_D)< 2){
-        vitesse_local_D=2;
+    if(abs(vitesse_D)< 10){
+        vitesse_local_D=10;
     
     }
     ;
@@ -149,7 +149,7 @@
         set_PWM_moteur_D(0);
     }
 }
-void deplacement::reculer_un_peu(int distance)
+void deplacement::marche_arriere(int distance)
 {
     somme_y=0;
     // le robot avance en ligne droite sur une distance donnée, à la vitesse voulue (entre 0 et 900)
@@ -214,13 +214,13 @@
             //printf("   VG : %f  VD : %f ; x_local : %lf, y_local : %lf, angle_vise : %f\n",vitesse_G,vitesse_D, x_local,y_local, angle);// sqrt((x_ini - x_actuel)*(x_ini - x_actuel) + (y_ini - y_actuel)*(y_ini - y_actuel)), y_actuel, (x_actuel - x_ini)*(x_actuel - x_ini) + (y_actuel - y_ini)*(y_actuel - y_ini));
     }
     //printf("x : %d, y : %d, angle : %f\n", get_x_actuel(), get_y_actuel(),get_angle());
-    test_rotation_abs(angle_vise_deg);
+    rotation_abs(angle_vise_deg);
     //printf("x : %d, y : %d, angle : %f\n", get_x_actuel(), get_y_actuel(),get_angle());
 }
 
 
 
-void deplacement::ligne_droite_v2(long int distance)
+void deplacement::ligne_droite(long int distance)
 {
     somme_y=0;
     // le robot avance en ligne droite sur une distance donnée, à la vitesse voulue (entre 0 et 900)
@@ -285,11 +285,11 @@
             //printf("   VG : %f  VD : %f ; x_local : %d, y_local : %d, angle_vise : %f",vitesse_G,vitesse_D, x_local,y_local, angle_vise_deg);// sqrt((x_ini - x_actuel)*(x_ini - x_actuel) + (y_ini - y_actuel)*(y_ini - y_actuel)), y_actuel, (x_actuel - x_ini)*(x_actuel - x_ini) + (y_actuel - y_ini)*(y_actuel - y_ini));
     }
     //printf("x : %d, y : %d, angle : %f\n", get_x_actuel(), get_y_actuel(),get_angle());
-    test_rotation_abs(angle_vise_deg);
+    rotation_abs(angle_vise_deg);
     //printf("x : %d, y : %d, angle : %f\n", get_x_actuel(), get_y_actuel(),get_angle());
 }
 
-void deplacement::test_rotation_rel(double angle_vise)
+void deplacement::rotation_rel(double angle_vise)
 {
     // rotation de angle_vise
     motors_on();
@@ -328,17 +328,17 @@
     //consigne_G = 0;
     vitesse_nulle_G(0);
     vitesse_nulle_D(0);
-    wait(0.2);
+    wait(0.1);
     motors_stop();
 }
 
 
-void deplacement::test_rotation_abs(double angle_vise)
+void deplacement::rotation_abs(double angle_vise)
 {
     actualise_position();
     //printf("bite");
     double angle_rel = borne_angle_d(angle_vise-get_angle());
-    test_rotation_rel(angle_rel);
+    rotation_rel(angle_rel);
 }
 
 void deplacement::asservissement(){
@@ -381,8 +381,8 @@
          erreur_G += erreur_glissee_G[i];
     }
     
-    erreur_D = erreur_D/5.0;
-    erreur_G = erreur_G/5.0; // erreur est maintenant la moyenne des 5 erreurs prec
+    erreur_D = erreur_D/5.0f;
+    erreur_G = erreur_G/5.0f; // erreur est maintenant la moyenne des 5 erreurs prec
     
     somme_erreur_D += erreur_D;
     somme_erreur_G += erreur_G;
@@ -446,7 +446,7 @@
     t.start();
     for (int i =0;i<5 ;i++){
         changement_consigne(consigne_tab[i][0], consigne_tab[i][1]);
-        while(t.read()<0.5){
+        while(t.read()<0.5f){
             //actualise_positio n();
         }
         //printf("t.read() : %f\n",t.read());
@@ -461,16 +461,19 @@
     compteur_glisse = -1;   
 }
 
-void deplacement::bouton(){
-    DigitalIn depart(USER_BUTTON);
-    while (depart){}
-}
+
 
 void deplacement::poussette(){
     motors_on();
     commande_vitesse(150,150);
-    wait(1);
+    wait(1.5);
     vitesse_nulle_G(0);
     vitesse_nulle_D(0);
     motors_stop();
+}
+void deplacement::initialisation(){
+    init_odometrie();
+    init_hardware();
+    srand(time(NULL));
+    motors_on();
 }
\ No newline at end of file