2.2 Méthode d’extension pour robots à pattes
2.2.2 Méthode de planification locale
| {z }
H¨c +m
"
−g
c× −g
#
| {z }
h=
"
I
3... I
3ˆ
p
1... pˆ
k#
V
| {z }
Gβ (2.3)
Ainsi, si il existe unβ
∗tel queβ
∗≥0et que l’équation (2.3) est satisfaite, alors
le système respecte les contraintes de non glissement et donc respecte nos conditions
de validité dynamique. Notre test revient donc à résoudre le LP suivant :
find β
s.t.Gβ=H¨c+h
β≥0
(2.4)
2.2.2 Méthode de planification locale
Notre méthode de planification locale est basée sur la méthode
dé-crite dans la sous-section 1.2.1, nommée Double Integrator Minimum Time
(DIMT)[Kröger 2006, Hauser 2010, Kunz 2014]. Nous introduisons maintenant
notre extension pour la locomotion des robots à jambes.
Nous rappelons que la méthode DIMT prend en entrée deux étatsx
0= (c
0,˙c
0,¨c
0)
et x
1= (c
1,˙c
1,¨c
1) ainsi que des bornes d’accélération et de vitesse (constantes et
symétriques) pour chaque degrés de liberté du système. Ici, nous considérons le
modèle centroidal et nos degrés de liberté sont donc les trois translations selon les
trois axes du repère cartésien. Ces bornes sont donc représentées ainsi :
−c˙
max{x,y,z}≤ c˙
{x,y,z}≤ c˙
max{x,y,z}−c¨
max{x,y,z}≤ c¨
{x,y,z}≤ ¨c
max{x,y,z}(2.5)
Cette méthode produit en sortie une trajectoire x(t) définie par :
x:t∈[0, t
f]7→<c(t),˙c(t),¨c(t)>
Tel que x(0) =x
0et x(t
f) =x
1, et x(t) respecte les bornes de vitesse et
d’accélé-ration données.
2.2.2.1 Problème de la locomotion de robots à pattes
Lors de la locomotion de robots à pattes, les contraintes dynamiques appliquées
au centre de masse sont imposées par les contacts entre le robot et l’environnement.
De ce fait, les bornes d’accélération du centre de masse ne sont ni constantes ni
sy-métriques et elles ne peuvent pas être définies à priori sans connaissance des contacts
actuels du robot. En effet, ces bornes vont correspondre aux accélérations
admis-sibles du centre de masse. C’est à dire l’ensemble des accélérations qui permettent
de satisfaire les contraintes de non glissement.
Or, l’accélération admissible dépend entre autre des points de contact et des
normales de contact, la figure2.1montre un exemple intuitif : si l’on désire effectuer
un mouvement vers la gauche du robot et que l’on a seulement des contacts entre les
pieds et le sol, l’amplitude maximale de l’accélération qui permet de respecter les
contraintes de non glissement est relativement faible. Si l’on rajoute un contact avec
la main droite contre un mur, cette amplitude maximale augmente grandement.
D’autre part, comme décrit par l’équation (2.3), l’accélération admissible dépend
également de la position du centre de masse comme on peut l’observer sur la figure
2.2.
Figure 2.1 – Exemple de contraintes dynamiques dépendantes des contacts actifs
pour HRP-2. Sur la figure de gauche, seuls les pieds sont en contact, sur la figure
de droite la main droite est en contact avec le mur. Le vecteur jaune représente
l’accélération admissible maximale vers la gauche du robot.
Afin d’être capable de gérer des bornes en accélération dépendantes de l’état et
qui varient donc durant la planification, nous avons proposé de calculer ces bornes
seulement pour l’état et la phase de contact initial de chaque appel à la méthode
de planification locale : x
{p}0
.
Ainsi, la trajectoire produite par la méthode de planification locale est valide
dans le voisinage de l’état initial, et la méthode de validation de trajectoire
présen-2.2. Méthode d’extension pour robots à pattes 55
Figure2.2 – Exemple de contraintes dynamiques dépendantes de l’état pour
HRP-2. Chaque couleur correspond à une phase de contact différente (ie. différents points
de contact avec des normales au contact différentes) pour une position de l’origine
du robot identique. Les polygones représentent la relation entre l’accélération
ad-missible du centre de masse et sa position, selon l’axex.
tée dans la section précédente permet de déterminer exactement les limites de ce
voisinage.
Bien que les bornes d’accélération utilisées ne soient valides que pour l’état
initial de la planification locale, le fait d’utiliser ces bornes plausibles augmente
grandement la probabilité que la méthode de planification locale produise des
tra-jectoires valides par rapport à l’utilisation de bornes naïves constantes durant toute
la planification, comme montré par les résultats de la section 2.4.2.3.
2.2.2.2 Calcul des bornes d’accélération
Plutôt que de calculer explicitement toutes les bornes d’accélération admissibles
en utilisant une méthode de double description, nous préférons utiliser une méthode
d’optimisation afin de calculer la borne dans une direction spécifique car cette
ap-proche se révèle moins coûteuse en temps de calcul [Del Prete 2016].
Pour estimer les bornes d’accélération admissibles dans le voisinage de l’état
x
{p}0, nous allons procéder selon les étapes suivantes :
Premièrement, la méthode DIMT est appelée avec des bornes d’accélération
ar-bitrairement grandes, définies manuellement :
−¨c
∞{x,y,z}≤c¨
{x,y,z}≤¨c
∞{x,y,z}(2.6)
Ces bornes permettent d’imposer une amplitude d’accélération maximale autorisée,
mais ne prennent pas en compte les contraintes dynamiques.
phases à accélération constante, nous nous intéressons à la direction de la première
phase, notée par le vecteur unitaire a.
Ensuite, nous calculons l’accélération maximale selon la direction trouvée qui
satisfasse les contraintes de non glissement à l’état x
{p}0
:
¨c
max=α
∗a ,α
∗∈R
+(2.7)
Enfin, la méthode DIMT est appelée une seconde fois, en utilisant comme bornes
d’accélération la projection de¨c
maxselon les axes (x,y,z) :
−¨c
max{x,y,z}≤¨c
{x,y,z}≤c¨
max{x,y,z}(2.8)
Avec ¨c
max{x,y,z}