Aller au contenu


Photo

Mon Quadruped FourBarQuad-2(4BQ2)


  • Veuillez vous connecter pour répondre
22 réponses à ce sujet

#21 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 768 messages
  • Gender:Male

Posté 28 septembre 2020 - 03:17

Je ne suis pas sûr de saisir ce que tu cherches à faire.

Je cherche à avoir une allure la plus naturelle possible et accessoirement, la plus rapide.

Bien entendu, j'ai analysé l'allure de Gorillabot et je suis en contact avec Sebastian sur le sujet.

Voici la fonction du Forward() après avoir calculé les positions.

void GorillatForward()
{
//  Legs                  FL                                     FR                                       BL                                    BR
  InverseKinematics( 10, 40,FLLS,FLRS);  InverseKinematics(-30,-40,FRLS,FRRS);  InverseKinematics( 30,-40,BLLS,BLRS);  InverseKinematics(-10, 40,BRLS,BRRS);  delay(Speed); // step 1
// Pos                PL1                                    PR1                                      PL4                                   PR2
  InverseKinematics(-75, 30,FLLS,FLRS);  InverseKinematics(-30,-40,FRLS,FRRS);  InverseKinematics( 30,-40,BLLS,BLRS);  InverseKinematics( 75, 30,BRLS,BRRS);  delay(Speed); // step 2
// Pos                PL2                                    PR1                                      PL4                                   PR3
  InverseKinematics(-45,-30,FLLS,FLRS);  InverseKinematics(-30,-40,FRLS,FRRS);  InverseKinematics( 30,-40,BLLS,BLRS);  InverseKinematics( 45,-30,BRLS,BRRS);  delay(Speed); // step 3
// Pos                PL3                                    PR1                                      PL4                                   PR4
  InverseKinematics( 30,-40,FLLS,FLRS);  InverseKinematics(-10, 40,FRLS,FRRS);  InverseKinematics( 10, 40,BLLS,BLRS);  InverseKinematics(-30,-40,BRLS,BRRS);  delay(Speed); // step 4
// Pos                PL4                                    PR2                                      PL1                                   PR1
  InverseKinematics( 30,-40,FLLS,FLRS);  InverseKinematics( 75, 30,FRLS,FRRS);  InverseKinematics(-75, 30,BLLS,BLRS);  InverseKinematics(-30,-40,BRLS,BRRS);  delay(Speed); // step 5
// Pos                PL4                                    PR3                                      PL2                                   PR1
  InverseKinematics( 30,-40,FLLS,FLRS);  InverseKinematics( 45,-30,FRLS,FRRS);  InverseKinematics(-45,-30,BLLS,BLRS);  InverseKinematics(-30,-40,BRLS,BRRS);  delay(Speed); // step 6
// Pos                PL4                                    PR4                                      PL3                                   PR1
}

 

En pièce jointe, voici l'analyse de l'allure de Gorillabot.

Il faut modifier le suffixe du fichier de .txt en .pptx pour pouvoir le lire avec PowerPoint.

Fichier(s) joint(s)



#22 pat92fr

pat92fr

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 673 messages
  • Gender:Male

Posté 28 septembre 2020 - 10:40

Bonsoir,

 

Quelques suggestions :

 

- Faire des cycles plus rapides en réduisant la hauteur du pas. Cela parait beaucoup 8 cm pour un sol plat.

 

- Interpoler les segments PL3-PL4 et PR4-PR1 (en 3 points au lieu d'un seul) pour rendre plus régulière la vitesse de déplacement du centre de gravité du robot.

 

- Entre la page 2 et la page 3, le servo de droite fait une rotation de 135°. Il est possible qu'il soit limité par sa vitesse de rotation. PL1 et PR2 pourraient être plus bas que PL2 et PR3 pour limiter l'ange de rotation de ce sevo durant ce court laps de temps.

 

Patrick.



#23 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 768 messages
  • Gender:Male

Posté 29 septembre 2020 - 06:20

Oui, j'ai également pensé à ce genre de choses.

- je peux très facilement modifier la hauteur du pas et j'ai essayé plusieurs pas qui vont de 10mm à 50mm.

- Sebastian travaille en angle, alors que je travaille en coordonnées X/Y. Là aussi, entre 2 points, j'ai un pas de 2mm à 15mm.

- je n'ai pas ce problème de vitesse car ma patte se déplace avec un pas qui peut varier à volonté.

 

Il y a bien d'autres considérations à prendre en compte. Le poids. GorillatBot fait 400g, alors que 4BQ2 fait 900g.

Par ailleurs, si vous observer bien les cycles des pattes dans le code, on a ;

- pour FL (Front Left), - PL1,PL2,PL3,PL4,PL4,PL4 - 

- pour FR (Front right) - PR1,PR1,PR1,PR2,PR3,PR4 -

 

Je pense que c'est plutôt sur ces derniers points que réside le secret de cet allure.

Je ne suis pas certain que Sebastian lui-même ait une vision claire des différents paramètres.

Sa démarche me semble plutôt basée sur l'empirisme et  . . . . . . le talent.






0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users