Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Université Montpellier 2
Faculté des sciences
Département EEA
Master 2 : Robotique
2014 / 2015
Cours de Robotique 2 (UE 322)
Cours 1
Génération de trajectoires
Partie 1 : Trajectoires point à point
A. Chemori
LIRMM - UMR 5506
161, Rue Ada 34095, Montpellier Cedex 05, France
FdS, Dpt EEA – Master 2 Robotique – 2014/2015 2
Plan du cours (Partie 1)
1. Introduction et contexte
2. Notions générales
3. Génération de trajectoires et boucles de commande
4. Génération de mouvements point à point
• Méthode de base
• Méthode à profil d’accélération bang-bang
• Méthode à profil de vitesse trapézoïdal
5. Application à l’espace articulaire
6. Application à l’espace cartésien
A. Chemori (Cours de Robotique 2 (UE 322)
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 3
Génération de trajectoires Introduction et contexte
Exemples illustratifs
Machine de découpe Laser Emballage en agro-alimentaire
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 4
Génération de trajectoires Introduction et contexte
Exemples illustratifs
Usinage et soudage Assemblage de véhicule
Ces exemples montrent l’intérêt de génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 5
Notions générales
Définition : La génération de mouvement désigne la fonction de calcul des
consignes articulaires du robot destinées à réaliser une tâche interprétée sous
forme de poses (positions + orientations) successives de l’outil du robot
Trajectoire de référence
Cette fonction est primordiale au sein du contrôleur du robot, dans le sens où
elle fait la transition entre le niveau informatique d’interprétation/exécution de
la tâche et le niveau de commande proprement dit
Interprétation/exécution de la tâche
Génération de mouvement
Commande des actionneurs
Programme
de la tâche
Consignes aux
actionneurs
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 6
Il sera donc nécessaire dans une seconde étape de synchroniser l’ensemble des
articulations sur la plus lente (appelée articulation maître).
Notions générales Génération de trajectoires
La fonction de génération de trajectoires peut s’exécuter dans l’espace
articulaire où elle consiste à déterminer une loi horaire pour chaque
articulation, ou bien dans l’espace cartésien (ou opérationnel) où elle vise à
déterminer directement une trajectoire de l’outil.
Le fondement mathématique de la génération de trajectoires est le calcul
polynomial qui construit l’équation du mouvement à partir des contraintes
spatiales et temporelles.
La génération de mouvement dans l’espace articulaire applique à chaque
articulation du robot une loi de mouvement dont les contraintes sont définies
dans l’espace articulaire.
Dans le cas le plus fréquent où la durée du mouvement n’est pas imposée,
chaque articulation a une durée propre de mouvement déduite de la satisfaction
des contraintes cinématiques ou dynamiques.
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 7
Notions générales
Une autre approche consiste à générer les trajectoires dans l’espace
opérationnel (ou Cartésien), dans lequel on définit la position et l’orientation
de l’outil du robot.
Génération de trajectoires
Les deux approches sont complémentaires. En effet, la génération de mouvement
dans l’espace articulaire profite du fait que les contraintes cinématiques ou
dynamiques sont définies au niveau des actionneurs (espace articulaire), mais la
trajectoire de l’outil est difficilement prévisible (transformation non linéaire entre
les 2 espaces).
La synchronisation s’effectuera entre mouvements d’orientation et de position
cartésienne.
Dans le cas le plus fréquent du choix des données purement cinématiques, les
données de cinématique de vitesse et d’accélérations linéaires sont naturellement
définies dans l’espace opérationnel.
Cette génération de trajectoire se fait à partir de données cinématiques ou
dynamiques.
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 8
Notions générales
La génération de mouvement dans l’espace opérationnel permet de réaliser des
trajectoires données dans l’espace cartésien mais les limites de contraintes
cinématiques de vitesse et d’accélération qui lui sont associées sont plus
difficiles à estimer.
Génération de trajectoires
Dans la suite on va aborder le principe de base de l’insertion d’un générateur
de trajectoires dans une boucle de commande (en espace articulaire et en
espace Cartésien) pour un contrôleur dans l’espace articulaire.
Deux types de trajectoires peuvent être générées :
Mouvement point à point
Mouvement à trajectoire continue
A B
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 9
Génération de trajectoires et boucle de commande Génération de trajectoires
+
-
En espace articulaire
Robot Contrôleur Générateur de
trajectoires
+
-
Robot Contrôleur Générateur de
trajectoires
En espace Cartésien
MGD
MGI
qf
qi
qd(t)
Xf
Xi
qi
qd(t) X(t)
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 10
Génération de mouvement point à point
De façon générale, la génération de mouvement construit la trajectoire de
l’outil du robot à partir de la donnée de contraintes spatiales, cinématiques et
dynamiques.
Génération de trajectoires
Le mode à trajectoire continue est souvent associé à une génération de
mouvement dans l’espace opérationnel (tâches en environnement encombré
telle que les tâches de soudage à l’arc, de découpe, etc).
Le mode point à point est souvent associé à une génération de mouvement dans
l’espace articulaire (tâches en environnement libre telles que les tâches de
manipulation, de soudage point à point, etc).
La génération de mouvement peut être envisagée selon deux modes :
- Un mode point à point : qui impose l’arrêt du robot à chaque point intermédiaire
- Un mode à trajectoire continue : qui impose une continuité de la vitesse de
mouvement à chaque point intermédiaire.
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 11
Génération de mouvement point à point Génération de trajectoires
Trajectoires point à point Trajectoires continues
Soudage point à point Soudage à l’arc
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 12
Génération de mouvement point à point
Méthode de base
Cette méthode définit le mouvement d’un point de départ à un point
d’arrivée à l’aide d’une spline unique ou d’une composition de splines
élémentaires qui définit soit un profil de vitesse spécifique, soit un profil
d’accélération spécifique.
Généralement la vitesse est nulle aux points de départ et d’arrivée.
La spline de plus faible degré assurant la continuité de la vitesse est la spline
cubique d’équation :
Génération de trajectoires
Où T désigne la durée du mouvement.
Les 4 coefficients a, b, c, d sont déterminés à partir des contraintes de définition de
mouvement :
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 13
Génération de mouvement point à point
Méthode de base
Il en résulte de ce calcul que la spline cubique à un maximum de vitesse et un
maximum d’accélération, en valeurs absolues, données par :
Par conséquent pour une même distance à parcourir, plus la durée T
est courte, plus sont élevées, au risque de ne plus être
réalisable.
Durée optimale du mouvement
Génération de trajectoires
Les contraintes de vitesses et d’accélération conduisent aux expressions
suivantes des durées minimales (notées respectivement ):
D’un point de vue pratique, il apparaît donc nécessaire de définir la durée du
mouvement à partir des contraintes de vitesse et d’accélération (en valeur
absolue) qu’on notera .
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 14
Génération de mouvement point à point
Méthode de base
Exemple : Position & vitesse initiales
Position & vitesse finales
Avec la durée du mouvement.
Trajectoires obtenues
0 0.1 0.2 0.3 0.4 0.5-5
0
5
Temps [s]
Posit
ion
0 0.1 0.2 0.3 0.4 0.50
20
40
Temps [s]
Vite
sse
0 0.1 0.2 0.3 0.4 0.5-200
0
200
Temps [s]
Acc
ele
rati
on
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 15
Génération de mouvement point à point
Méthode de base
Le mouvement point à point obtenu par une spline cubique n’assure pas la
continuité de l’accélération, ceci peut être préjudiciable aux actionneurs pour
des tâches où ils sont fortement dynamiquement sollicités.
Ce problème peut être résolu en imposant, en plus des 4 contraintes
précédentes, deux contraintes supplémentaires d’accélérations nulles aux
points limites (de départ et d’arrivée).
Avec 6 contraintes la fonction spline devrait être de l’ordre 5 (spline quintique)
Exercice : Proposer une méthode permettant l’identification des six
coefficients de cette trajectoire qui satisfait les contraintes
de position, de vitesse et d’accélération.
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 16
* Génération de mouvement point à point
Méthode de base
Exemple :
Position, vitesse et accélérations initiales
Trajectoires obtenues
Position, vitesse et accélérations finales
Avec la durée du mouvement.
0 0.1 0.2 0.3 0.4 0.5-5
0
5
Temps [s]
Posit
ion
0 0.1 0.2 0.3 0.4 0.50
20
40
Temps [s]
Vite
sse
0 0.1 0.2 0.3 0.4 0.5-200
0
200
Temps [s]
Acc
ele
rati
on
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 17
Génération de mouvement point à point
Méthode de base
La génération de mouvement par spline (d’ordre 3 ou 5) fait intervenir une
seule spline (un seul polynôme).
Génération de trajectoires
Il existe d’autres méthodes de génération de mouvement à l’aide d’une
composition de splines élémentaires définissant un profil de vitesse et
d’accélération, dont les avantages sont :
Permettent une génération de mouvements à l’aide d’une séquence de
splines de faible degré (généralement au plus 4), ce qui simplifie les
calcules et facilite la maîtrise du mouvement lorsque la méthode est élargie
au cas du mouvement avec points intermédiaires.
Offrent la possibilité, dans le cas de mouvement point à point, de faire
apparaître des phases à vitesses constantes (dites phases de vitesse de
croisière) très utiles dans la pratique, alors que dans ce cas les splines
uniques génèrent des extrema de vitesse.
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 18
Génération de mouvement point à point
Méthode à profil d’accélération bang-bang
La composition de splines la plus simple est le profil d’accélération bang-bang.
Cette méthode réalise le mouvement point à point selon une phase
d’accélération constante suivie d’une phase symétrique de freinage.
La loi de mouvement est composée de 2 splines du second degré :
Les coefficients sont déterminés à partir des contraintes
initiales, finales et de continuité en :
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 19
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.81
2
3
Temps [s]
Posit
ion
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.80
5
Temps [s]
Vite
sse
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8-20
0
20
Temps [s]
Acc
ele
rati
on
Position et vitesse initiales
Trajectoires obtenues
Position et vitesse finales
Avec la durée du mouvement.
Génération de mouvement point à point
Exemple :
Méthode à profil d’accélération bang-bang
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 20
Génération de mouvement point à point
Méthode à profil d’accélération bang-bang
Si l’on souhaite avoir une phase de vitesse constante, on peut considérer le
profil trapézoïdal de vitesse qui modifie le profil d’accélération bang-bang en
lui intégrant une phase d’accélération nulle.
La loi de mouvement sera donc composée de trois splines successivement
d’ordre 2, 1 et 2, dont on détermine les 8 coefficients à partir des 8 contraintes:
de position et de vitesse, initiales et finales (4 contraintes),
de continuité en position et vitesse entre les phases d’accélération initiale
et de vitesse de croisière (2 contraintes),
de continuité en position et vitesse entre les phases de vitesse de croisière
et de freinage (2 contraintes).
Méthode à profil de vitesse trapézoïdal
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 21
Génération de mouvement point à point
Méthode à profil de vitesse trapézoïdal
Le générateur à profil trapézoïdal de vitesse est donné par le système
d’équations suivant :
Où désigne la durée totale du mouvement, et celle des phases d’accélération initiale
et de freinage final.
Lors du mouvement, la vitesse de croisière est la vitesse maximale et donnée
par :
L’accélération maximale est donnée par :
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 22
0 0.2 0.4 0.6 0.8 1 1.2 1.40
5
Temps [s]
Posit
ion
0 0.2 0.4 0.6 0.8 1 1.2 1.40
5
10
Temps [s]
Vite
sse
0 0.2 0.4 0.6 0.8 1 1.2 1.4-20
0
20
Temps [s]
Acc
ele
rati
on
Position et vitesse initiales
Trajectoires obtenues
Position et vitesse finales
Avec la durée du mouvement, et
Exemple :
Génération de mouvement point à point
Méthode à profil de vitesse trapézoïdal
La position et la vitesse sont continues mais l’accélération est discontinue
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 23
Génération de mouvement point à point
Méthode à profil de vitesse trapézoïdal
Il est possible de construire un profil trapézoïdal de vitesse à accélération
continue en remplaçant les splines quadratique d’accélération initiale et de
freinage par des splines quadriques (de degré 4).
Aux 8 contraintes considérées pour la détermination du profil de vitesse
trapézoïdal, il faut rajouter les contraintes d’accélérations initiale et finale
nulles, ainsi que les contraintes de continuité d’accélération aux instants :
et , on aboutit au système suivant :
Avec les expressions suivantes de vitesse et d’accélération maximales :
Accélération max augmentée de 50%
(par rapport au cas précédent)
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 24
Génération de mouvement point à point
Méthode à profil de vitesse trapézoïdal
Position et vitesse initiales
Trajectoires obtenues
Position et vitesse finales
Avec la durée du mouvement, et
Exemple :
0 0.2 0.4 0.6 0.8 1 1.2 1.40
5
Temps [s]
Posit
ion
0 0.2 0.4 0.6 0.8 1 1.2 1.40
5
10
Temps [s]
Vite
sse
0 0.2 0.4 0.6 0.8 1 1.2 1.4-50
0
50
Temps [s]
Acc
ele
rati
on
On souhaite avoir une accélération continue cette fois-ci.
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 25
Génération de mouvement point à point
Application dans l’espace articulaire
Dans l’espace articulaire, on considère un robot à n degré de liberté pour
lequel on désire générer un mouvement du point de départ au point
d’arrivée .
Chaque axe j du robot étant contraint en vitesse par et en accélération
par .
Génération de trajectoires
Pour cela on applique la méthode choisie à chaque axe du robot, puis on
recalcule l’ensemble des mouvement articulaires afin de les synchroniser.
On distingue deux cas de figure :
A) Si la méthode est à spline unique, ou à composition de splines caractérisée
par un seul paramètre temporel, qui est la durée du mouvement (cas de la loi
bang-bang). Si l’on désigne par Tj la durée de chaque mouvement articulaire,
on recalcule tout les mouvement articulaires en leur imposant la durée
commune :
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 26
Génération de mouvement point à point
Application dans l’espace articulaire
B) Si la méthode est à composition de splines et fait appel à plusieurs
paramètres temporels indépendants, la synchronisation doit être adaptée à
chaque méthode.
Génération de trajectoires
Dans le cas, par exemple, de la méthode à profil trapézoïdal de vitesse à
accélération discontinue, on peux choisir de garder, lors de la phase de
synchronisation, la même durée .
Les nouvelles valeurs de vitesses et d’accélération maximales seront :
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 27
Génération de mouvement point à point
Application dans l’espace articulaire
Exemple : cas d’un robot à 2 degrés de liberté.
Articulation maître
Articulation non maître
0 0.5 1 1.5 20
2
4
6
0 0.5 1 1.5 20
2
4
6
0 0.5 1 1.5 20
2
4
6
Synchronisation
Génération de trajectoires
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 28
Génération de mouvement point à point
Application dans l’espace Cartésien
Dans l’espace cartésien, on considère la position de l’effecteur du robot.
Les points de départ et d’arrivée seront notés et .
Le mouvement correspondant est alors représenté par un polynôme vectoriel à
trois dimensions, dont on détermine les coefficients par les contraintes
vectorielles initiales, finales et de continuité
Génération de trajectoires
Par exemple la spline cubique de base s’applique sous la forme d’un polynôme
vectoriel définie à partir des contraintes suivantes :
On aboutit à l’expression suivante du mouvement cartésien :
A. Chemori (Cours de Robotique 2 (UE 322) FdS, Dpt EEA – Master 2 Robotique – 2014/2015 29
Génération de mouvement point à point
Application dans l’espace Cartésien
Les contraintes de vitesse et d’accélération dans l’espace cartésien s’expriment
sous forme du respect d’une norme de maximum de vitesse et d’une
norme de maximum d’accélération .
Par conséquent, la recherche des valeurs optimales du mouvement satisfaisant
ces contraintes est plus difficile à mener que dans l’espace articulaire, car elle
porte sur les normes du vecteur de vitesse et du vecteur
accélération .
Génération de trajectoires