December 16, 2022 | Author: Anonymous | Category: N/A
André Crosnier LIRMM 04 67 41 86 37
[email protected] ERII4, Robotique industrielle
1
Objectifs du cours 1. Définitions et terminologie 2. Outils mathématiques pour la modélisation 3. Modélisation des robots • Modèles géométriques à chaîne ouverte simple • Modèles cinématiques à chaîne ouverte simple 4. Commande de robots • Génération de mouvements • Asservissement et architecture de commande • Synthèse de commandes
ERII4, Robotique industrielle
2
Modélisation
Génération de mouvements
Conception de cellules flexibles et Programmation hors ligne
ERII4, Robotique industrielle
3
1. Définitions et terminologie Un robot : c’est quoi ?
Robota), signifiant corvée • Mot d’origine tchèque ( Robota),
• Dictionnaire : appareil automatique capable de manipuler des objets ou d'exécuter des opérations selon un programme fixe ou modifiable Norma lisation) : manipulateur manipulate ur commandé en • AFNOR (Association Française de Normalisation) position, reprogrammable, polyvalent, à plusieurs degrés de liberté, capable de manipuler des matériaux, des pièces, des outils et des dispositifs spécialisés, au cours de mouvement variables et programmés pour l’exécution d’une variété de tâche. Il a souvent l’apparence d’un ou plusieurs bras se terminant par un poignet
ERII4, Robotique industrielle
4
R o b o ts in s t a llé s
Quelques chiffres Cf. http://www.ifr.org/statistics/keyData2003.htm http://www.ifr.org/statistics/keyData2003.htm Nombre d’unités installées • En France : 30000
•
p a r a n
3 5 0 0 3 0 0 0 2 5 0 0
Dans le monde : > 2 à 3 millions Secteurs d’activités • Automobile et équipementiers
• plastique Industrie mécanique • Industrie • Industrie des équipements électroniques
2 0 0 0 1 5 0 0 1 0 0 0 5 0 0 0 5 8 9 1
7 8 9 1
9 8 9 1
9 1 9 1
3 9 9 1
5 9 9 1
7 9 9 1
9 9 9 1
0 1 0 2
• Industrie alimentaire et agro-alimentaire Applications • Soudage à l’arc, par points
Chargement et déchargement de machines •• Palettisation/emballage • Manutention de pièces et assemblage ERII4, Robotique industrielle
5
Constructeurs • ABB (IRB6400) • Staübli (RX90)
• Kuka (KR15)
• Comau • Fanuc (S420)
ERII4, Robotique industrielle
6
Outils de CAO • CATIA (Dassault Systèmes) • Adept • Kuka…
ERII4, Robotique industrielle
7
Cellule robotisée
Commande
Perception
• Capteurs proprioceptifs • Capteurs extéroceptifs
ERII4, Robotique industrielle
8
Structure mécanique des robots Constituants mécaniques terminal (effecteur, préhenseur, outil) •• Organe Structure mécanique articulée : porteur
ERII4, Robotique industrielle
9
Représentation des liaisons rotoïdes et prismatiques Liaison R
Liaison P
Exemple : description d’un robot de type SCARA (R R R P)
R
R
R
P
ERII4, Robotique industrielle
10
Exemples de morphologies • Porteurs anthropomorphiques (RRR) • Porteurs sphériques (RRP) Porteurs toriques (RPR) •• Porteurs cylindriques (RPP) • Porteurs cartésiens (PPP)
Vidéos :
Clip vidéo
Clip vidéo
Clip vidéo
ERII4, Robotique industrielle
11
Définitions Articulations a rticulation lie deux corps successifs en limitant le nombre de • Définition : une articulation degrés de liberté l’un par rapport à l’autre. On appelle mobilité de l’articulation le nombre de degré de liberté, 0 ≤ m ≤ 6 . Lorsque m =1, l’articulation est soit rotoïde soit prismatique • Articulation rotoïde : articulation de type pivot réduisant le mouvement entre deux corps à une rotation autour d’un axe qui leur est commun. La situation relative entre les deux corps est donnée par l’angle autour de l’axe. Symbole : R • Articulation prismatique : articulation arti culation de type glissière glissièr e réduisant le mouvement relatif entre les deux corps à une translation le long d’un axe. La situation relative entre les deux corps est mesurée par une distance . Symbole : P
ERII4, Robotique industrielle
12
Espace articulaire • Définition : espace dans lequel est représentée la situation de tous les corps. Pour représenter celle-ci, la solution adoptée consiste à associer à chaque articulation une ou plusieurs variables (variables articulaires ou coordonnées articulaires) Si N est est le nombre de variables articulaires indépendantes et correspond au nombre • Si N de degré de liberté de la structure mécanique, l’espace des variables articulaires R N est aussi appelé espace des configuration configurationss. En général à chaque variable articulaire correspond une motorisation
Espace opérationnel • Définition : espace dans lequel est représentée la situation de l’effecteur • Représentation : coordonnées cartésiennes de R3 pour la position et le groupe SO(3 (3)) des rotations propres de R3 pour l’orientation : R X = R3 x SO(3) dimension M M de de R X : nombre de degrés de liberté maximum que peut avoir l’organe • dimension terminal, et est égale au nombre de paramètres indépendants nécessaires pour décrire la situation de l’organe terminal dans l’espace. Dans le cas général, M est au plus égal à 6, et on a : ≤ N .
ERII4, Robotique industrielle
13
Redondance • Définition : redondant lorsque l’on a : dernier repère
R 1
R0
R2
• Multiplication à gauche : Repère courant => repère base
R0
ERII4, Robotique industrielle
R1
22
: on on considère le repère R j défini dans le repère Ri par la matrice de Exercice : transformation : iT j = Rot( x,30°) Trans( y,2) ,2) . i
⎡i
⎤
−1
j
Calculer la matrice T j et la matrice inverse ⎣⎢ T j ⎦⎥ = T i . T Calculer les coordonnées du point j p = (1 2 1) définies dans le repère R j dans le repère Ri .
ERII4, Robotique industrielle
23
3. Modèles des robots Problématique
Environnement
• Modèles géométriques • Modèles cinématiques dynamiques • Modèles dynamiques
R 0 Espace articulaire
Réalisation de la commande ERII4, Robotique industrielle
Espace opérationn opérationnel el
Description de la tâche 24
(MGD) Modèle géométrique direct (MGD) Définition
X = f (q) • q : vecteur de variables articulaires : q = ⎡⎢ q ⎣
1
q ⎤⎥T n⎦
• X : vecteur de coordonnées opérationnelles défini sous la forme suivante : ⎡
X = ⎢ x ⎣ 1
⎤T x ⎥ m⎦
Rn a
n
s
0T n
R
ERII4, Robotique industrielle
0
25
Transformation de coordonnées :
0T (q) = 0T (q) 1T (q) n−1T (q) n n 1 2 Représentations utilisées pour définir le vecteur X : ⎡
•
= ⎢⎣ P x
•
= ⎢ P x
⎡ ⎣⎢
ERII4, Robotique industrielle
⎤
Py
P z
sx
sy
sz
nx
ny
nz
ax
ay
Py
P z
nx
ny
nz
ax
ay
az ⎥ , s = n× a
az ⎥⎦
⎤ ⎦⎥
26
Description de la géométrie • Description de Khalil et Kleinfinger • Description de Denavit-Hartenberg Denavit-Hartenberg Structure simple ouverte : • n +1 corps : la situation de chaque corps est définie par un repère • C : base du robot 0
• C n : corps porteur de l’organe terminal • n articulations : l’articulation j est caractérisée par la variable q . j
L’articulation j lie les corps C
et C
j −1
j
R j−1 C j −1
ERII4, Robotique industrielle
C j
R j
Articulation j Articulation j
27
Définition du repère R j : • L’axe z j est porté par l’articulation j
• L’axe x j est porté par la perpendiculaire commune aux axes z j et z j+1 . Si les axes z et z sont j j +1
parallèles ou colinéaires, le choix de x j n’est pas unique. En général
des considérations de symétrie ou de simplicité permettent un choix rationnel.
Le passage de R à R j s’exprime en fonction de 4 paramètres : j −1 • α : angle entre les axes z j−1 et z j correspondant à une rotation autour de x j−1 j
• d j : distance entre les axes z j−1 et z j le long de x j−1 • θ : angle entre les axes x j−1 et x j correspondant à une rotation autour de z j j
• r : distance entre les axes x j
ERII4, Robotique industrielle
j −1
et x le long de z j
j
28
z j
x j
θ j
θ j O j
z j −1
α j r j
x j −1
α j
d j O j −1
ERII4, Robotique industrielle
29
ième
La variable articulaire q j associée à la j articulation est définie soit par θ j soit par r selon le type de cette articulation (R ou P) : j
q = σ θ + σ r j j j j j
avec
σ j
⎧0 = ⎪⎨ ⎪⎩1
si Rotoide
si Prismatique
Matrice de transformation : j−1T = Rot( x,α ) Trans( x, d ) Rot( z,θ ) Trans( z, r ) j j j j j
j −1
T = j
⎡ cθ ⎢ ⎢⎢ j ⎢ sθ ⎢ cα j ⎢ ⎢ ⎢ sθ ⎢ sα ⎢⎢ ⎢ ⎢⎣
ERII4, Robotique industrielle
j 0
−sθ j
cα
j
sα j
j cθ
0 j
cθ j 0
−sα
j
cα j
0
j
⎤ d ⎥ j ⎥⎥ −r sα ⎥⎥ j j⎥
r cα j j 1
⎥ ⎥ ⎥ ⎥⎥ ⎥ ⎥⎦
30
Exemple : robot SCARA
z 0 , z 1
z 3 , z 4
z 2
x0 , x1
x2
x3 , x4
D2
⎡θ ⎤ ⎢ 1⎥ ⎢θ ⎥ q = ⎢⎢ 2 ⎥⎥ θ ⎢ 3⎥ ⎢ ⎥ ⎣⎢ r 4 ⎦⎥
j
σ j
α j
1
0
0
2
0
0
3
0
0
4
1
0
ERII4, Robotique industrielle
D3
0T (q) = ⎡⎢ s n 4 ⎢⎣0 0
d j 0
θ j θ
r j 0
D D2 3 0
θ
0
θ2
0
1
3 0
a P ⎤ 0
⎥ = 0 T (q) 1T (q) 2T (q) 3T (q) 4 3 2 1 1 ⎥⎦
r 4
31
Exercice 1 : z 0 , z 1
x E
z E
z 2
y E x2
x0 , x1
x2
x E y2
y0 D2
D3
Tableau de paramètres : j 1 2
σ j
α j
d j
0 0
0 0
0 D2
x1
y1
θ j
r j
θ1
0 0
θ2
x0
ERII4, Robotique industrielle
32
• Repère
R E = ( xE , yE , z E ) permet de spécifier la position et l’orientation de l’effecteur
par rapport au corps 2. Cette position est spécifiée par une matrice homogène E constante permettant de passer du repère R2 au repère R E .
• Le vecteur de variables articulaires est donné par : q = • La matrice de passage du repère R au repère 0
⎡ 0T = ⎢ s E ⎢⎣0
n
a
P ⎤⎥
0
0
1 ⎥⎦
R E
⎡θ ⎤ ⎢ ⎥ ⎢ 1⎥ ⎢ ⎥. ⎢θ ⎥ ⎢⎣ 2 ⎥⎦
est définie par :
= 0T (q ) 1T (q ) E 1 1
2 2
ERII4, Robotique industrielle
33
0T = 1
⎢⎡c1 ⎢ ⎢ s1 ⎢ ⎢ ⎢0 ⎢
−s1
⎣⎢ 0
0T = E
⎡ ⎢c12 ⎢ ⎢ ⎢ s12 ⎢ ⎢ ⎢ ⎢ 0 ⎢ ⎢⎢ 0 ⎣
c1
0 0
0
1
0⎥⎤ ⎥ 0⎥ 1 ⎥ , T = 0⎥⎥ 2
0
0
1⎦⎥
⎥
−s12
0
c12
0
0
1
0
0
⎡ ⎢c2 ⎢ ⎢ ⎢ s2 ⎢ ⎢ ⎢0 ⎢ ⎢⎢⎣ 0
− s2
0
c2
0
0
1
0
0
D c12 + D c1⎤⎥ 3 2 ⎥⎥ D s12 + D s1⎥ ⎡⎢ s 3 2 ⎥⎥ = ⎢ ⎥ ⎢⎣0 0 ⎥
1
⎥ ⎥⎥ ⎦
⎤ D2 ⎥⎥ ⎥ 0 ⎥ , E ⎥ 0 ⎥⎥ ⎥ 1 ⎥⎥⎦
=
n
0
a
0
⎡ ⎢1 ⎢ ⎢ ⎢0 ⎢ ⎢ ⎢0 ⎢ ⎢⎢⎣0
P ⎤⎥
⎥ 1 ⎥⎦
0
0
1
0
0
1
0
0
⎤ D3⎥⎥ ⎥ 0 ⎥ ⎥ 0 ⎥⎥ ⎥ 1 ⎥⎥⎦
ERII4, Robotique industrielle
34
Exercice 2 : L’extrémité extrémité de la structure On note q = ⎡⎢θ1 θ 2 ⎤⎥ T le vecteur de variables articulaires. L’ ⎣
⎦
R = ⎧⎨ x
est définie par le repère
E
⎩ E
y E
z ⎫⎬ . E ⎭
C2
L z 0
z E
x0 xE C1
Base
Base
ERII4, Robotique industrielle
35
• Etablir le tableau des paramètres permettant de définir la description de la géométrie de la structure. chaque articulation, donner l’expression de la matrice de transformation • Pour exprimant le repère R de l’articulation j dans le repère R . Donner aussi j
l’expression de la matrice 2T E . En déduire la matrice de passage
j −1 0 T . E
les différents pour le vecteur de noté X • Etudier Pour chaque choix, choix donner l’expression du variables modèle opérationnelles, géométrique direct et. déterminer l’expression de la matrice jacobienne issue du modèle cinématique direct. En déduire les configurations singulières de la structure. Commenter les résultats obtenus. • Etudier le lieu géométrique décrit par l’extrémité de la structure. Donner l’équation de ce lieu. • Etudier l’influence d’un décalage sur l’articulation 2 selon l’axe x.
ERII4, Robotique industrielle
36
Volume de travail (dernière question) 2 1
1.5
0.8
1
0.6
0.4
0.5 0.2
0
0
4
4
2
4
2
4
2
0 0 -2
-2 -4
-4
2
0 0 -2
-2 -4
-4
L > d 2
L < d 2
ERII4, Robotique industrielle
37
Exercice 3 : On souhaite étudier le robot à 6 axes décrit par la chaîne cinématique représentée par la figure suivante. Le vecteur de variables articulaires est défini T
par : q = [θ1 θ 2
D2
θ3 θ 4
θ 5 θ 6 ] .
, D , D , RL , RL et RL sont des constantes. 3
4
1
4
6
ERII4, Robotique industrielle
38
Compléter le tableau suivant en donnant les paramètres géométriques du robot pour les axes 4, 5 et 6 : j 1 2 3
σ j
0 0 0
α j
d j
0
π 2
D2
π
0
D 3
θ j
θ θ1
2
θ 3 + π 2
r j RL1
0 0
4 5 6 T 6 . Déterminer T 5 et 5T . T 4 , 4T Donner les expressions des matrices de passage 3T , alors l’expression de la position du centre outil dans le repère 3 .
ERII4, Robotique industrielle
39
Méthodes de description des orientations La situation de l’organe terminal est spécifiée d’un part par un vecteur de position 0 P = ⎡ P n ⎢⎢ x ⎣
Py
rotation 0 n = ⎣⎡ s
⎤ P z ⎥⎥ ⎦
T
n
et d’autre part par les cosinus directeur constituant la matrice de T a ⎦⎤ .
Pour les positions, on utilise le plus souvent les coordonnées cartésiennes bien que la représentation cylindrique ou sphérique s’avère plus pratique pour certaines structures de robot. Pour l’orientation plusieurs descriptions sont utilisées dans la pratique :
• Description par les angles d’Euler : robot PUMA (Unimate), robot ABB • Description par les angles Roulis-Tangage-Lacet (RTL) : robot ACMA • Description par les quaternions
ERII4, Robotique industrielle
40
z 0 z n
Description par les angles d’Euler • Précession φ • Nutation θ • Rotation propre ψ
y n φ
y 0
0
t ( z,φ ) Rot( x,θ ) Rot ( z ,ψ ) n = Ro
x n x0
Attention il existe plusieurs conventions….
θ
Description par les angles de Roulis –Tangage – Lacet (RTL) • Roulis φ • Tangage θ • Lacet ψ 0 A = Ro t( z,φ ) Rot ( y,θ ) Rot( x,ψ ) n
Il existe dans les deux cas (angles d’Euler et RTL) une solution au problème inverse permettant de calculer calculer à partir des des cosinus directeur le less angles correspondant. correspondant.
ERII4, Robotique industrielle
41
Modèle géométrique inverse (MGI) Position du problème
Considérons la matrice 0T spécifiant la position du repère effecteur par rapport à un repère de référence supposé être ici le repère R . D’une façon générale, on a : 0
0T = 0T (q) E n E
La détermination du modèle géométrique inverse consiste pour 0T et E connues à déterminer le vecteur q qui amène le robot dans la situation désirée. On est donc amener à résoudre l’équation suivante : 0T (q) = 0T E − 1 n E La résolution de l’équation peut conduire à plusieurs cas : • Absence de solutions si la situation désirée est en dehors du volume de travail du robot infinité de configurations solutions si lesingulières robot est redondant vis à vis de la tâche ou s’il se • Une trouve dans des • Un nombre fini de solutions
ERII4, Robotique industrielle
42
Il existe plusieurs méthodes permettant de résoudre le problème : • Méthode de Paul • Méthode de Pieper
• Méthode générale de Raghavan et Roth. Il n’est pas toujours possible de trouver une forme explicite du modèle géométrique inverse. Dans ce cas, on est amené à calculer une solution particulière par des procédures numériques. La solution obtenue est locale et dépend des conditions initiales.
Exemple : robot plan Il est possible dans ce cas de trouver une solution analytique. Le robot possède deux degrés de liberté dans l’espace opérationnel : 2 translations en x et y définissant les grandeurs que l’on peut imposer. On obtient dans ce cas les équations suivantes : P x = D3c12 + D2c1 P y = D s12 + D s1 3 2
ERII4, Robotique industrielle
43
Modèle cinématique direct (MCD) Définition Soit X le vecteur de coordonnées opérationnelles de dimension (m (m,1), et q le vecteur des variables dimension (n,1).opérationnelles (n Le modèle cinématique direct la relation entre articulaires les vitessesdedes coordonnées en fonction desétablit vitesses articulaires. On a : = J (q) q où (q) est la matrice jacobienne de dimension (m, (m, n) obtenue par dérivation de X de X par rapport à q. On a : J (q) = ∂∂q La même ême matr atrice (q) intervient dans le calcul du modèle différentiel qui donne les variations d X des des variables opérationnelles en fonction des variables articulaires dq dq. On a donc :
dX = J (q) dq
ERII4, Robotique industrielle
44
L’intérêt de la matrice jacobienne est multiple :
• Elle sert au calcul du modèle différentiel inverse, en offrant la possibilité d’une solution locale des variables articulaires q connaissant connaissant X X , • Elle facilite l’étude des singularités,
• Elle permet le calcul de l’espace opérationnel accessible, • Elle donne une relation liant les efforts exercés par l’organe effecteur et les forces et couples exercés aux articulations => principe des travaux virtuels. F T dX = ΓT dq
ce qui conduit à :
Γ = J T (q) F Exemple : robot plan Si on choisit comme variables opérationnelles le vecteur
= ⎡⎢ P x ⎣
T
P y ⎤⎥ , on obtient par ⎦
dérivation : ⎡ ⎢ P x J (q) = ⎢ ∂ ⎢∂ P ⎢ y ⎣
∂θ1 ∂θ
1
∂P x ∂Py
⎤ ⎡ ∂θ 2 ⎥⎥ = ⎢⎢− D3s12 − D2s1 ∂θ ⎥⎥ ⎢⎢ D c12 + D c1 2⎦ ⎣ 3 2
⎤ − D3s12⎥⎥ D c12 ⎥⎥ 3 ⎦
ERII4, Robotique industrielle
45
Etude des singularités Rappel : on appelle singularité une configuration particulière du robot pour laquelle le nombre de degré de l’organe terminal qu’il est possible de commander devient inférieur au nombre de degré de liberté nominal du robot. L’analyse des configurations singulières peut être réalisée en s’appuyant sur le MCD. Si on note :
r = rang ⎡⎢ J (q) ⎤⎥ ⎣
avec
⎦
r ≤ min(m,n)
• Si m = n , on a : r ≤ m • Si m ≤ n (cas d’un robot redondant), on a aussi r ≤ m .
ERII4, Robotique industrielle
46
Lorsque r < m , il devient impossible d’engendrer une vitesse et donc un mouvement le long ou autour de certaines directions. Le robot possède une configuration singulière d’ordre égale à m - r .
Exemple :
det ⎡⎢ J (q) ⎤⎥ = D D ⎜⎛ c1 s12 − c1 2 s1⎟⎞ = D D s2 ⎠ ⎣ ⎦ 2 3⎝ 2 3 ⎡ ⎢ ⎢ ⎢ ⎢ ⎢⎣
θ ⎤⎥ Le robot possède une configuration singulière défini par le vecteur : q = 1 ⎥⎥ ⎥ k π ⎥⎦
ERII4, Robotique industrielle
47
Modèle cinématique inverse (MCI) Le modèle cinématique inverse permet de déterminer, dans le voisinage d’une configuration q, les vitesses articulaires q qui assurent une vitesse opérationnelle X imposée. Dans le cas régulier et si la matrice jacobienne est carrée, on a :
q = J −1 (q) X Lorsque la matrice jacobienne n’est pas carrée, on utilise la pseudo-inverse pour calculer le vecteur q . On a alors :
q = J + ( q) X
ERII4, Robotique industrielle
48
Il existe plusieurs techniques de mise en œuvre du MCI :
• Méthode s’appuyant sur une solution analytique qui nécessite de traiter séparément tous les cas singuliers. Elle conduit à un temps de calcul réduit. Méthode numérique plus générale fondée sur l’utilisation de la pseudo-inverse qui • permet de traiter tous les cas. Elle nécessite un temps de calcul plus important i mportant que la méthode analytique.
ERII4, Robotique industrielle
49
Modèle dynamique Définition Le modèle dynamique établit la relation entre les couples (et/ou forces) appliqués aux actionneurs et les positions, vitesses et accélérations articulaires :
=
τ f (q,q,q) (1) où • q vecteur des positions articulaires • q vecteur des vitesses articulaires • q vecteur des accélérations articulaires • τ vecteur des couples/forces des actionneurs, selon que l’articulation est rotoïde ou prismatique
inverse, ou tout simplement On convient d’appeler modèle dynamique inverse, modèle dynamique, le m modèle odèle décrit par la relation (1).
ERII4, Robotique industrielle
50
direct est celui qui exprime les accélérations en Le modèle dynamique direct fonction des positions, vitesses et couples des actionneurs. Il est représenté par la relation de la forme : q = g (q,q ,τ )
Les le plus souvent utilisés pour obtenir le modèle dynamique sontformalismes : • le formalisme de Lagrange • le formalisme de Newton-Euler
ERII4, Robotique industrielle
51
A partir du formalisme de Lagrange, il est possible d’écrire le modèle dynamique sous la forme suivante : τ = =
(q)q +V (q, q ) + G(q)
avec :
•
(n, n) (q) est la matrice d’inertie du robot, dimension (n
(q,q) représente le vecteur des forces de Coriolis et des forces centrifuges, • V de dimension (n (n, 1)
• G(q) représente le vecteur des forces de gravité, dimension (n (n,1)
ERII4, Robotique industrielle
52
Exemple simple d ⎡⎢ ∂L ⎤⎥ − ∂L =τ dt ⎢⎢⎣ ∂q ⎥⎥⎦ ∂q
m
mg
où
l
L = T (énergie cciinétiqu tiquee) − Π(énergie gie p po oten tentiel ielle)
q
L = 1 Jq 2 − mgl sin q 2 et τ le vecteur de couple généralisé. On obtient : ∂ L = Jq et ∂ L = −m lgcos q .
∂q
∂q
On en déduit alors le modèle dynamique : + m lgcos q = Jq τ
ERII4, Robotique industrielle
53
Prise en compte de l’articulation
La prise en compte au niveau de l’articulation des forces de frottements et encore des forces à exercer par l’organe terminal sur l’environnement revient à écrire le vecteur τ sous la forme suivante :
τ = Γ −τ f (+τ ext ) où • Γ : le vecteur de couples (moteur) des actionneurs
•
=
+
τ F sign(q) F q : couple de frottements sur l’articulation • τ : couple du à la force à exercer par l’organe terminal sur l’environnement f
s
v
ext
τ = T F ext
τ
ext
ext
Actionneurs
Γ
τ
τ
f
Robot (modèle dynamique)
q, q
ERII4, Robotique industrielle
54
Applications
Les applications du modèle dynamique concernent : • la simulation : on utilise en général le modèle dynamique direct. Pour une trajectoire donnée et une force exercée par le robot sur l’environnement donnée, en fonction de la loi de commande, on détermine dans un premier temps le vecteur de couples. A partir du modèle dynamique direct, on calcule le vecteur d’accélération d’accélér ation articulaire, puis par intégration la vitesse articulaire et la position articulaire. art iculaire. Cette approche permet de tester différentes lois de commande.
• la commande • dimensionnement des actionneurs • identification des paramètres inertiels q
Génération de trajectoires
d
Loi de commande
τ
Modèle dynamique
q
Intégration
q, q
ERII4, Robotique industrielle
55
ERII4, Robotique industrielle
56
4. Commande des robots manipulateurs
Génération de mouvements Principe :
Celle-ci consiste à calculer les consignes de référence en position, vitesse et accélération qui sont des fonctions du temps et qui assurent le passage du robot par une trajectoire désirée définie soit par une suite de situations de l’organe terminal soit par une suite de configurations articulaires (appelées points). Plusieurs classes de mouvements peuvent être distinguées :
• Mouvement entre deux points avec trajectoire libre entre les points • Mouvements entre deux points avec points intermédiaires spécifiés en particulier pour éviter les obstacles, et trajectoire libre libr e entre les points intermédiaires
ERII4, Robotique industrielle
57
entr e deux points avec trajectoire contrainte entre les points ; par • Mouvement entre exemple trajectoire rectiligne • Mouvement entre deux points avec points intermédiaires, et trajectoire contrainte entre points intermédiaires.
Dans les deux premiers cas, la génération de trajectoires peut être réalisée directement dans l’espace articulaire. Dans les deux derniers cas, comme la trajectoire est décrite dans l’espace opérationnel, il est préférable de raisonner dans cet espace.
ERII4, Robotique industrielle
58
Schémas de commande
Génération de mouvements dans l’espace articulaire d
f
q
Génération de mouvements en q
q (t)
Asservissement
i
q
Génération de mouvements dans l’espace opérationnel d
d
X
q (t)
X (t)
f
Génération de mouvements en X
Asservissement
MGI
i
X
i
MGD
q
ERII4, Robotique industrielle
59
Espace articulaire ou opérationnel ? ? Articulaire Avantages Inconvénients • Elle nécessite moins de calcul en ligne • La géométrie de la trajectoire de car il n’y a pas d’appel au modèle l’organe terminal est imprévisible : géométrique direct et inverse
• Le mouvement peut être effectué sans passage par singulières
les
configurations
contraintes de vitesse et de • Les couples maximaux sont déduites directement des limites physiques des actionneurs
risque de collisions lorsque le robot évolue dans un environnement très encombré
ERII4, Robotique industrielle
60
Espace opérationnel Avantages • Maîtrise de la trajectoire
Inconvénients • Transformation de coordonnées de chaque point de la trajectoire • Possibilité de mise en échec quand la trajectoire passe par un point singulier • Possibilité de mise en échec si les points de la trajectoire ne sont pas dans le volume accessible du robot ou chaque fois que la trajectoire nécessite un reconfiguration du robot • Les limites en vitesse et en couple du robot varient en fonction de la configuration. On impose en général ces limites en terme de performances moyennes valables quelle que soit la configuration. On travaille donc en deçà des capacités réelles du robot.
ERII4, Robotique industrielle
61
Choix Cela dépend fortement de l’application. Chaque méthode conduit à des contraintes exprimées soit dans l’espace articulaire (vitesse et couple maximum) soit dans l’espace opérationnel (précision, prise en compte des obstacles).
ERII4, Robotique industrielle
62
Génération de mouvement entre deux points de l’espace articulaire Soient qi = q(0 (0)) et q f = q(t ) les vecteurs de coordonnées articulaires f
correspondant aux configurations initiales et finales. Le mouvement entre de ces deux configurations est décrit par l’équation suivante :
q(t) = qi + r(t ) D où • r (t ) est une fonction d’interpolation qui d’interpolation qui satisfait r (0 ) = 0 et r(t ) =1
f
• D = q f − qi
ERII4, Robotique industrielle
63
Interpolation linéaire On a :
= t r(t ) t f q(t) = q i + t D t f
Cette loi est continue en position, position, par contre elle est discontinue en vitesse : vitesse : q(t +) = 1 D et q( 0−) = 0 . Elle provoque des à-coups sur le robot. t f
ERII4, Robotique industrielle
64
Polynôme d’interpolation de degré 3 On cherche q(t ) sous la forme suivante :
q(t) = a + a t + a t 2 + a t3 0 1 2 3 La des et coefficients en s’imposant unecontraintes vitesse nulle auxdétermination points d’arrivée de départest et obtenue en se donnant les deux de positions qi et q f . Exercice :: résoudre le système d’équations correspondant à ces contraintes et établir l’expression de la loi de mouvement q(t ) et tracer son allure.
ERII4, Robotique industrielle
65
Solution : ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩
(0)) = a = qi q(0 0
f q(t ) = a + a t + a t 2 + a t3 = q 0 1 f 2 f 3 f f (0)) = a = 0 q(0 1
⇔
q(t ) = a +2a t + 3a t 2 = 0 1 2 f 3 f f
⎧ ⎪ ⎪ ⎪ ⎪ ⎪
a = qi 0
⎪⎪ ⎪ ⎪ ⎪⎪ ⎨ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪
a1 0
⎪⎩
Ce qui conduit à l’équation : ⎡ ⎢ ⎢ ⎢
⎤ ⎥ ⎥ ⎥
i 3 2 2 3 q(t) = q + ⎢⎢⎢ t 2 t − t 3 t ⎥⎥⎥ D f ⎥⎦ ⎢⎣ f
= a = 3D 2 t 2 f a =− 2 D 3 t 3 f
ERII4, Robotique industrielle
66
Allure de la loi d’interpolation : continuité en position et en vitesse, discontinuité en accélération. Pour palier cet inconvénient, on utilise un polynôme d’interpolation de degré 5 en imposant une accélération nulle au départ et à l’arrivée.
ERII4, Robotique industrielle
67
Loi d’interpolation Bang-Bang et loi trapèze C’est la loi obtenu pour une phase à accélération constante jusqu’à t f /2 suivie d’une phase de freinage jusqu’à t f . Le mouvement est continu en position et en vitesse. Il reste discontinu en accélération. La position est donnée par les équations suivantes : ⎛
⎞
⎜ ⎟2 t i ⎜ q(t) = q + 2⎜ ⎟⎟ D ⎜ t ⎟ ⎜ ⎝
pour
f ⎟ ⎠
⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
⎤ ⎛⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝
q(t) = qi + −1+ 4 t − 2 t t t f f
Saturation en vitesse : loi trapèze
t 0 ≤ t ≤ f 2
⎞⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠
2 ⎥⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
D
pour
t f ≤ t ≤ t f 2
ERII4, Robotique industrielle
68
Calcul du temps minimal La durée t f du mouvement n’est pas spécifiée. Pour chaque articulation, il est possible à partir des limites technologiques des actionneurs de déterminer les accélérations et les vitesses maximales admissibles. A partir de ces contraintes, on impose le temps t f pour chaque articulation. Le temps minimum adopté pour la génération de trajectoire est alors pris égal à: t f = max (t f 1, , t ) f n
ERII4, Robotique industrielle
69
Exercice : : on étudie la génération de mouvements d’une articulation d’un robot définie par la variable articulaire q(t ) en utilisant une loi trapèze. Cette articulation est caractérisée par une vitesse maximale qmax et une accélération
≤ ≤ On appelle α (0 α 1) maximale qmax . La durée du mouvement est notée la durée relative (par rapport à t F ) de la phase d’accélération et de décélération. - Tracer l’allure de q(t ) , q(t ) et q(t ) . - Calculer la durée du mouvement t en fonction de α , q . et q F max Préciser la condition sur t F , qmax et qmax pour que α