Click here to load reader
Upload
sofia-bryaj
View
111
Download
16
Embed Size (px)
Citation preview
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 2
Table des Matires I MODELISATION DES SYSTEMES ARTICULES RIGIDES
I.1 Introduction
I.2 Modlisation gomtrique
I.2.1 Coordonnes homognes dun vecteur.
I.2.2 Paramtres de Denavit et Hartenberg
I.2.3 Modle gomtrique du robot PUMA 560
I.3 Modlisation dynamique
I.3.1 Approche dEuler Lagrange
I.3.2 Modle dynamique du robot PUMA 560.
TD : Etude de cas : robot porte-outil
I.4 Conclusion
ANNEXE I
ANNEXE II
I.5 Rfrences
TP N1 MANIPULATION ET COMMANDE DU ROBOT A 4DDL IBM 7576
TP N2 MANIPULATION ET COMMANDE DU ROBOT A 6DDL ABB
TP N3 MANIPULATION ET COMMANDE DU ROBOT A 7DDL, KUKA
3
4
4
5
6
9
16
17
25
28
36
37
41
42
43
48
59
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 3
Chapitre I
MODELISATION DES SYSTEMES
ARTICULES RIGIDES
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 4
I.1 Introduction
Le systme articul rigide est caractris par une structure arborescente
articul simple ou multiple dont les liaisons sont mobiles les unes par rapport aux
autres. Cet ensemble a pour objectif de mener lorgane terminal vers un lieu
gomtrique impos par la tche [1].
Gnralement, un robot manipulateur est considr comme un systme articul
rigide. Lappellation robot nest pas nouvelle, elle a pour origine le mot robota extrait
de la littrature grecque et qui veut dire travail. Nous avons trouv dans la
littrature diffrentes dfinitions de ce systme dynamique tel que :
Celle donne par JIRA (Japon Industrial Robot Association) : Un robot est un systme versatile dot dune mmoire et pouvant effectuer des mouvements
comme ceux dun oprateur humain ;
Celle donne par RIA (Robot Institute of America) : Un robot est un manipulateur fonction multiple programm pour raliser automatiquement
des taches varies ventuellement rptitives.
La synthse de la commande du robot ncessite la connaissance des relations
entre ses grandeurs dentres et de sorties. Lensemble de ces quations constitue le
modle mathmatique du robot. Si les quations sont extraites de la physique, le
modle est appel modle de connaissance, et si ces quations dcoulent des
observations disponibles sur le systme, le modle sappelle modle de reprsentation.
I.2 Modlisation gomtrique
Tout manipulateur peut tre considr comme une chane de liaisons
connectes par des articulations charnires ou glissires. Chaque liaison localise les
informations son propre repre. A laide des matrices de passages dordre quatre on
peut arriver des informations globales sur le repre de la base appel repre
dinertie.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 5
(I.2)
I.2.1 Coordonnes homognes dun vecteur.
Chaque liaison dun manipulateur fait des rotations ou des translations par
rapport au rfrentiel dinertie fixe (par exemple un repre fix la base du robot).
Le calcul des coordonnes des liaisons du manipulateur exprimes dans le rfrentiel
dinertie de la base est relativement difficile. Cette difficult augmente suivant lordre
de la liaison (numro de la liaison) jusqu llment terminal. Pour ne pas alourdir
les calculs et ramener toutes les informations gomtriques au repre dinertie de la
base, il est judicieux de les localiser leurs articulations correspondantes, et situer
chaque liaison son propre rfrentiel. Le passage dun rfrentiel un autre est
garanti par des transformations. Lorsquon a uniquement des rotations on se satisfait
une matrice de transformation R de troisime ordre, et lorsquil existe une
translation autour dun point on est oblig de passer vers une matrice de quatrime
ordre pour permettre au rfrentiel de se dplacer un autre rfrentiel en translation.
Dans ce cas le vecteur de position p sera augment par une quatrime composante
pour avoir un vecteur de position 'p exprim par ses coordonnes homognes :
x
y
z
pp p
p
=
Le vecteur homogne correspondant est :
'
1
x
y
z
pp
pp
=
(I.1)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 6
La matrice augmente de transformation a la forme suivante :
11 12 13
21 22 23
31 32 33
0 0 0 1
x
y
z
R R R dR R R d
TR R R d
=
avec R matrice de rotation et d vecteur de translation qui comporte les coordonnes
du repre destination dans le repre source.
Si T est la matrice de transformation du rfrentiel ( 1 1 1, ,x y z ) vers le rfrentiel
( 2 2 2, ,x y z ), alors :
2 2 2 1 1 1
' '.x y z x y zp T p=
I.2.2 Paramtres de Denavit et Hartenberg
La convention de Denavit et Hartenberg (DH 1955) est une mthode
systmatique. Elle permet le passage entre articulations adjacentes dun systme
robotique. Elle concerne les chanes cinmatiques ouvertes o larticulation possde
uniquement un degr de libert, et les surfaces adjacentes restent en contact. Pour
cet aspect lutilisation des charnires ou des glissires est indispensable. Le choix
adquat des repres dans les liaisons facilite le calcul des matrices homognes de DH
et permet darriver exprimer rapidement des informations de llment terminal
vers la base ou linverse.
Les tapes suivre pour cette technique sont les suivantes :
1. Numrotation des segments constitutifs du bras manipulateur de la base vers
llment terminal. On associe le rfrentiel zro la base de celui-ci, et lordre
n llment terminal (effecteur) ;
2. Dfinition des axes principaux de chaque segment :
Si iz et 1iz ne se coupent pas et on choisit ix de manire tre la parallle avec laxe perpendiculaire iz et 1iz .
(I.3)
(I.4)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 7
Si iz et 1iz sont colinaires on choisit ix dans le plan perpendiculaire 1iz .
3. Fixer les quatre paramtres gomtriques: , , et i i i id q a (voir la figure I.1) pour chaque articulation tel que :
id coordonne de lorigine io sur laxe 1iz . Pour une glissire id est une variable et pour une charnire id est une constante.
i est langle que lon obtient par vissage de 1ix vers ix autour de laxe 1iz . Pour une glissire iq est une constante et pour une charnire iq est
une variable.
ia est la distance entre les axes iz et 1iz mesure sur laxe ix ngatif partir de son origine jusqu lintersection avec laxe 1iz .
i est langle entre iz et 1iz obtenu en vissant 1iz vers iz autour de ix .
On forme enfin la matrice homogne DH de dplacement qui lie la rotation et
la translation. La partie suprieure gauche dfinit la matrice de rotation 1iiR , et le
vecteur droit pour la translation 1iid .
1 11 0 0 0 1
i ii i i
iR d
T =
avec
1
cos cos sin sin sinsin cos cos sin cos
0 sin cos
i i i i iii i i i i i
i i
R
=
et
(I.5)
(I.6)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 8
1
cossin
i iii i i
i
ad a
d
=
La figure I.1 reprsente les paramtres de Denavit et Hartenberg pour les deux
repres successifs ( 1 1 1, ,i i ix y z ) et ( , ,i i ix y z ).
Enfin, la matrice de transformation homogne de Denavit et Hartenberg est la
suivante :
1
cos cos sin sin sin cossin cos cos sin cos sin
0 sin cos0 0 0 1
i i i i i i i
i i i i i i iii
i i i
aa
Td
=
Figure I.1 : Systmes de coordonnes et les paramtres de Denavit et Hartenberg
(I.7)
(I.8)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 9
I.2.3 Modle gomtrique du robot PUMA 560
Parmi les diffrentes structures de robots manipulateurs (Robot coordonnes :
cartsienne, cylindrique, sphrique, etc.), nous avons opt pour larchitecture dun
manipulateur la plus utilise en robotique qui est celle dun robot articul PUMA 560
reprsent par la figure I.2. Ce bras de robot manipulateur ralise six degrs de
libert caractriss par des mouvements de rotations
Figure I.2 : Bras de robot PUMA 560
Les trois premires articulations de ce manipulateur (Waist, Shoulder, Elbow)
caractrisent pour la premire une rotation autour dun axe verticale, la second et la
troisime suivant deux axes horizontaux dont les mouvements sont identifis par les
variables 1 2 3, et q q q . Les trois dernires articulations (Wrist rotation, Wrist bend,
Flange), qui constituent le poignet du bras de robot, sont caractrises par les
variables de rotations 4 5 6, et q q q . On admet les hypothses simplificatrices suivantes :
Les liaisons du manipulateur sont rigides : Les jeux dans les articulations sont ngligeables.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 10
Figure I.3 : Systme de coordonnes des liaisons et les paramtres des articulations
pour La reprsentation du bras de robot PUMA 560 suivant la convention de Denavit
et Hartenberg est prsente par la Figure I.3 avec une configuration dorigine.
La dfinition des repres associs aux segments suivant la convention de
Denavit et Hatrenberg est la suivante :
Liaison 1 : Repre ( 0 0 0, ,x y z ).
Lorigine est prise dans la liaison 1 lintersection de laxe de la base avec laxe de la
liaison 1.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 11
0z axe de rotation, 0z+ vers le haut. 0y+ concide avec laxe de la liaison 1 et laxe 1z+ . 1y+ est en parallle avec la liaison 2.
Liaison 2 : Repre ( 1 1 1, ,x y z ).
Lorigine concide avec lorigine du repre ( 0 0 0, ,x y z ).
1z axe de rotation, 1z+ est perpendiculaire la liaison 2 et en parallle laxe 2z+ . 1y+ vers le bas, superpos avec laxe de la base et en parallle avec 2y+ . 1x+ est en parallle la liaison 2.
Liaison 3 : Repre ( 2 2 2, ,x y z ).
Lorigine est prise dans la liaison 2 lintersection de laxe de la liaison 2 avec laxe
de larticulation 3.
2z axe de rotation, 2z+ est perpendiculaire la liaison 2 et laxe 3z+ . 2y+ vers le bas, oppos avec 3z+ . 2x+ est en parallle avec la liaison 2.
Liaison 4 : Repre ( 3 3 3, ,x y z ).
Lorigine est prise dans la liaison 3.
3z axe de rotation, 3z+ vers le poignet est perpendiculaire 4z+ . 3y+ est perpendiculaire la liaison 2, en parallle avec 4z+ . 3x+ est en parallle avec la liaison 2.
Liaison 5 : Repre ( 4 4 4, ,x y z ).
Lorigine est prise dans le centre du poignet.
4z axe de rotation, 4z+ est perpendiculaire la liaison 2 superpos avec 5z+ . 4y+ est oppos 5z+ . 4x+ en parallle avec la liaison 2.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 12
Liaison 6 : Repre ( 5 5 5, ,x y z ).
Lorigine concide avec lorigine du repre ( 4 4 4, ,x y z ).
5z axe de rotation, 5z+ vers leffecteur colinaire avec 6z+ . 5y+ concide avec laxe de larticulation 5. 5y+ est perpendiculaire laxe de larticulation 5.
Leffecteur : Repre ( 6 6 6, ,x y z ).
Lorigine concide avec les origines des repres ( 4 4 4, ,x y z ) et ( 5 5 5, ,x y z )
6z+ est colinaire avec 5z+ . 6y+ est en parallle avec 5y+ . 6x+ est en parallle avec 5x+ .
En respectant la position dorigine du robot et la dfinition des repres des liaisons
prsentes par la figures I.3, les paramtres du bras de robot PUMA 560 suivant la
convention de Denavit et Hartenberg sont reprsents dans le tableau I.1 (Armstrong
et al., 1986).
Tableau I.1 : Paramtres de Denavit et Hartenberg du bras de Robot PUMA 560.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 13
La distance 6d nest pas prsente dans le tableau I.1. Cette distance varie
selon leffecteur utilis pour lapplication (leffecteur est loutil attach au poignet sur
la dernire articulation du robot pour la manipulation des objets : par exemple la
pince reprsente par la figure I.4). Dans notre application la distance entre la fin de
leffecteur et laxe du poignet est suppose nulle 6 0d = (Armstrong et al., 1986). La dynamique des trois dernires articulations est ngligeable par rapport aux trois
premires. Par consquent, nous nous sommes intresss tudier le mouvement des
trois premires articulations du bras de robot PUMA 560 (Waist, Shoulder, Elbow),
en fixant les autres la position dorigine (i.e., poignet fix la position dorigine :
4 5 60, =0 et 0q q q= = ).
Les transformations appropries en utilisant le c pour les trois premires
articulations considres sont :
(I.9.a)
(I.9.b)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 14
A Laide du formalisme de Denavit et Hartenberg nous pouvons calculer facilement
les coordonnes de llment terminal (fin de leffecteur) dans le repre ( 0 0 0, ,x y z ) fix
la base. La notation simplificatrice 63r signifie le vecteur des coordonnes homognes
de llment terminal exprimes dans le repre ( 3 3 3, ,x y z ). Avec la supposition
(poignet fix la position dorigine :
( 4 5 60, =0 et 0q q q= = ), le vecteur 63r est donn par lquation suivante :
(I.9.c)
(I.9.d)
(I.9.e)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 15
Par la transformation de Denavit et Hartenberg 30T , on peut calculer les coordonnes
de llment terminal exprimes dans le repre ( 0 0 0, ,x y z ) par la formule suivante :
donc
Enfin, Nous dfinissons le vecteur position de llment terminal exprim dans le
repre fix la base ( 0 0 0, ,x y z ) comme suit :
A laide du logiciel MatLab et avec les relations du modle gomtrique du robot
PUMA 560 obtenues, nous avons pu programmer un simulateur pour lanimation de
ce bras de robot. Quelques fentres Windows de ce simulateur sont prsentes dans
lannexe I.
(I.13)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 16
I.3 Modlisation dynamique
Les modles dynamiques des bras manipulateurs sont dcrits par un ensemble
dquations mathmatiques qui portent des informations dynamiques de ces
manipulateurs et peuvent tre simules sur un ordinateur dans le but de synthtiser
une commande conditionne par des performances dsires. Lensemble des quations
dynamiques peut tre dtermin par des lois mcaniques classiques Newtoniennes et
Lagrangiennes. Les approches dEuler Lagrange et Newton-Euler permettent
daboutir aux quations du mouvement des robots.
Notion de torseur :
Un torseur est un objet mathmatique servant en mcanique, principalement la
mcanique du solide indformable, notamment dans la modlisation des interactions
entre des solides et la description de leurs mouvements.
Un torseur est constitu de deux champs vectoriels :
un champ uniforme, dont la valeur en tout point est nomm rsultante, note R
JG ;
le champ des moments, dont la valeur en un point P est note PMJJJG . Ces deux champs sont relis par la relation de Varignon : P OM M R OP= +
JJJG JJJJG JG JJJG.
Pour dfinir un torseur, il suffit donc de connatre sa rsultante et son moment en un
point. On crit alors :{ }O O
R
M =
JGJJJJG .
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 17
Notion de tenseur :
Lorsque lon dispose dune base dun espace vectoriel, tout vecteur de cet
espace peut se dcrire par ses coordonnes dans cette base. De mme, une application
linaire entre deux espaces vectoriels, lorsque lon a une base de chacun de ces
espaces, peut se dcrire par une matrice. Ainsi, dans une base ( )1 2 3, ,e e eJG JJG JJG donne, le vecteur u
G sera dcrit par ses composantes (u1, u2, u3). Si lon change de base, les
composantes (les nombres u1, u2 et u3) changent, mais le vecteur uG reste le mme. Le
tenseur reprsente lensemble des reprsentations de uG
dans toutes les bases. Un
vecteur est un tenseur dit dordre 1.
Une application linaire f dun espace E vers un espace F est dcrite par une matrice
M dont les coefficients dpendent de la base de E et de celle de F. Le tenseur
reprsente lensemble des reprsentations de f dans toutes les bases. Une matrice est
un tenseur dit dordre 2.
Un scalaire est un simple nombre, qui ne dpend daucune base. On dit que le scalaire
est un tenseur dordre 0.
I.3.1 Approche dEuler Lagrange
Le formalisme dEuler-Lagrange et la transformation homogne de Denavit et
Hartenberg amnent un algorithme consistant prsenter les quations dynamiques
du mouvement.
Lapproche dEuler-Lagrange sert modliser et prsenter la dynamique des robots
travers les quations du mouvement. Elle sadapte lors des calculs manuels et pour
des calculs assists par ordinateur. Lquation dEuler-Lagrange est (Fu et al., 1987 ;
Paul, 1981) :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 18
avec ED est lnergie de dissipation en cas de prsence de frottement visqueux, Ti est la
force ou le couple gnralis la ime articulation, n est le nombre de degr de libert,
qi est la coordonne gnralise de larticulation i, & qi est la drive de la coordonne
gnralise et L est le Lagrangien exprim par lquation suivante :
o EC est lnergie cintique totale de toutes les liaisons, EP est lnergie potentielle
totale de toutes les liaisons.
Lnergie cintique est calcule par lexpression de la vitesse.
o iir est la coordonne homogne du point i exprime dans le repre Ri. Comme la
liaison nest pas flexible, on a 0i
idrdt
= donc :
00
1
iiji i
ij j
dqdTV rdq dt=
= avec 1
iiT est la matrice de transformation homogne. Sous une criture matricielle, on
peut crire :
01
i
i iij j i
jV U q r
= =
et
10 1
0
j ij j
ij
T Q T j iU
j i
=
(I.18)
(I.19)
(I.20)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 19
Pour une liaison rotode, on a :
Et pour une liaison prismatique :
Lnergie cintique de llment i dans la liaison i est
En dveloppant lexpression prcdente, on obtient :
Lnergie cintique de la liaison i est :
avec
Lnergie cintique des actionneurs est dfinie par :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 20
o Ii caractrise un moment dinertie dans le cas dune rotation et une masse dans le
cas dune translation de lactionneur i. Lnergie cintique totale sera :
Lnergie potentielle est dcrite par (Fu et al., 1987)
avec
exprime dans le repre R0. Dans le cas o laxe z0 est orient vers le haut, nous
obtiendrons :
o g est la gravit mesur la base du robot.
Enfin, lnergie de dissipation est donne par :
o vif le coefficient de frottement visqueux (i=1,n). Lexpression finale du Lagrangien
sera :
Appliquant la formule dEuler-Lagrange la fonction Lagrangienne donne ci-dessus,
on trouve la force ou couple gnralis
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 21
avec
Avec une autre prsentation, lquation (I.33) devienne :
avec
Lcriture matricielle des quations prcdentes donne le modle dynamique global du
robot (Seraji, 1988). Ce modle est le suivant :
avec , ,n n nq R q R q R reprsentent respectivement les positions, les vitesses et les acclrations articulaires; ( ) n nM q R est la matrice symtrique dfinie positive des acclrations inertielles dont llment Mij de cette matrice est linertie de la ime
articulation sur la jme articulation et vice versa; ( , ) nN q q R est le vecteur de forces et/ou couples dus aux acclrations de Coriolis et centrifuge;
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 22
( ) nG q R est le vecteur de forces et/ou couples dus aux forces de gravitation; ( ) nH q R reprsente les effets des frottements visqueux; ( ) nT t R est le vecteur de
forces et/ou couples moteurs.
Une autre forme de reprsentation matricielle du modle dynamique (I.35) est la
suivante (Armstrong, 1986) :
avec , , nq q q R reprsentent respectivement les positions, les vitesses et les acclrations articulaires;
( ) n nM q R est la matrice symtrique dfinie positive des acclrations inertielles dont llment Mij de cette matrice est linertie de la ime articulation sur la ime articulation et
vice versa ; ( 1)
2( )n nn
D q R est la matrice des couples de Coriolis ; ( ) n nC q R est la
matrice des couples de centrifuges ; ( ) nG q R est le vecteur des acclrations gravitationnelles ; le vecteur ( ) nH q R reprsente les effets des frottements visqueux ;
( ) nT t R est le vecteur de forces ou couples gnraliss ; [ ] ( 1)2, n nq q R est le vecteur de produit des vitesses gnralises et 2 nq R est le vecteur de carr des vitesses gnralises, tel que :
et
Il existe une mthode directe base sur le principe de conservation dnergie pour
calculer rapidement la matrice des couples de Coriolis D et la matrice des couples
centrifuges C. Cette mthode est la suivante (Armstrong et al., 1986)
Pour la matrice de Coriolis D, le calcul est bas essentiellement sur la formule
suivante :
avec le symbole de Christoffel dfini par :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 23
Puisque la matrice dinertie est dfinie positive, on aura les proprits suivantes :
et
Enfin, les lments de la matrice centrifuge C sont dfinis par lquation suivante :
Le vecteur des frottements visqueux et secs ( )H q peut tre reprsent par les n lments
( ), 1,....,i ih q i n= sous la forme suivante :
avec fVi et fSi sont respectivement les coefficients des frottements visqueux et secs de la i
me articulation.
La perturbation due la porte de la charge reprsente par mU caractrise leffet de
la charge m sur le modle dynamique du robot, il est calcul par la matrice
Jacobienne. Celle-ci est la drive du vecteur position de llment terminal (fin
effecteur). Elle est donne par la formule suivante :
La perturbation due la porte de la charge sera :
(I.49)
(I.50)
(I.51)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 24
avec g le vecteur de gravit mesur sur base du robot.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 25
I.3.2 Modle dynamique du robot PUMA 560.
Dans cette section, le modle dynamique du bras de robot PUMA 560 est
prsent. Les trois dernire articulations de ce manipulateurs qui constituent le
poignet (Wrist) sont fixes la position zro (i.e., les positions 4 5 60, =0 et 0q q q= = , les vitesses 4 5 60, =0 et 0q q q= = et les acclrations 4 5 60, =0 et 0q q q= = ,
t R+ + t ). Nous avons adopt labrviation des fonctions trigonomtriques des coordonnes articulaires du robot en crivant , , , i i ij ij ijkc s c s et c pour signifier
cos ,sin ,cos( ), cos( )i i i j i j kq q q q et q q q+ + + respectivement. Le modle dynamique pour les trois premires articulations du bras de robot PUMA
560 est le suivant :
avec [ ]1 2 3, , Tq q q q= le vecteur des coordonnes gnralises, m est le poids de la charge
porter, ( )J q la matrice Jacobienne et [ ]1 2, ,9.81 Tq q q= . Les expressions des lments des matrices M, B et le vecteur G sont les suivants :
Les lments de la matrice dinertie M(q) :
(I.52)
(I.53)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 26
Les lments le la matrice ( , )B q q :
Les lment du vecteur de gravit ( )G q :
La dmonstration et le calcul des lments des matrices M, B et le vecteur G du
modle dynamique de ce bras de robot manipulateur est prsent dans la rfrence
(Armstrong et al.,1986).
La matrice Jacobienne J(q) est obtenue par les formules (I.13) et (I.51). Aprs quelques
calcules simples nous trouvons les expressions des lments de la matrice J(q) :
(I.54)
(I.55)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 27
avec a2 = 0.4319 m, a3 = 0.0203 m, b2 = 0.2435 m, b3 = 0.0934 m, b4 = 0.4331 m et b6 = 0 m. Les paramtres physiques du bras de robot PUMA 560 sont reprsents dans lannexe
II.
Pour plus dinformations voir (Armstrong et al., 1986). Le tableau Ann.II.1
reprsente les masses des diffrentes liaisons du manipulateur ; la masse de la
premire liaison nest pas prsente dans ce tableau puisque cette liaison ne fait pas
une translation par rapport la base du robot mais seulement une rotation de
larticulation 1 autour de laxe z0 (nergie potentielle nulle). La mesure de cette masse
nest pas ncessaire. Les diffrents moments dinerties relatifs chaque liaison en
respectant les repres des articulations sont reprsents par Le tableau Ann.II.2. La
notation simplificatrice Ixx, Iyy et Izz signifi respectivement le moment dinertie suivant
laxe x, y et z relatif chaque articulation, et la notation Imoteur le moment dinertie
du moteur. Le rapport dengrenage et le couple maximum de chaque articulation sont
prsents par le tableau Ann.II.3.
(I.56)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 28
Etude de Cas dun robot porte-outil
(Problme dExamen de DEA Robotique 92-93 UMPC-ENSAM, cours A. Barraco)
Le robot tudi est schmatis par un ensemble de solides reprsent par la Figure 1. Le
corps 0 de rfrence 0( )C est repr par le repre 0 0 0 0 0( , , , )R O x y zJJG JJG JJG
de type galilen. Le corps 1
1( )C a un mouvement de rotation autour de laxe 0 0( , )O zJJG
, sachant que le repre li ce corps
est 1 1 1 1 1( , , , )R O x y zJJG JJG JG
. La position relative de 1( )C par rapport 0( )C est 1 0 1( , )q x x=JJG JJG
. Le corps
2( )C a un mouvement de rotation autour de laxe 2 2( , )O zJJG
, colinaire avec laxe 1 1( , )O xJJG
avec
1 2 1O O a y= JJJJJG JJG
. Le repre li ce corps est 2 2 2 2 2( , , , )R O x y zJJG JJG JJG
. La position relative de 2( )C par
rapport 1( )C est 2 1 2( , )q x x=JJG JJG
. Le corps 3( )C ralise par rapport 2( )C un mouvement de
translation daxe 2 2( , )O yJJG
dfini par 2 3 4 2O O q y=JJJJJG JJG
et un mouvement de rotation autour de
2 2( , )O yJJG
avec un angle 3 2 3( , )q x x=JJG JJG
. Le repre li ce corps est 3 3 3 3 3( , , , )R O x y zJJG JJG JJG
. Les
caractristiques massiques, inertielles et gomtriques sont indiques dans la Figure 1.
Le point 3P appartient lorgane terminal de 3( )C , tel que : 3 3 3O P bz=JJJJJG JJG
Lobjet de ce problme est de faire ltude gomtrique, cinmatique et dynamique du robot.
1. ETUDE GEOMETRIQUE
1.1 Question : position du point 3P
Exprimer dans le repre 1 1 1 1 1( , , , )R O x y zJJG JJG JG
, le vecteur 1 3O PJJJJG
. Rponse : 1.2 Question : modle gomtrique inverse.
On souhaite que le point 3P occupe une position particulire dans lespace, ce qui
revient imposer 1 3O P u=JJJJG G
, avec uG vecteur unitaire non nul dont on connat les projections
dans le repre 0 0 0 0 0( , , , )R O x y zJJG JJG JJG
; 0 0 0 avec , , 0x y z x y zu u x u y u z u u u= + + G JJG JJG JJG
et scalaire non nul. Dterminer le ou les jeux de paramtres,q , qui sont solutions. On commencera par dterminer 1q puis les autres paramtres. Rponse :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 29
2. ETUDE CINEMATIQUE
2.1 Question : Vitesse de Rotation.
Donner les expressions des vitesses de rotation de chaque corps [ ] JG( /0) avec 1,3i i , exprimes pour ( )JG JJG JJG JJG1 1 1 1 1(1/0) dans , , ,R O x y z , pour ( )JG JJG JJG JJG2 2 2 2 2(2/0) dans , , ,R O x y z et pour
( )JG JJG JJG JJG3 3 3 3 3(3/0) dans , , ,R O x y z et ( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z . Donner les expressions des drives galilennes des vecteurs de la base
( )JJG JJG JJG2 2 2 2 2, , ,R O x y z . Rponse : 2.2 Question : Vitesses et acclration des diffrents points.
Donner les expressions des vitesses galilennes des points : 2 3 3, et O O P exprimes
( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z . Donner lexpression de lacclration galilenne de 3O exprime ( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z .
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 30
Rponse :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 31
2.3 Question : Cinmatique inverse.
On suppose que + 4 0b q . Peut-on trouver des jeux de paramtres q et q tels que =JJG JG3( ,3/0)V P u , o
JGu est un vecteur impos dont on connat les composantes
( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z ? Rponse :
2.4 Question : Cintique.
Donner les expressions des moments cintiquesJJG JJG JJG
1 2 3( ,1/0), ( ,2/0), ( ,3/0)K O K O K O ,
exprim pour le premier ( )JJG JJG JJG1 1 1 1 1dans , , ,R O x y z et pour les deux autres ( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z . Donner les expressions des moments dynamiques
JJG JJG2 3( ,2/0), ( ,3/0)H O H O , exprims
( )JJG JJG JJG2 2 2 2 2dans , , ,R O x y z . Calculer les nergies cintiques de chaque corps [ ]( /0) avec 1,3iT i i .
Rponse :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 32
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 33
3. ETUDE DYNAMIQUE
Chaque liaison est motorise. Entre le corps 0 1( ) et ( ) C C un moteur exerce sur le corps
1( ) C un moment = JJG JJG
1 1 1z , et sur le corps 0( )C un moment oppos. Entre le corps
1 2( ) et ( ) C C un moteur exerce sur le corps 2( )C un moment = JJG JJG
2 2 2z , et sur le corps 1( )C un
moment oppos. Entre le corps 2 3( ) et ( ) C C un moteur exerce sur le corps 3( )C un
moment = JJG JJG3 3 3z et un effort =JG JJG3 3 3t t z , et sur le corps 2( )C des efforts opposs.
On considre galement en 3P un torseur ( )JJG JJJG3 3 3;F M P , reprsentent les actions extrieures loutil.
3.1 Question : Puissance des efforts extrieurs.
Calculer la puissance motP des efforts des moteurs.
Donner lexpression de la puissance extP des efforts extrieurs en 3P , en fonction de
( )JJG 3V P et ( )JG 3/0 , on ne dveloppera pas cette expression. Rponse :
3.2 Question : Equations de Newton-Euler.
Ecrire lquation de Newton pour le corps 3( )C , projete suivant la directionJJG
3z .
Ecrire lquation dEuler pour le corps 3( )C , projete suivant la directionJJG
3z .
Rponse :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 34
3.3 Question : Formalisme de Lagrange.
A partir de lexpression de lnergie cintique calcule la question 2.4 et en utilisant
le formalisme de Lagrange, retrouver les deux quations du mouvement de la question 3.2.
Rponse :
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 35
Figure 1 : Description du robot
0xJJG
1xJJG
0yJJG
1yJJG
1q
1O
1yJJG
2xJJG
1zJG
2yJJG
2q
2O
2zJJG
3xJJG
2xJJG
3yJJG
3q
3O
=
1
1
1
1 1
1
1 1
Corps (C ) :masse m
A 0 0inertie I 0 B 0
0 0 C
dfinies dans R en O
=
2
2
2
2 2
2
2 2
Corps (C ) :masse m
A 0 0inertie I 0 B 0
0 0 C
dfinies dans R en O
=
3
3
3
3 3
3
3 3
Corps (C ) :masse m
A 0 0inertie I 0 B 0
0 0 C
dfinies dans R en O
Corps C2
Corps C3
Corps C1
0zJJG
0xJJG
0yJJG
3zJJG 3y
JJG
3xJJG
3O
3P
2zJJG
2xJJG
2yJJG
2O
0O
Corps C0
1zJG
1xJJG
1yJJG
1O
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 36
I.4 Conclusion
Les formalismes de Lagrange Euler permettent dtablir un systme
dquations diffrentielles reliant les coordonnes gnralises aux forces et/ou couples
gnraliss. Cette procdure nous a permit dobtenir les modles dynamiques du robot
PUMA 560. Le modle a permis de mettre en vidence la difficult de commander ce
genre de bras manipulateur, tant donn les fortes non-linarits qui rgissent le
fonctionnement dynamique de ceux-ci.
Nous avons remarqu que le comportement dynamique du robot manipulateur exige
une trajectoire spcifique (continue en position, en vitesse et en acclration),
permettant ainsi le contrle du robot avec des commandes lisses et physiquement
acceptables.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 37
ANNEXE I
ANIMATION DU ROBOT PUMA 560
Nous avons ralis un programme en MatLab pour animer le bras de robot PUMA
560 avec une vision 3D. Ce programme nous a permis de visualiser les diffrentes
configurations du robot obtenues par les simulations. La figure Ann.I.1 reprsente la
fentre du menu. A laide de cette dernire, on peut slectionner les conditions
initiales, conditions finales, temps de mouvement et le type des trajectoires de
rfrences.
La figure Ann.I.2 reprsente une image dune animation 3D du robot PUMA 560. On
peut galement faire des projections de lanimation suivant les deux plans XZ et XY
(voir les figures Ann.I.3 et Ann.I.4).
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 38
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 39
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 40
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 41
ANNEXE II
PARAMETRES REELS DU ROBOT PUMA 560
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 42
I.5 Rfrences
[1] T. Madani, Diffrentes Approches de Commande Dcentralise Structure
Variable Appliques en Robotique, thse de magistre de E.N.P, Alger, 2002.
[2] B. Armstrong, O. Khatib, and J. Burdick, The explicit dynamic model and
inertial parameters of the Puma 560 arm, in Proc. International Conference of
Robotics and Automation, vol. 1, Washington, USA, pp. 51018, 1986.
[3] R. S. Hartenberg and J. Denavit, A kinematic notation for lower pair
mechanisms based on matrices, Journal of Applied Mechanics, vol. 77, pp. 215221,
June 1955.
[4] D. Orin, R. McGhee, M. Vukobratovic, and G. Hartoch, Kinematics and kinetic
analysis of open-chain linkages utilizing Newton-Euler methods, Mathematical
Biosciences International Journal, vol. 43, pp. 107130, Feb. 1979.
[5] http://fr.wikipedia.org/wiki/Tenseur#Notion_de_tenseur.
[6] http://fr.wikipedia.org/wiki/Torseur.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 43
TP N1 Manipulation et Commande du robot 4ddl
IBM 7576 1. Description du matriel :
Le robot utilis pour ces travaux pratiques, reprsente un robot manipulateur 4ddl,
appel IBM 7576 (Figure 1). Il reprsente le successeur du modle populaire 7545. Il est
rapide, assist par ordinateur et fabriqu par la socit Sankyo. Les caractristiques du
robot sont reprsentes dans le tableau 1.
Marque: IBM Modle: 7576 Type: Scara Axes: 4 Prcision: 800 mm Capacit: 10 Kg Utilisation: Assemblage
Figure 1 : Robot IBM 7576
Tableau 1 : Caractristiques de lIBM 7576
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 44
Ainsi, le systme de commande est compos de : 1. la partie de puissance (host) et de de la Figure 2, dont un pupitre est dtach ; 2. la commande du robot (PC AT), 3. un PC (roll-up), permettant dditer, de compiler et de simuler les programmes ; 4. un clavier de commande (Pendant), permettant dagir directement sur les axes et
sorties du robot.
Figure 2 : Armoire de puissance et de commande du robot IBM 7576
Pendant
Partie de puissance
Partie de commande (PC AT)
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 45
2. Mise en marche : Avant de manipuler le robot, on doit suivre les tapes suivantes :
mettre la partie puissance et commande sous tension ; taper MENU puis confirmer dans le chemin C:\AML2 ; choisir diter, correspondant au menu 6, puis sur crer (menu 1) pour ouvrir un
nouveau fichier (exp : manip1) ;
3. Manipulation avec le Pendant (1 heure):
Pour manipuler le robot en manuel, dans la partie de puissance, il faut se mettre en
mode Teach, afin de pouvoir dcouvrir les diffrentes fonctionnalits offertes dans le Pendant
(pour plus dinformations sur les touches, veuillez vous rfrer la documentation
correspondante).
On trouve 48 entres/sorties prsentent dans le systme robotis, dont 24 [1-24] entres et
24 [25-48] sorties.
Dterminer le numro de lentre qui reprsente ltat de la lecture du capteur de chariot (capteur activ indiquant la prsence du chariot) ;
Dterminer la sortie dcrivant ltat de la pince (1=ouverte ; 0=ferme) pour chacun des robots tudis ;
Dterminer les sorties des trois ventouses du robot 2; Dterminer les sorties de chacun des vrins pour les trois robots IBM.
Travail faire : dplacer un plot dun chariot mobile un plateau fixe.
Pour importer les coordonnes du point terminal dans votre programme, appuyer sur F7.
4. Initiation la programmation du robot (1h00 heures):
Les instructions les plus utiles pour le TP 1 sont :
point1 : new pt(x,y,z,); /* cration dun point nomm point1 de coordonnes (x,y,z) et dangle de rotation de la pince*/
programme :subr(a,b,..) ;
/*cration dun sous-programme appel programme. Au mois un seul sous-programme doit
exister dans le programme principal et portant le mme nom*/
speed=0.1 ;
/*cest la vitesse maximale choisir pour le mouvement du robot*/
writeo(nsortie, valeur) ;
/*crit la valeur (0 ou 1) dans la sortie spcifie*/
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 46
testi(nentre,[valeur, label]) ;
/*retourne la valeur de lentre spcifie et fait un saut ltiquette label si lentre vaut
valeur*/
pallet(ll,lr,ur,n,N) ;
/* dfinit une palette de limites ll,lr,ur,n, dont on accde aux emplacements grce
palletpt(pal,i)*/
Le reste des commandes sont dtailles dans la documentation associe.
Expliquez le code du programme ci-dessous, rdig en langage AML2 ;
Pt1 : new pt(274,286,10,7.5) ;
Pt2 : new pt(0,0,70,0) ;
manip: subr();
speed=0.1;
If testi(1) eq 1 then
begin
pmove(Pt1);
pmove(Pt1+Pt2);
writeo(25,1);
pmove(pt1+);
writeo(25,0);
end;
end;
A partir de ce dernier programme, crire un programme qui permet de faire un
mouvement vertical et linaire tout en grant louverture et la fermeture de la pince ou bien
la ventouse. Utiliser un diteur DOS ou bien celui du AML2 pour saisir votre code.
Compilez le programme prcdent en saisissant les caractres SY sur linvite des commandes.
Lorsque le programme est correctement compil, il faut le tlcharger dans le contrleur
(menu 3) en indiquant un numro dapplication (1-7).
Sur le module de puissance, passer en mode Auto puis slectionner le numro de votre
application, en la tlchargeant grce au bouton Load. Lorsque cette application est
tlcharge (arrt du clignotement), vous pouvez dmarrer lexcution en appuyant sur
Start. Garder le doigt sur le bouton darrt durgence afin dviter des ventuelles collisions.
Le bouton End, arrte automatiquement lexcution du programme aprs la fin du cycle en
cours.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 47
5. Programmation avance sur le robot (1h00 heures):
On souhaite que le robot ralise des oprations de dchargement de plots mtalliques.
Pour cela il faut :
1. Dtectez la prsence dun chariot mobile aprs lavoir bloquer et indexer en activant
les soties correspondantes ;
2. Dchargez les plots du chariot et placer les sur un emplacement de la palette fixe.
Utilisez les deux fonctions pallet(ll,lr,ur,n,N) ; et palletpt(pal,i) (voir la
documentation du robot IBM), pour dfinir et accder au emplacement dune palette ;
3. En attendant le passage du chariot, le robot doit raliser la trajectoire de la Figure 3.
Utiliser la documentation fournie pour dcouvrir les fonctions lies la palette.
6. Coopration de robots (1h00 heures):
En sinspirant des exercices prcdents, programmez un second robot IBM pour
effectuer lopration inverse du premier, savoir le chargement des plots de la palette fixe
vers le chariot mobile. Excutez les deux programmes en parallle ?. en dehors de la tche
demande au deux robots, chacun deux doit raliser la trajectoire de la Figure 3.
Figure 3 : Trajet du robot
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 48
TP N2 Simulation et Commande dun Robot 6ddl
ABB IRB140 Introduction :
Le robot IRB 140 de la Figure 4 est un robot manipulateur articul, rigide six degrs de liberts. Afin dassurer une grande robustesse et garantir une prcision constante mme lors de contraintes extrmement leves, laxe 2 utilise la technologie prouve ABB de double palier. Ses 6 axes de travail confrent au robot un rayon daction exceptionnel, permettant le dveloppement de nouvelles opportunits dans le monde de lautomatisation flexible.
LIRB 140 peut tre fix au sol, au mur, dans tous les angles et mme suspendu. Extrmement compact avec une hauteur de 800 mm et un poids de 98 Kg, il sintgre parfaitement aux postes de travail de petites dimensions. Avec sa haute vitesse et sa prcision de positionnement de 0,03mm, il est prdestin au chargement et dchargement de machines, lusinage et au montage de petites pices dans lindustrie horlogre, de la microtechnique et de la machine outil, au chargement dinserts et au dchargement des presses injecter, au traitement de surface, ainsi quaux oprations de picking et demballage. Sa capacit de charge de 5 Kg permet un prhenseur dinsrer et de dcharger des pices au cours du mme cycle, ce qui accrot la vitesse de production.
Figure4: Robot ABB IRB-140
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 49
Larmoire de commande S4Cplus du robot IRB 140 La toute gnration de commande S4Cplus de la Figure 5, livre avec le robot IRB
140, encore plus puissante que ces prdcesseurs, constitue une excellente plate-forme pour la cration de nouvelles fonctionnalits grce lutilisation du langage de programmation dapplications trs puissant et convivial dABB, le Rapid. Cette commande, intgre dans une armoire compacte de dimension 950 x 800 x 620 mm et de poids 250 Kg, conjugue compacit, conception modulaire et haute performance.
La fiabilit, qui a fait lobjet dune attention toute particulire dans la conception de la commande S4Cplus, permet un fonctionnement prcis et sans faille mme dans un milieu ambiant avec une humidit relative de 95% et des tempratures ambiantes de 52C (valeurs normales dans certaines applications, tel que fonderie). Des variateurs entirement scells, une rduction de 35% des points de soudure, une unit de climatisation spare et un blindage particulirement soign garantissant une immunit leve contre les perturbations lectromagntiques, assurent la commande et au robot un temps moyen de bon fonctionnement (MTBF) remarquable de 50'000 heures.
Les deux interfaces rseaux Ethernet permettent lintgration de PC pour la supervision et les rglages des procds. Autre avantage, le langage et la modularit du systme autorisent lajout de nouvelles fonctions et ladaptation aux besoins de chacun.
Le PC industriel quipant la S4Cplus, comprenant un microprocesseur de type multiprocesseur Pentium, un Bus PCI RAM dynamique et un disque Flash, permet la commande simultane jusqu 12 axes (6 axes rotatifs robot et 6 axes externes), avec un fonctionnement choix dans les modes dynamique, auto optimis, interpolage daxes, chane de coordination 7 cadres, concept angulaire ou handling automatique.
Figure 5 : Armoire de commande S4Cplus
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 50
Logiciel de simulation et dapplication convivial et simple dutilisation
Loutil logiciel robot de base appel Robot Studio Lite 4.0 de la figure 6, permet lutilisateur dintgrer des fonctions spcifiques aux applications. Le langage ouvert et la modularit du systme simplifie le rajout de nouvelles fonctions ainsi que ladaptation des programmes existants. Avec les fonctionnalits conviviales du dernier logiciel, le dialogue homme-machine dans un langage pseudo cod avec des messages trs clairs et lcriture de programmes robots, mme complexe, est trs simple. A laide dun PC raccord sur le rseau et de ProgramMaker de la figure 4, loutil de programmation ABB, ces programmes peuvent tre crit, adapts et test hors-ligne avant dtre chargs sur la commande S4Cplus.
De nouveaux outils de simulation dvelopps sur Windows 98/NT pour la commande S4Cplus simplifient la programmation dapplications et la visualisation du process en 3D. Dautre part ces logiciels de simulation permettent de tester des mouvement complexes dans des milieux encombrs et dobtenir ainsi des donnes prcises sur les temps de cycle. Un setup convivial et rapide facilite lutilisation des logiciels, et permet au robot IRB 140 de sadapter rapidement aux oprations de travail. Si, lors de nouvelles contraintes de production, lutilisation de programmes complmentaires est ncessaire, ceux-ci peuvent tre chargs en cours dutilisation sur la commande du robot. Un logiciel anti-collision avec accouplement de scurit lectronique hypersensible vite toute dtrioration lors de fausses manipulations.
Figure 6 : le Logiciel Robot Studio
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 51
Interface de communication tendue
Seules des commandes pouvant dialoguer avec leur environnement avec de multiples technologies, et quipes des systmes de communication tel que le protocole TCP/IP sur une interface Ethernet avec un rseau PC, ont dans les systmes darchitecture actuels une chance.
La commande S4Cplus quipe de srie avec jusqu 1024 entres/sorties numriques, ne gre non seulement le robot avec plus de prcision et une vitesse augmente, mais offre surtout un large ventail de communication avec dautres commandes, automates programmables, PC et bus de communications. Elle peut changer des signaux digitaux en 24 Volts continu ou 120 Volts alternatifs, comprend 3 liaisons srie, 2 interfaces pour rseau Ethernet pour 10/100 Mbits/s avec E/S dportes pour API, bus de terrain CAN/Device Net, Interbus-S et Profibus DB, ainsi que des interfaces process pour support et signaux sur le bras suprieur du robot.
Figure 7 : le logiciel Program Maker
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 52
Caractristiques gnrales
IRB 140, le mini-robot de ABB pour des temps de cycle court et une qualit irrprochable des pices produites :
- 6 Axes rotatifs ;
- Grand rayon daction de 810 mm ;
- Capacit de charge 5 Kg ;
- Encombrement rduit ;
- Version unique pour montage au sol, au mur ou suspendu au plafond ;
- Hauteur : 800 mm ;
- Masse totale : 98 Kg ;
- Charge admissible : 5 Kg ;
- Version salle blanche : 10 ;
- Degr de protection standard / fonderie : IP 54 / IP 67 ;
- Commande robot : S4Cplus.
Applications et utilisations IRB 140, un robot compact et puissant idal pour une large gamme dapplications :
- Chargement et dchargement de pices et outils sur machines de prcision ;
- Chargement dinserts et dchargement des presses injecter ;
- Usinage, traitement de surface, dcoupage et bavurage ;
- Technologies de soudage ;
- Montage et assemblage de composants en salle blanche ;
- Picking, emballage et conditionnement.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 53
Objectifs du TP:
A travers ce TP, on devra pouvoir manipuler le robot IRB 140 de la Figure 4 de deux manires diffrentes : manuelle ou automatique, en utilisant soit le joystick du pupitre mobile dapprentissage de la Figure 5 ou par la ralisation des diffrentes tches au robot dans un premier temps, dans un environnement virtuel (Studio Lite, Figure 6), et dans un second temps sur le robot rel en transfrant le fichier de simulation, radapt aprs compilation grce Program Maker (voir Figure 7) au systme de commande S4C. La dure du TP est de 4 heures, rparties suivant les tches demandes comme suit : 1. Manipulation et commande du robot IRB 140 par le biais du pupitre mobile (1 heure) ; 2. Simulation graphique du robot IRB 140 sous Studio Lite 4.0 en dfinissant des
trajectoires (1 heure) ; 3. Excution dune tche de prhension (1 heure) ; 4. Coopration des ABB (1 heure). Exercice1 : Manipulation et commande du robot IRB 140 par le biais du pupitre mobile : Dans cette partie, vous allez manipuler le robot partir du pupitre :
Dcouvrez les fonctions de manipulation manuelle et automatique du robot ABB ; Dcouvrez les entres/sorties du systme. Combien dE/S sont prsente dans le
systme ? et quoi correspondent-elles ? Faite manipuler le robot avec le joystick avec diffrentes vitesse. Comment peut-on
rcuprer les coordonnes du point terminal par rapport la base selon les coordonnes cartsienne et articulaire ? ;
Raliser la tche suivante au robot : faite transporter un plot du chariot mobile au plateau fixe. Quelle est la trajectoire optimale et sre pour raliser le dernier mouvement?
Figure 8 : Exemple de Manipulation du Robot IRB 140
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 54
Exercice 2 : Simulation graphique du robot IRB 140 sous Studio Lite 4.0 : Cinq tapes raliser pour cette partie :
Reproduction du robot IRB 140 et son environnement en 3D ; Choix des points de trajectoire (Targets) ; Dfinition des trajets (Paths) ; Dfinition et excution du programme ; Lecture du code avec Program Maker ; Synchronisation des programmes et excution des simulations.
Reproduction du robot IRB 140 et son environnement en 3D :
Dans cette tape, vous devez reproduire graphiquement le robot et son environnement. Pour cela, dans lespace de travail en 3D du Robot Studio (Figure 9), insrer tous les objets ncessaires pour la reprsentation du robot et de son environnement.
Dans la fentre File, cliquez sur Import puis Library et choisissez le rpertoire enviro-abb1 ou enviro-abb2, o ils contiennent une srie de fichiers (.rlb) dobjets tels que :
le robot virtuel IRB 140 (exp : IRB140-M2000.rlb) ; la palette ; la pince ; la table ; le tapis ; le chariot mobile ; le porte palette ; le plot fixe ; le plot mobile.
Pour que la pince soit visible, glisser son icne dans celle du robot (c--d Irb 140-M2000) ; Naviguer dans lenvironnement virtuel grce votre souris :
deux clicks simultans sur le bouton du milieu et sur le bouton de droite de la souris, vous permettent de naviguer panoramiquement ;
un click sur le bouton du milieu et une translation en avant, vous permettent de zoomer en avant ;
un click sur le bouton du milieu et une translation en arrire, vous permettent de zoomer en arrire ;
La liste de tous les objets prsents dans lespace 3D se trouve dans la fentre Object, gauche de votre cran.
Choix des points de trajectoire (Targets) Une fois le dessin est ralis, il faut slectionner les points relatifs aux
dplacements du robot, en crant des Targets (Figure 9). Dans un premier exemple, vous allez choisir un point au centre de lemplacement du plot sur la palette, et un point localis au centre dun plot sur le chariot mobile ainsi :
Pour choisir avec une prcision vos points, faite un click droit avec la souris lemplacement de la cible et choisissez Examine. Lespace du point sera zoom ;
Dans la fentre Create du menu, choisissez Target. Une fentre de coordonnes de translation et de rotation souvre. Ces coordonnes correspondent celles du centre doutil. Ensuite, une fois que vous cliquez sur le bouton gauche de la souris lendroit choisi, les coordonnes du point slectionn vont tre calcules par rapport au centre de loutil (CDO). Validez sur Apply et radapter limage son format initial grce Unexamine ;
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 55
Vrifiez que les axes du repre dont lorigine et le CDO ont la mme direction
avec leurs quivalents des deux points choisis. Sinon, modifiez le sens de leurs orientations en cliquant droite avec la souris sur licne Target, suivi de Modify puisPosition.
Dfinition des trajets (Paths)
Dans cette tape, vous devez dfinir le chemin des trajectoires (Figure 9). Pour cela : Choisissez dans la fentre Create, le chemin Path ; Glissez les Targets crs dans lespace de Path ; Remarquez lapparition dun trait entre les diffrents points dans la fentre graphique ;
Dfinition et excution du programme Activez le contrleur entre Robot Studio, aprs un click droit sur licne Irb140-M2000 du robot, puis sur Start Controler. Une ligne en vert apparatra en bas de la fentre dexcution, montrant lexcution en mode automatique ; Sur linterface de Robot Studio, dans lespace Program, cliquez droite sur Program Modules et crez un nouveau module, ensuite un nouveau main ; Dans Robot Studio, synchroniser les points et la trajectoire simuls avec le contrleur virtuel, en cliquant sur Synchronise du Path cre; Activez loption Anti Collision dans la fentre graphique (robot collision) ; Excuter ainsi le programme du robot virtuel ABB ; Que remarquez-vous ?
Figure 9 : Planification des trajectoires pour le Robot ABB
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 56
Lecture du code avec Program Maker
Pour visualiser le code de lexemple prcdent, vous devez lancer Program Maker 4.0 (figure 10);
Dans le Program Maker, vous remarquez lapparition du programme correspondant au trajet simul dans Robot Studio. Vous pouvez ensuite modifier le code. Les syntaxes des diffrentes fonctions utilises sont prsentes sous formes dicnes dans le logiciel et dans le manuel dutilisation de lABB prsent lAIP ;
Expliquez brivement le code affich ; Modifiez le programme prcdent afin dviter les diffrentes collisions du robot avec son environnement, en rajoutant deux points intermdiaires. Utilisez linstruction MoveL (Move Linear) pour les mouvements verticaux; Compiler votre programme modifi sous Program Maker ; Dans Robot Studio, partir de langlet Program, synchronisez le code modifi partir de Program Maker au contrleur virtuel, en faisant un click droit sur le Module du programme appropri ; Excuter de nouveau le programme, que constatez-vous ?
Figure 10 : Programmer sous Program Maker
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 57
Excution du programme de simulateur sur le robot rel : Une fois le simulateur test, sauver le programme sous (.prj) dans linvite de
commande de Program Maker, ensuite envoyez le travers le rseau lordinateur de lABB correspondant en utilisant le programme de FTP (Figure 11 ;
Ouvrez le programme partir du pupitre du robot ; Excuter le programme sur le robot rel en utilisant le pupitre mobile, en
mode pas pas, puis en mode automatique.
Figure 11 : Fentre dexcution FTP
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 58
Exercice 3 : Dchargement de pices :
En utilisant le mme principe de lexercice 2 (simulation et exprimentation), ralisez une tche au robot ABB qui permet de : Bloquer le passage dun chariot mobile aprs avoir actionner un vrin bloqueur
(activer la sortie correspondante) ; Dtecter la prsence dun chariot mobile (lire lentre correspondante WAITDI) ; Fixer le chariot mobile (activer la sortie correspondante) ; Dcharger trois plots successivement du chariot vers la palette ; Librer le chariot mobile.
Remarque : en attendant larrive du chariot, le robot doit raliser au dessus de la palette le
schma de ltoile de la Figure 12.
Exercice 4 : Coopration des deux ABB :
Dans cet exercice, vous devez programmer un deuxime robot ABB, qui effectuera la
tche inverse de celui programm lexercice 3, savoir le dchargement de trois plots
conscutifs de la palette vers le chariot mobile. La gestion des entres-sorties doit tre
pise en considration, ainsi que la tche de fond de la Figure 12 lorsque le chariot est
absent.
Remarque : au lieu de dfinir plusieurs points sur la palette, vous devez dans ce cas dfinir
une procdure Palette, qui permet de dduire une matrice demplacements partir dune
origine et dune distance constante entre deux emplacements conscutifs sur les axes X et Y.
Pour cela, pensez utiliser les fonction CPos (permet de lire les donnes de la position
actuelle du CDO) et Offs (permet de dplacer la position du robot).
Exp : pos1 := CPos(\Tool:= toll1\wobj :wobj0) ;
La position courante du CDO soit (x,y,z) est stocke dans la variable pos1
MoveL Offs (p1,0,0,20), v1000, 250, tool1;
Le robot est amen sur un point qui se trouve 20mm de la position p1 dans la direction de
Z. Des exemples sont donnes dans la documentation du robot (3-CPos-1, 3-Offs-1, 3-Offs-2).
Figure 12 : Etoile en plots
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 59
TP N3 : Manipulation et Commande dun robot 7ddl
KUKA KR6 ARC
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 60
Caractristiques Techniques du KR 6 ARC Avec le KR 6 ARC, diverses tches de prcision peuvent tre ralises grce son
optimisation pour lArc, telles que, la soudure, la peinture, laspiration, etc.
Ce dernier peut supporter une charge allant de 6 kg jusqu 10 kg, dont lespace de tche est
de lordre de 1611 mm.
Il est constitu de 6 axes soit 6ddl avec une option dun 7me axe linaire. Son poids
est de 235kg et il peut se fixer sur un sol ou un axe linaire.
Exercice 1 : Manipulation du Robot KUKA KRC6-ARC
Faite dplacer le robot dans ces sept degrs de libert, en utilisant le clavier du
pendant ainsi que la sourie (pages 15-24 du manuel de formation KUKA), partir des quatre
repres de configuration possibles (Axe par Axe, WORLD, TOOL, BASE). Commentez ?
Exercice 2 : Cration dun centre doutil avec la mthode dapprentissage
Le but de cet exercice est de crer un CDO (Centre DOutil) appropri lapplication
et loutil prhenseur. Pour cela, nous allons utiliser la pince 3 Mors, quipe dun objet
pointu (exp : crayon ), qui nous aidera mieux localiser le CDO.
1. Vrifier dans la liste des outils, les numros disponibles partir de Configurer,
Dfinition doutil, Type doutil, Vrifier la liste des outils.
2. Allez ensuite sur Service, Mesurer, Outil, pour donner un nom votre CDO
(exemple : Festo-pince avec une tiquette de 4). Enfin, pointez le point dsir
dans lespace partir de quatre orientations diffrentes, en choisissant la
mthode XYZ-4-Points.
3. Activer ainsi loutil initialis partir de Configurer, Outil / Base actuels.
4. Vrifier et comparer les coordonnes de votre nouveau CDO avec ceux de
loutil appel Changeur dj cre et qui reprsente la partie basic de loutil.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 61
Exercice 3 : Dfinition dune base utilisateur
Dans cet exercice, vous allez dfinir une base utilisateur par rapport la tche du
robot.
1. la 1re base utilisateur sera une plaque horizontale fixe sur la table de travail.
Allez dans le menu Service, Mesurer, Base, et choisissez la mthode 3-points.
Cette dernire permet de dfinir un repre de base partir de trois points
distincts.
2. Dans la 1re tape, vous devez donner un nom (exemple : plaque) et un numro
votre base. La 2me tape consiste choisir loutil prhenseur avec lequel vous
devez dfinir votre base (prenez celui dfini dans lexercice 2). La 3me tape
permet de choisir lorigine de votre base aprs placement de lextrmit de
votre pince (CDO) sur un coin de la plaque. La 4me tape permet de choisir un
point sur laxe X positif (placement>5cm). Enfin la 5me tape permet de
choisir un point dans le plan XY avec Y>0. Sauvegardez ainsi votre base.
3. Refaire les deux points prcdents en choisissant la base sur la plaque incline
(nom : plaque incline).
4. Vrifiez les coordonnes articulaires et cartsiennes du robot par rapport sa
nouvelle base, partir de Visualiser, Position, Cartsien ou Articulaire. Que
constatez-vous ?
5. Donnez le sens des axes X, Y, Z dans les nouvelles bases ?
6. Affichez les valeurs incrmentales des 7 positions ?
Exercice 4 : Identification des Entres/Sorties
A partir des menus Configurer, E/S et Technologie, GRIPPER Tech, listez les
entres et sorties dj dclares ?
Exercice 5 : Programmation du robot
Dans cet exercice, vous allez programmer le robot KUKA en planifiant une trajectoire,
afin de raliser des oprations de chargement, dchargement et montage dune pice. Cette
pice est compose de trois parties comme le montre la Figure 13.
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 62
Les deux parties intermdiaire et suprieure sont positionnes initialement sur une palette
correspondante leur forme gomtrique (Figure 14).
Pour crire un programme laide du pendant, il faut revenir sur le navigateur, ouvrir le
rpertoire Polytech et ouvrer un nouveau module de programme (page 104).
Les tapes du programme sont dcrites comme suit :
1. positionnement initial du robot (HOME) ;
2. dplacement du robot jusqu la position 2 perpendiculaire la partie de base
localis dans un chariot mobile (Figure 15). Pour cela, utilisez linstruction PTP
(point to point), pages 73-75 du manuel. Cette instruction permet doptimiser le
dplacement entre deux point tout en optimisant le nombre de degrs de libert. Pour
appeler cette instruction, allez dans le menu Instructions, Mouvement, PTP;
Partie Intermdiaire
Partie Suprieure Partie de Base
Figure 13 : Structure de la pice
Figure 14 : Palette
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 63
3. attente la prsence dun chariot mobile son emplacement, pour cela il faut bloquer
le passage du chariot par le vrin et le fixer partir de lindexeur. Pour cela, il faut
activer les sorties correspondantes grce linstruction OUT (Instructions, Logique,
OUT, OUT, page 111) et attente dune entre grce linstruction WAITFOR
(Instructions, Logique, OUT, WAITFOR, page 110) ;
4. descente verticale vers la partie de base (position 3) aprs avoir ouvert la pince. La
descente tant linaire, vous allez donc utiliser linstruction LIN (Instructions,
Mouvement, LIN), dfinie dans les pages 81-84, ainsi que pour activer louverture ou
la fermeture de la pince, vous devez utiliser linstruction SET (Technologie,
GRIPPER Tech, Prhenseur, pages 117-118);
5. le robot doit prendre ainsi la partie de base et revenir la position 2, en faisant un
mouvement linaire. Remarque : quand vous faite de lapprentissage des points en
manuel, veuillez affiner la vitesse du robot par rapport la tche raliser , afin
dviter dventuels dgts matriels ;
6. Ensuite il se dirige un point perpendiculaire lemplacement de dpt de la partie
de base sur la palette fixe (position 5). Pour cela, le robot doit effectuer un
mouvement circulaire de la position 3 en passant par une position intermdiaire 4.
Linstruction approprie est CIRC (Instructions, Mouvement, CIRC, pages 87-91) ;
11
22
33
44
7755
66 88 99
1010
1111
11
22
33
44
7755
66 88 99
1010
1111
Figure 15: Schma du montage
Cours et TP de Robotique de Manipulation, Master SMART, 09-10, R. Merzouki 64
7. le robot doit descendre linairement la position 6 pour dposer la 1re partie ;
8. il doit remonter vers la position 5 ;
9. se diriger vers lemplacement de la 2me partie de la pice sur lautre palette fixe ;
10. prendre la partie intermdiaire et la transporter jusqu la position 6 ;
11. positionner la 2me partie au dessus de la 1re en affinant la vitesse de descente en mode
manuel ;
12. faite un demi tour avec la pince afin de fixer la pice intermdiaire ;
13. allez la position 10 au dessus de la partie suprieure (palette 2), en tablissant un
mouvement circulaire passant par le point 9 ;
14. descendre la position 11 pour prendre la 3me partie ;
15. revenir sur le mme chemin circulaire et dposer la 3me partie au dessus des deux
prcdentes ;
16. prendre la pice ainsi monter et la dposer sur la table ;
17. excutez le programme en mode pas pas puis en mode continu (page 105).