From fc4e40da021c2668c7178fcb854b14db91c54116 Mon Sep 17 00:00:00 2001 From: Samuel Date: Mon, 28 Apr 2025 23:27:07 +0200 Subject: [PATCH] =?UTF-8?q?Am=C3=A9lioration=20de=20l'algo=20d'approche=20?= =?UTF-8?q?des=20gradins.=20Il=20met=20entre=208=20et=2020=20secondes=20po?= =?UTF-8?q?ur=20s'approcher=20d'un=20gradin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cerveau/Cerveau.ino | 78 ++++++++++++++++++++++++++++---------- Doc/Communication I2C.odt | Bin 27208 -> 27273 bytes Doc/Communication I2C.pdf | Bin 38122 -> 39635 bytes 3 files changed, 58 insertions(+), 20 deletions(-) diff --git a/Cerveau/Cerveau.ino b/Cerveau/Cerveau.ino index 39715b9..a647d31 100644 --- a/Cerveau/Cerveau.ino +++ b/Cerveau/Cerveau.ino @@ -25,6 +25,9 @@ #define COULEUR_BLEU 0 #define COULEUR_JAUNE 1 +#define GRADIN_PRECISION_ANGLE_RAD 0.009 +#define GRADIN_PRECISION_X_MM 10 + #define gst_server; extern const char *ssid; @@ -507,7 +510,8 @@ enum etat_action_t gradin_approche(void){ GA_GOTO_EN_FACE, GA_TOURNE_LARGE, GA_GOTO_PROCHE, - GA_GOTO_PREND + GA_GOTO_PREND, + GA_RECULE } statu_approche_gradin = GA_INIT; static float angle_parcouru, angle_mem; static int nb_erreur; @@ -515,6 +519,7 @@ enum etat_action_t gradin_approche(void){ float distance; struct detect_gradin_t detect_gradin; + delay(150); Detect_gradin(&detect_gradin); char chaine[200]; sprintf(chaine, "I2C OK\nStatus:%d\nCentre X:%4d\nCentre Y:%4d\nAngle:%2.2f\n", detect_gradin.status, @@ -533,13 +538,18 @@ enum etat_action_t gradin_approche(void){ statu_approche_gradin = GA_GOTO_LARGE; angle_mem = detect_gradin.angle_rad; nb_erreur = 0; + }else if(detect_gradin.centre_y_mm < 180){ + statu_approche_gradin = GA_RECULE; + }else if(detect_gradin.status == 3){ + // On a un grain sur la droite + statu_approche_gradin = GA_CHERCHE_DROIT; }else if(detect_gradin.status == 0){ // On a perdu la détection - while(deplacement_relatif(0, 0, -3. * M_PI / 180., 0) == ACTION_EN_COURS); + while(deplacement_relatif(0, 0, 3. * M_PI / 180., 0) == ACTION_EN_COURS); statu_approche_gradin = GA_CHERCHE_DROIT; }else{ // On tourne à gauche de quelques degrés - while(deplacement_relatif(0, 0, 3. * M_PI / 180., 0) == ACTION_EN_COURS); + while(deplacement_relatif(0, 0, -3. * M_PI / 180., 0) == ACTION_EN_COURS); } break; @@ -549,13 +559,18 @@ enum etat_action_t gradin_approche(void){ statu_approche_gradin = GA_GOTO_LARGE; angle_mem = detect_gradin.angle_rad; nb_erreur = 0; + }else if(detect_gradin.centre_y_mm < 180){ + statu_approche_gradin = GA_RECULE; + }else if(detect_gradin.status == 4){ + // On a un grain sur la gauche + statu_approche_gradin = GA_CHERCHE_GAUCHE; }else if(detect_gradin.status == 0){ // On a perdu la détection statu_approche_gradin = GA_INIT; return ACTION_ECHEC; }else{ // On tourne à gauche de quelques degrés - while(deplacement_relatif(0, 0, -3. * M_PI / 180., 0) == ACTION_EN_COURS); + while(deplacement_relatif(0, 0, 3. * M_PI / 180., 0) == ACTION_EN_COURS); } break; @@ -568,44 +583,67 @@ enum etat_action_t gradin_approche(void){ affiche_erreur("Gradin Approche", "GA_GOTO_LARGE\n Status != 2"); while(1); } - } - translation_x = (detect_gradin.centre_y_mm + 150) * tan(fabs(detect_gradin.angle_rad)); - translation_y = -(detect_gradin.centre_y_mm + 150) * sin(detect_gradin.angle_rad) - detect_gradin.centre_x_mm; + }else if(detect_gradin.centre_y_mm < 180){ + // On est trop près, on ne détectera pas le gradin si on est devant + statu_approche_gradin = GA_RECULE; + }else{ + // On se centre par rapport au gradin + //translation_x = (detect_gradin.centre_y_mm + 150) * tan(fabs(detect_gradin.angle_rad)); + //translation_y = -(detect_gradin.centre_y_mm + 150) * sin(detect_gradin.angle_rad) - detect_gradin.centre_x_mm; + translation_x = (detect_gradin.centre_y_mm + 150) * tan(fabs(detect_gradin.angle_rad)); + translation_y = -(detect_gradin.centre_y_mm + 150) * sin(detect_gradin.angle_rad) - detect_gradin.centre_x_mm; - if(deplacement_relatif(translation_x, translation_y, 0, 0) == ACTION_TERMINEE){ + while(deplacement_relatif(translation_x, translation_y, 0, 0) == ACTION_TERMINEE); statu_approche_gradin = GA_TOURNE_LARGE; + angle_mem = detect_gradin.angle_rad; + } break; case GA_TOURNE_LARGE: - if(deplacement_relatif(0, 0, -angle_mem, 0) == ACTION_TERMINEE){ - Detect_gradin(&detect_gradin); - if(detect_gradin.status != 2 || fabs(detect_gradin.angle_rad) > 0.009){ - statu_approche_gradin = GA_CHERCHE_GAUCHE; + while(deplacement_relatif(0, 0, -angle_mem, 0) != ACTION_TERMINEE); + delay(150); + Detect_gradin(&detect_gradin); + if(detect_gradin.status != 2){ + statu_approche_gradin = GA_CHERCHE_GAUCHE; + }else if(detect_gradin.centre_y_mm < 180){ + statu_approche_gradin = GA_RECULE; + }else if(fabs(detect_gradin.angle_rad) > GRADIN_PRECISION_ANGLE_RAD){ + angle_mem = detect_gradin.angle_rad; + }else{ + if(detect_gradin.centre_y_mm > 240){ + statu_approche_gradin = GA_GOTO_PROCHE; }else{ - if(detect_gradin.centre_y_mm > 220){ - statu_approche_gradin = GA_GOTO_PROCHE; + if(fabs(detect_gradin.centre_x_mm) > 10){ + statu_approche_gradin = GA_GOTO_LARGE; }else{ statu_approche_gradin = GA_GOTO_PREND; } } - } break; case GA_GOTO_PROCHE: Detect_gradin(&detect_gradin); - if(deplacement_relatif((detect_gradin.centre_y_mm - 180), 0, 0, 0) == ACTION_TERMINEE){ + if(deplacement_relatif((detect_gradin.centre_y_mm - 200), 0, 0, 0) == ACTION_TERMINEE){ statu_approche_gradin = GA_GOTO_EN_FACE; } break; case GA_GOTO_PREND: - if(deplacement_relatif((detect_gradin.centre_y_mm - 25), 0, 0, 0) == ACTION_TERMINEE){ - statu_approche_gradin = GA_INIT; - return ACTION_TERMINEE; - } + while(deplacement_relatif((detect_gradin.centre_y_mm - 25), 0, 0, 0) != ACTION_TERMINEE); + statu_approche_gradin = GA_INIT; + delay(5000); + return ACTION_TERMINEE; + break; + + case GA_RECULE: + while(deplacement_relatif((detect_gradin.centre_y_mm - 220), 0, 0, 0) != ACTION_TERMINEE); + statu_approche_gradin = GA_CHERCHE_GAUCHE; + break; + + } diff --git a/Doc/Communication I2C.odt b/Doc/Communication I2C.odt index b78cc56de6b71cd6aaa4c72b8e453aa8b660b63a..1e3aea141bb0a92561eb87308e3de758205cbe83 100644 GIT binary patch delta 9042 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 VBuLf<70dvnXG04;Y5q6B{{nZz?05hG diff --git a/Doc/Communication I2C.pdf b/Doc/Communication I2C.pdf index 98843df892c49590992a646ac83ae237c266d164..81a483aee59ecd9e3c0d80f6d29932b2ed135798 100644 GIT binary patch delta 17167 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ΝjAErR}=?hYx+?S8SN<7mZSyO`cr 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 H;z<7saj_+S