Robote 1 M 202 202
Robote 1 M 202 202
Robote 1 M 202 202
MI4
Philippe Fraisse
Université de Montpellier
18/01/2023
La disposition des roues est viable s’il existe un point unique de vitesse
nulle autour duquel tourne le robot. Il s’agit du Centre Instantané de
Rotation (CIR).
! ! !
VQ = VP + !
! ^ P Q = ~0
Philippe.Fraisse@lirmm.fr (UM) Robotique 1 18/01/2023 5 / 43
Introduction à la robotique mobile
Modélisation cinématique d’un véhicule
Modélisation cinématique
Avec : 0 ˙ 1
sin(✓)~x
!
! = @ ˙ cos(✓)~y A (1)
˙z
✓~
0 1
0
!
PQ = @ 0 A (2)
r~z
0 1
ẋ~x
! @ A
VP = ẏ~y (3)
0
On obtient :
˙z + ˙ sin(✓)~x
ẋ~x + ẏ~y + (✓~ ˙ cos(✓)~y ) ^ ( r~z ) = ~0 (4)
Philippe.Fraisse@lirmm.fr (UM) Robotique 1 18/01/2023 6 / 43
Introduction à la robotique mobile
Modélisation cinématique d’un véhicule
Modélisation cinématique
On projette cette équation sur les axes x et y.
˙z + ˙ sin(✓)~x
ẋ~x + ẏ~y + (✓~ ˙ cos(✓)~y ) ^ ( r~z ) = ~0 (5)
On obtient :
l/~x : ẋ + r ˙ cos(✓) = 0
(6)
/~y : ẏ + r ˙ sin(✓) = 0
On exprime ainsi le roulement sans glissement de la roue par une
contrainte non intégrale de la forme :
Modélisation de l’unicycle
On considère un véhicule unicycle avec L = 0.5m, et
Vgmax = Vdmax = 3m/s.
1 On veut réaliser une trajectoire circulaire dans le plan (o, x, y) avec la
vitesse maximale. Donner l’expression de x(t) et y(t).
2 En déduire les expressions des vitesses ẋ(t) et ẏ(t).
3 ˙
Déterminer les expressions de ✓(t) et ✓(t).
4 Donner les expressions de Vg (t) et Vd (t).
5 Déterminer le rayon de braquage maximal rmax pour une vitesse de
rotation !0 donnée en prenant en compte la vitesse maximale des
roues.
Modélisation du véhicule
On considère un véhicule avec D = 1m et Vmax = 10m/s.
1 On veut réaliser une trajectoire circulaire dans le plan (o, x, y) avec la
vitesse maximale. Donner l’expression de x(t) et y(t).
2 En déduire les expressions des vitesses ẋ(t) et ẏ(t).
3 ˙ et (t).
Déterminer les expressions de ✓(t), ✓(t)
4 Donner les expressions de V (t) et ⌘(t).
5 Déterminer le rayon de braquage maximal rmax pour une vitesse de
rotation !0 donnée en prenant en compte la vitesse du véhicule.
CdM = r1 + A1 r2 + A1 A2 r3 + A1 A2 A3 r4
CdM = r1 + A1 r2 + A1 A2 r3 + A1 A3 r4 + A1 A3 A4 r5
Commande Géométrique
On souhaite contrôler la position d’un robot manipulateur en utilisant le
MGI. Soit :
✓ = g(X) (9)
✓˙ = J 1
ė (10)
On choisit e = X Xd . Avec Xd On défini le comportement dynamique
du robot avec la relation suivante
ė + e = 0
= A(✓)✓¨ + H(✓, ✓)
˙ ✓˙ + Fv ✓˙ + G(✓) (11)
Espace opérationnel
On souhaite contrôler un robot manipulateur dont le modèle dynamique
est exprimé dans l’espace opérationnel :
˙ ✓) + Fext
Fc = M (✓)Ẍ + ⇤(✓, (13)
˙ ✓)
Déterminer les expressions de M (✓) et ⇤(✓,
En utilisant la technique du couple calculé déterminé un vecteur de
commande Fc tel que le comportement du robot dans l’espace
opérationnel soit linéaire.
Conclusions
y = [xT T T
]
On peut maintenant établir la solution de ce problème par :
@⇠(x)
=0
@y
Philippe.Fraisse@lirmm.fr (UM) Robotique 1 18/01/2023 32 / 43
Modélisation et Commande Avancée
Étude des robots redondants
Systèmes sous-déterminés
On peut décomposer cette expression en deux solutions :
@⇠
= x + AT = 0n
@x
et
@⇠
= Ax b = 0m
@x
. On a : x = AT et AAT b = 0 De ces deux expressions on en
déduit :
x = AT (AAT ) 1
b (16)
Avec :
A+ = AT (AAT ) 1
(17)
A+ est appelée la pseudo-inverse de Moore-Penrose de la matrice A ou
inverse généralisée.
Philippe.Fraisse@lirmm.fr (UM) Robotique 1 18/01/2023 33 / 43
Modélisation et Commande Avancée
Étude des robots redondants
propriétés de la pseudo-inverse
En considérant la relation :
Ax = b
avec x = A+ b et A+ = AT (AAT ) 1, on obtient les propriétés suivantes :
AA+ A = A
A+ AA+ = A+
(A+ A)T = A+ A
Une solution particulière xp peut-être trouver en utilisant le projecteur
dans le noyau de la matrice A. Soit :
xp = A+ b + (I A+ A)z (18)
propriétés de la pseudo-inverse
Démonstration :
xp = A+ b + (I A+ A)z
Axp = b + Az Az
soit :
Axp = b
on obtient :
0 1 0 1
a1 ✓ ◆+ ✓ ◆ 4.38
Ba 2 C B1.98C
B C = 0.5 1 3 0.1 12
=B C
@a 3 A 2 1 1.5 2 25 @3.77A
a4 4.30
Hiérarchie de tâche
On suppose que l’on a N tâches à réaliser sur le robot humanoı̈de qui est
une chaı̂ne cinématique arborescente (CoM, Marche, saisie d’objets,
manipulation, évitement de collision, etc..).
Est-il possible d’avoir N tâches concurrentes utilisant en même temps les
articulations ✓ du robot humanoı̈de? Dans une première approximation, on
considère donc le problème suivant :
N
X
✓˙ = Jk+ ėk (20)
k=1
Hiérarchie de tâche
on a :
✓˙⇤ = J1+ ė1 + (I J1+ J1 )(J2 (I J1+ J1 ))+ (ė2 J2 J1+ ė1 ) (26)
Avec P1 = (I J1+ J1 ) et P2 = (I J2+ J2 ) on a :
Hiérarchie de tâche
✓˙⇤ = J1+ ė1 + (J2 P1 )+ (ė2 J2 J1+ ė1 ) (29)
Cette équation peut ainsi se décomposer par :
✓˙⇤ = u1 + u2 (32)
Hiérarchie de tâche
Si l’on souhaite généraliser à N tâches, on a :
1 u1 = J1+ ė1
2 u2 = (J2 P1 )+ (ė2 J2 u1 )
3 u3 = (J3 P2 )+ (ė 3 J3 u2 )
4 u4 = (J4 P3 )+ (ė 4 J4 u3 )
5 ...
6 uN = (JN PN 1 )+ (ėN JN uN 1 )
7 ✓˙⇤ = u1 + u2 + u3 + u4 + ... + uN
N
X
✓˙⇤ = u k + PN Z N (33)
k=1
Avec uk = (Jk Pk 1)
+ (ė
k Jk uk 1 ), P0 = I et u0 = 0.