carte_strategie_2019

Dependencies:   mbed SerialHalfDuplex SDFileSystem DISCO-F469NI_portrait liaison_Bluetooth ident_crac

Revision:
75:1db1b929f13d
Parent:
73:bf4d6d9db13b
Child:
76:b5eb99354389
--- a/Strategie/Strategie.cpp	Mon May 27 10:43:43 2019 +0000
+++ b/Strategie/Strategie.cpp	Mon May 27 12:38:21 2019 +0000
@@ -70,7 +70,7 @@
 char check;
 char Jack = 1;
 short SCORE_GLOBAL=0;
-short SCORE_GR=20;
+short SCORE_GR=40;
 short SCORE_PR=0;
 
 int flag = 0, flag_strat = 0, flag_timer;
@@ -497,7 +497,7 @@
                 }
             }
             break;
-    
+
 
         case TEST_SERVO:        //TEST DU RESTE DES SERVOS DISPO HORS TIR
             lcd.SetBackColor(LCD_COLOR_WHITE);
@@ -552,7 +552,7 @@
             RETOUR.Draw(ROUGE, 0);
 
             etat=DEMO;
-          
+
             break;
 
 
@@ -1055,80 +1055,70 @@
             rn42_Tx.printf("A");//lance l'electron
             actionPrecedente = instruction.order;
             switch(instruction.order) {
-                case MV_BEZIER:
-                {
+                case MV_BEZIER: {
                     static vector< vector<short> >P1;
                     static vector< vector<short> >C1;
                     static vector< vector<short> >C2;
                     static int i = 0;
-        
+
                     //Ajoute une ligne aux tableaux pour chaques courbes de la trajectoire
                     P1.push_back(vector<short>());    //Nouvelle ligne
                     C1.push_back(vector<short>());    //Nouvelle ligne
                     C2.push_back(vector<short>());    //Nouvelle ligne
-        
+
                     P1[i].push_back(instruction.arg1);   //Nouvelle colonne X
                     C1[i].push_back(instruction.arg3);   //Nouvelle colonne X
                     C2[i].push_back(instruction.arg5);   //Nouvelle colonne X
-                    
-                    if(InversStrat == 1 && ingnorInversionOnce == 0)
-                    {
+
+                    if(InversStrat == 1 && ingnorInversionOnce == 0) {
                         P1[i].push_back(3000-instruction.arg2);   //Nouvelle colonne Y
                         C1[i].push_back(3000-instruction.arg4);   //Nouvelle colonne Y
                         C2[i].push_back(3000-instruction.arg6);   //Nouvelle colonne Y
-                    }
-                    else
-                    {
+                    } else {
                         P1[i].push_back(instruction.arg2);   //Nouvelle colonne Y
                         C1[i].push_back(instruction.arg4);   //Nouvelle colonne Y
                         C2[i].push_back(instruction.arg6);   //Nouvelle colonne Y
                     }
-        
+
                     i++;
-        
-                    if(instruction.nextActionType == WAIT) //Si il n'y a qu'une seule courbe ou que c'est la dernière courbe de la trajectoire
-                    {
+
+                    if(instruction.nextActionType == WAIT) { //Si il n'y a qu'une seule courbe ou que c'est la dernière courbe de la trajectoire
                         //Passage des points dans des variables temporaires pour pouvoir clear les vector avant d'être bloqué dans l'attente de l'ack
                         //Empeche les vector de ne pas être reset si l'ack n'est pas reçu avant la fin du match
                         int nbCourbes = P1.size();
                         short P1_temp[nbCourbes][2];
                         short C1_temp[nbCourbes][2];
                         short C2_temp[nbCourbes][2];
-        
-                        for(int j=0; j<nbCourbes; j++)
-                        {
-                            for(int i=0; i<2; i++)
-                            {
+
+                        for(int j=0; j<nbCourbes; j++) {
+                            for(int i=0; i<2; i++) {
                                 P1_temp[j][i] = P1[j][i];
                                 C1_temp[j][i] = C1[j][i];
                                 C2_temp[j][i] = C2[j][i];
                             }
                         }
-                        
+
                         //Clear des tableaux de points pour la prochaine trajectoire
                         P1.clear();
                         C1.clear();
                         C2.clear();
                         i = 0;
-                        
+
                         //Calcul de la courbe et envoi des valeurs
-                        if(instruction.direction == FORWARD)
-                        {
+                        if(instruction.direction == FORWARD) {
                             courbeBezier(nbCourbes, P1_temp, C1_temp, C2_temp, 0);
-                        }
-                        else if(instruction.direction == BACKWARD)
-                        {
+                        } else if(instruction.direction == BACKWARD) {
                             courbeBezier(nbCourbes, P1_temp, C1_temp, C2_temp, 1);
                         }
-                        
+
                         waitingAckID = ASSERVISSEMENT_BEZIER;
                         waitingAckFrom = ACKNOWLEDGE_MOTEUR;
                     }
                     break;
                 }
 
-                    
-                
+
+
                 case MV_COURBURE://C'est un rayon de courbure
                     actionPrecedente = MV_COURBURE;
                     waitingAckID = ASSERVISSEMENT_COURBURE;
@@ -2066,10 +2056,14 @@
                     angle_moyen_balise_IR = debut_angle_detection + (fin_angle_detection-debut_angle_detection)/2;
 
 #ifdef ROBOT_BIG
-                float seuil_bas_avant = 12.0;  // >=
-                float seuil_haut_avant = 0.0; // <=
-                float seuil_bas_arriere = 4.0;
-                float seuil_haut_arriere = 8.0;
+                /*   float seuil_bas_avant = 12.0;  // >=   
+                   float seuil_haut_avant = 0.0; // <=
+                   float seuil_bas_arriere = 4.0;
+                   float seuil_haut_arriere = 8.0;*/
+                float seuil_bas_avant = 13.0;
+                float seuil_haut_avant = 15.0;
+                float seuil_bas_arriere = 5.0;
+                float seuil_haut_arriere = 7.0;
 #else
                 float seuil_bas_avant = 13.0;
                 float seuil_haut_avant = 15.0;
@@ -2485,13 +2479,13 @@
     unsigned short position_avant_droite=0;
     unsigned short position_arriere_gauche=0;
     unsigned short position_arriere_droite=0;
-    
+
     unsigned short tempo= telemetreDistance_arriere_gauche;
     telemetreDistance_arriere_gauche=telemetreDistance_arriere_droite;
     telemetreDistance_arriere_droite=tempo;
-    
-    
-    
+
+
+
     if(theta_robot >= 450 && theta_robot <= 1350)
         orientationArrondie = 90;
     else if(theta_robot <= -450 && theta_robot >= -1350)