Comment fonctionne Alion ? [1]

On m’a raconté une anecdote intéressante sur la bipédie dynamique et sa puissance pédagogique :

Il existe une école d’ingénieur en Chine qui propose un cours complet sur la bipédie dynamique passive. On fournit à l’élève un montage fait de deux jambes d’aluminium reliées par une barre, trois élastiques, 2 masselottes et 4 épingles à linge. Dans le laboratoire, une planche de bois de 2 mètres de long, horizontale est déposée avec des petites cales (juste la place pour que les pieds s’appuient dessus) disposées à intervalle régulier.

De l’autre côté du laboratoire, des calculateurs dédiés à la simulation mécanique. Chaque groupe d’élève doit configurer son dispositif de marche sachant qu’il n’a droit qu’à un seul essai, et que la note du TP est directement proportionnelle à la distance parcourue par le « robot ». Cette épreuve met en œuvre les problèmes de sens physique, de qualité de modélisation, de système D. Je trouve le concept intéressant (le système de notation est un peu vache par contre).

Ceci montre que le problème de la bipédie peut être accessible si l’on s’y penche de manière méthodique et avec du recul.

Je vais ici montrer quelques aspects de la conception de Alion, mon petit bipède qui a fait ses premiers pas il n’y a pas si longtemps au mondial du modélisme et aussi sur la scène du théâtre du Grand Rond à Toulouse ;-)

[youtube]http://www.youtube.com/watch?v=i355t53eKjM[/youtube]

1 La stabilité

C’est le maître mot de la bipédie dynamique. Je vais m’y attarder dans ce paragraphe. Un système est stable si, quand on lui fournit des entrées bornées, il répond avec des sorties bornées. C’est par exemple le rôle d’un moteur sous un pendule inversé qui doit le maintenir vertical. Les nouveaux robots bipèdes (semi-passifs) considèrent une théorie qui permet de comprendre la stabilité et de la manipuler avec les mains. C’est la théorie des cycles limites.

Un cycle limite est un phénomène qui se caractérise par un évènement qui se répète plusieurs fois tout en étant nominal avec une période pas forcément constante. Cela signifie que si on prend en photo (photo avec les vitesses) le phénomène quand l’évènement se produit, on peut mesurer chaque variable du système.

Un robot bipède est un système à cycle limite. L’évènement à considérer est le choc de la jambe avant sur le sol quand on avance. Imaginez que l’on prenne en photo un robot bipède de profil qui avance à chaque choc avec le sol. Vous obtenez une suite de photos.

Le robot sera dit stable si au bout d’un certain nombre de photos, toutes les photos sont identiques. Et a fortiori si le robot ne tombe pas.

Chaque photo sera dépendante de la photo précédente, sera dépendante de la façon dont le robot sera lancé avant. Le but des laboratoires étudiant le sujet est de construire la partie commande d’un tel système de manière à ce que la suite soit convergente. On oublie ce qui se passe entre deux pas dans l’analyse.

Pour le problème en deux dimensions, cela permet d’identifier exactement 3 causes d’instabilités qui rendent donc impossible une convergence vers un cycle limite.

1.1 La chute en avant

On prend une photo ou le robot a une jambe devant et une derrière. Comment est-ce qu’il est possible de faire une chute en avant ? C’est tout simplement que cette photo est prise alors que le robot a une vitesse très forte et que le contact sol avec le pied opposé n’a pas eu lieu. Cela arrive quand le robot bascule en avant et n’a pas le temps de mettre la jambe devant pour se rattraper.

1.2 Le cloche-patte

C’est un type de chute en avant un peu particulier puisque dans ce cas, la jambe a voulu aller en avant mais est arrêtée dans son élan par le sol lui-même. Cela arrive quand on ne plie pas assez le genou ou quand on ne lève pas assez haut la hanche (si on s’efforce à ne pas plier le genou).

1.3 La chute en arrière

Cela arrive quand le robot passe une jambe devant mais qu’il n’a pas assez d’élan pour passer le cap où il peut tomber naturellement vers l’avant. Ceci est dû à un manque d’énergie. La gestion de l’énergie est capitale pour comprendre le mouvement bipède. Les robots entièrement passifs sont souvent mis à l’épreuve sur une plan incliné. La descente du plan lui permet d’avancer.

Dans ce cas, l’énergie se déplace comme suit :

  • La vitesse du robot lancé lui permet avoir une énergie cinétique
  • Cette énergie permet au robot de monter sur sa jambe d’appui en transformant l’énergie cinétique en énergie de pesanteur
  • Puis le robot retombe en avant en reprenant de la vitesse et son énergie cinétique
  • Quand il tombe en avant, le robot fait un choc avec le sol mais ne rebondit pas. C’est un choc mou qui absorbe de l’énergie.

Si on fait un bilan, c’est l’énergie de la pente qui compense la perte lors du choc. Le but du contrôleur bipède est d’injecter de l’énergie par un autre moyen que la pente.

Un moyen d’injecter de l’énergie dans le cycle limite pour qu’il soit entretenu est le gros problème de la bipédie dite semi-passive. Il existe de nombreux moyens :

  • La mise en avant volontaire de la jambe se balançant (au lieu de la laisser se balancer naturellement)
  • la propulsion avec le pied à l’arrière pour à la fois propulser la jambe vers l’avant et le centre de gravité global.
  • Pencher le haut du corps légèrement vers l’avant pour faciliter le passage du cap vers la chute avant.

La « chimie » du problème consiste à injecter l’energie tout en ne détruisant pas la stabilité du robot. Il s’avère que pour la propulsion avec le pied arrière (dit « push-off ») cela participe naturellement à la stabilité du cycle. En revanche, se pencher en avant sera instabilisant.

Malheureusement, le raisonnement ci-dessus n’est pas suffisant quand on raisonne en 3 dimensions. La troisième dimension apporte en effet un quatrième type de chute : la chute sur le côté.

1.4 La chute sur le côté

Il y a deux types de causes à une chute sur le côté. La première est la chute latérale directe qui est due à un lancé du robot trop loin sur le côté et l’empêchant de se rattraper (c’est l’équivalent de la chute en avant mais vue quand le robot est de face). Le deuxième type de chute est la vrille. Le balancement de la jambe entraine un couple d’inertie sur le robot qui le fait vriller. C’est le type de chute que j’observe le plus sur Alion.

Le premier type de chute peut être contrecarré avec la mesure d’un gyroscope ainsi que par des couplages roulis/lacet comme sur un vélo. En revanche, pour empêcher la vrille, il faut une bonne accroche au sol ce qui implique une souplesse vis à vis du sol (le pied doit épouser le sol de manière instantanée) et la génération du couple fait par la jambe se balançant doit aussi minimisé où alors contrecarré. C’est le problème auquel je suis actuellement confronté. (cela peut être à priori utile pour fabriquer un quadrupède qui se hanchera un minimum.

1.5 Alion

En attendant la suite, Alion est pour le moment étudié pour éviter les deux chutes en avant. Pour cela, il possède deux jambes articulées au genou avec un capteur de contact sous chaque pied et deux mesures d’angle au niveau de la cuisse.

L’algorithme est le suivant (il est simplifié ici mais le vrai programme en C coute 600 lignes de code)

tant que le monde est monde

si etat = 1

mettre la jambe gauche devant

la valeur du genou gauche est égal à la valeur de l’articulation de la cuisse droite

si contact pied gauche alors etat = 2

fin si

si etat = 2

mettre la jambe droite devant

la valeur du genou droit est égal à la valeur de l’articulation de la cuisse gauche

si contact pied droit alors etat = 1

fin si

attendre 1 milliseconde

fin tant que

La principale difficulté du programme est la gestion des signes des différentes articulations. Cela demande une rigueur conséquente en géométrie.

Prochaine étape : injecter de l’énergie par push-off (ce qui a tendance à compenser naturellement l’effet vrille… on en profite)

 

 

 

 

Related posts:

2 Commentaires

  • 20 juillet 2011 - 17 h 48 min | Permalien

    Pour le moment, non je n’utilise pas le gyro. Mais en principe, j’en aurai besoin pour le latéral. Pour ce qui concerne le ZMP, c’est en effet un indicateur qui peut-être utile à regarder en bipédie. L’avantage du bipède tel que je l’ai aujourd’hui c’est que le ZMP se trouve soit au talon, soit directement sous l’articulation de la cheville (soit le talon tape, soit le moteur de la cheville est éteint)

  • 19 juillet 2011 - 19 h 24 min | Permalien

    Mais c’est bien intéressant, tout ça. Si je comprend bien, tu n’exploites pas encore le gyro. Je me trompe?

    Pour ma part, je me contente de me documenter sur le ZMP. Ca permet apparemment de faire plus de choses que je ne le pensais, y compris de la marche dynamique.

    Leon.

  • Laisser un commentaire

    Featuring Recent Posts WordPress Widget development by YD