Jean-Philippe Roberge

Download Report

Transcript Jean-Philippe Roberge

ROBOTIQUE
-ELE4203-
Cours #2: Exercices & introduction à la cinématique directe
Enseignant: Jean-Philippe Roberge
S
Jean-Philippe Roberge - Septembre 2012
Cours #2
S Bref rappel des principales notions du cours #1
S Fin de la matière sur les transformations homogènes:
S Rotation autour d’un vecteur unitaire
S Quelques exercices reliés au chapitre 2 – transformations homogènes
S Début du chapitre 3 – Cinématique directe:
S Notions de bases sur les référentiels:
S
Pose relative des différents référentiels
S
Référentiels standards en robotique
2
Jean-Philippe Roberge - Septembre 2012
Cours #2
S Notions de bases sur les référentiels (Suite):
S
Angles de roulis, tangage et lacet (Roll, Pitch et Yaw)
S Exemple simple de la cinématique directe à l’aide d’un robot-planaire:
S Positionnement des repères
S Construction des matrices de transformation permettant l’élaboration de
la cinématique directe.
3
Jean-Philippe Roberge - Septembre 2012
Bref rappel du cours #1 (1)
S
Quelques types de robots:
S
Robots statiques: Robots ayant une base
fixe (e.g. : les robots du laboratoires, les
robots
typiques
d’une
chaîne
de
production).
S
Robots
mobiles:
Robots
qui
se
déplacent dans l’espace de travail (par
exemple, les robots explorateurs de
planètes tels que Curiosity, Spirit &
Opportunity, Sojourner, etc…)
4
Jean-Philippe Roberge - Septembre 2012
Bref rappel du cours #1 (2)
S
Quelques types de robots (suite):
S
Robots sériels: Robots composés
d’un
seul
segment
articulé
formant une chaîne cinématique
ouverte.
S
Robots
parallèles:
Robots
composés de plusieurs segments
articulés qui composent ensemble
une chaîne cinématique fermée.
5
Jean-Philippe Roberge - Septembre 2012
Bref rappel du cours #1 (3)
S Types d’automatisation:
6
Jean-Philippe Roberge - Septembre 2012
Bref rappel du cours #1 (4)
Types de joint
S
Dans le cadre du cours, nous utiliserons principalement deux types de joints:
S
Les joints prismatiques (Prismatic joint), notés P, permettent un déplacement en translation.
S
Les joints rotoïdes (Revolute joint), notés R, permettent un déplacement en rotation.
7
Jean-Philippe Roberge - Septembre 2012
Bref rappel du cours #1 (5)
Géométrie PPP
S Le robot PPP (communément appelé le manipulateur cartsien):
8
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (6)
Géométrie PRP ou RPP
S Le robot PRP ou RPP, communément appelé le manipulateur
cylindrique:
9
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (7)
Géométrie RRP
S Le robot RRP, communément appelé le manipulateur sphérique:
10
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (8)
SCARA
S Le robot SCARA (Selective Compliant Articulated Robot Arm), qui est aussi
un RRP, mais toutefois différent du manipulateur sphérique ordinaire. Il
est conçu spécifiquement pour des tâches d’assemblage.
http://www.youtube.com/watch?v=xM5iAhVDVR4&feature=related
http://www.youtube.com/watch?feature=endscreen&v=v5eR0eHk
nZk&NR=1
11
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (9)
Géométrie RRR
S Le
robot RRR (ici c’est
manipulateurs articulés:
un
12
RRRR),
communément
appelés
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (10)
Géométrie RRRRRR
S Les robots RRRRRR sont souvent
surnommés manipulateurs
anthropomorphiques puisqu’ils
s’inspirent partiellement du bras
humain: ont dit souvent qu’ils ont
un épaule, un coude et un poignet.
S Leur enveloppe de travail est
beaucoup plus complexe que les
autres types de robots vu
précédemments. Leur cinématique
directe ainsi que leur dynamique
est aussi plus compliqué.
13
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (11)
(Terminologie et définitions)
S Nombre d’axes d’un robot: Le nombre d’axes que possède un robot désigne le
positionnement que ce dernier peut faire en x,y et z, ainsi qu’en Θx , Θy, Θz . Ceci
est souvent relié au nombre de degrés de liberté du robot, mais c’est une notion
bien différente, sachez la différencier.
S Capacité, vitesse de déplacement, portée, débattement, répétabilité, justesse,
résolution spatiale.
**Tableau tiré de :
http://www.perceptron.com/index.php/en/
company/university-of-perceptron/80.html
14
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (12)
Coordonnées homogènes
Note: De manière
générale, w=1
15
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (13)
Transformations 2D - translation
Un point de coordonnées (x,y), après une translation de
(a,b) possède les coordonnées (x+a,y+b). En
coordonnées homogènes:
P '  TP
 x  a
 y  b 


 1 
T11 T12 T13   x   T11 x  T12 y  T13 
T T
  y   T x  T y  T 
T
21
22
23
22
23 

    21
T31 T32 T33   1  T31 x  T32 y  T33 
On cherche la matrice
de transformation permettant
de faire la translation
Ceci implique:
 x  a  1 0 a   x   x  a 
 y  b   0 1 b   y    y  b 

 
  

 1  0 0 1   1   1 
16
Matrice de transformation d'une
translation 2D.
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (14)
Transformations 2D - Rotation
Un point de coordonnées (x,y), après une rotation de Θ
degrés, possède les coordonnées (x’,y’). En
coordonnées homogènes:
P '  TP
 x '  cos    sin   0   x   x cos    y sin   
  

 y '   sin 
cos

0
y

x
sin


y
cos









  

  

 1   0
0
1   1  
1
17
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (15)
Concaténation de transformations
Rappel, en
général:
TT
1 2  T2T1
18
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (16)
Transformations 3D
S Comme dans le cas à deux dimensions, on peut développer les matrices
(de transformation) de translation et de rotation:
Translation:
1
0
TRANS (a, b, c)  
0

0
19
0
1
0
0
0
0
1
0
a
b 
c

1
Jean-Philippe Roberge - Août 2012
Bref rappel du cours #1 (17)
Transformations 3D
Rotations:
0
1
0 cos 
 
ROT  x,    
0 sin  

0
0
 cos    0

0
1
ROT  y,    
  sin    0

0
0

0
 sin  
cos  
0
sin   
0
cos   
0
cos     sin   

sin    cos   
ROT  z ,    
 0
0

0
 0
20
0
0 
0

1
0

0
0

1
0 0

0 0
1 0

0 1
Jean-Philippe Roberge - Août 2012
Cours #2
Rotation autour d’un vecteur unitaire (1)
S Au dernier cours, nous avons vu comment, en 2D, bâtir une matrice de
transformation qui permet d’effectuer la rotation de point(s) en
coordonnées homogènes autour d’un point de coordonnées (a,b) :
21
Jean-Philippe Roberge - Août 2012
Rotation autour d’un vecteur unitaire (2)
S Généralisons maintenant ce concept dans le domaine 3D: bâtissons une
matrice de transformation permettant la rotation de Θ degrés d’un point
en coordonnées homogènes autour d’un vecteur unitaire.
On effectuera cinq rotations:
1-Une rotation de α degrés en x
2-Une rotation de β degrés en y
Ces deux rotations permettront d’enligner
le vecteur avec l’axe z.
3-Une rotation de θ degrés en z
Finalement, les transformations inverses:
4-Une rotation de -β degrés en y
5-Une rotation de -α degrés en x
22
Jean-Philippe Roberge - Août 2012
Rotation autour d’un vecteur unitaire (3)
S L’angle α et la transformation
sont donnés par:
S L’angle β et la transformation
sont données par:
23
Jean-Philippe Roberge - Août 2012
Rotation autour d’un vecteur unitaire (4)
S Finalement, la rotation de θ autour de z, ainsi que les transformations
inverses sont données par:
S Donc, la matrice de transformation permettant d’effectuer une rotation de
θ degrés autour d’un axe unitaire u est:
Ttot  T5T4T3T2T1  ROT   , x  ROT   , y  ROT  , z  ROT   , y  ROT  , x 
24
Jean-Philippe Roberge - Août 2012
Exercices du chapitre 2 (1)
S Exercice #5 – Notions supplémentaires sur les matrices de rotation:
S 1) Les matrices de rotation sont dites “orthogonales”. En effet, de par leur
nature, la norme (euclidienne) de chacune de leur colonne est égal à 1.
Similairement, la norme de chacune de leur ligne est aussi égal à 1.
S 2) Soit une matrice R1 orthogonale, alors: det(R1) = ±1.
S 3) Si on considère seulement les repères “main droite”, alors on dira de R qu’elle
est spéciale-orthogonale. Soit une matrice R2 spéciale-orthogonale, alors :
det(R2) = 1.
S Dans le cours, nous travaillerons uniquement avec les matrices spécialesorthogonales.
S 4) Pour une matrice spéciale-orthogonale R2, (R2(θ))-1=R2(-θ)=R2T
S Exercice #1, #2
25
Jean-Philippe Roberge - Août 2012
Exercices du chapitre 2 (2)
S Exercice #3 – Notions supplémentaires:
S Soit une matrice de transformation T tel que:
 R3 X 3
T 
 0
d3 X 1 
 R3 X 3 est une matrice spéciale-orthogonale
où: 

1 
d est de dimension 3

S Alors:
T

R
T 1   3 X 3
 0
 R3TX 3d3 X 1 

1

S Exercice #10 (survol)
26
Jean-Philippe Roberge - Août 2012
Cinématique directe (1)
S Qu’est-ce que la cinématique directe?
S La cinématique directe concerne la détermination de la position et de
l’orientation de l’effecteur (pose de l’effecteur) du robot en fonction des
positions des articulations du robot.
S Il s’agit en fait de bâtir un modèle mathématique qui permet d’obtenir la
pose de l’effecteur en fonction de ce que l’on appelle les “variables
articulaires”.
S
Pour bâtir ledit modèle mathématique, nous aurons recours aux variables /
transformations homogènes.
27
Jean-Philippe Roberge - Août 2012
Cinématique directe (2)
S Aperçu très peu exhaustif de la démarche:
S Pour réaliser la cinématique directe des robots que nous étudierons, nous
nous intéresserons tout d’abord à apposer des repères au niveau des joints
du robot, par exemple:
28
Jean-Philippe Roberge - Août 2012
Cinématique directe (3)
S Aperçu très peu exhaustif de la démarche (suite):
S Par la suite, nous nous intéresserons à trouver les transformations qui
lient chacun des repères ensemble. Dans le cas d’un robot sériel à six
degrés de liberté, on déterminera:
T10 , T21 , T32 , T43 , T54 , T65
où : T ji est la matrice de transformation
homogène du repère j par rapport au repère i
S La cinématique directe est alors contenue dans la matrice de
transformation totale:
T  01T 21T 23T 34T 45T 56T
0
6
29
Jean-Philippe Roberge - Août 2012
Cinématique directe (4)
S Suite et fin du survol: exemple de la cinématique directe du robot Kuka:
30
Jean-Philippe Roberge - Août 2012
Cinématique directe (5)
S À quoi sert la cinématique?
S
Comme vous devez vous en doutez, il est nécessaire de connaître la position et
l’orientation de l’effecteur pour effectuer une panoplie de tâches.
S Concrètement:
S Des encodeurs donnent les valeurs des différentes variables articulaires. Par
exemple, pour des joints rotoïdes, les encodeurs permettront d’obtenir
directement les angles de chacune des articulations.
S Connaissant ces valeurs et ayant réaliser la cinématique directe du robot, il
est alors possible de connaître la position et l’orientation de l’effecteur.
S Nous verrons dans les heures qui suivent comment réaliser efficacement la
cinématique directe.
31
Jean-Philippe Roberge - Août 2012
Cinématique directe (6)
Référentiels
S Commençons par introduire certains concepts liés aux référentiels.
S Considérons les référentiels et le point suivant:
La question que nous nous
posons d’abord est:
Étant donné un point A
exprimé en coordonnés du
repère B, comment faire pour
exprimer ce point dans le
repère C?
32
Jean-Philippe Roberge - Août 2012
Cinématique directe (7)
Référentiels
S Voici les étapes de la solution.
S Tout d’abord, il faut déterminer la matrice de rotation qui permet de
“passer” du repère C au repère B. Nous noterons celle-ci : CTB
S Les transformations qui permettent de passer du repère C au repère B sont
des rotations et une translation, donc:
33
Jean-Philippe Roberge - Août 2012
Cinématique directe (8)
Référentiels
S Rappel sur les coordonnées homogènes:
S Un vecteur en coordonnée homogène: v1   x
z 1
T
peut subir une
translation et/ou une rotation lorsque pré-multiplié par une matrice de
transformation.
T
S Un vecteur en coordonnée homogène: v 2   x y z 0 ne peut subir
qu’une rotation lorsque pré-multiplié par une matrice de transformation.
S Une matrice de transformation homogène identité :
1
0
TI  
0

0
0
1
0
0
0
0
1
0
y
0
0 
0

1
est une matrice de transformation qui représente un système de coordonnées qui
coïncide avec le référentiel de base (aucune transformation).
34
Jean-Philippe Roberge - Août 2012
Cinématique directe (9)
Référentiels
35
Jean-Philippe Roberge - Août 2012
Cinématique directe (10)
Référentiels
36
Jean-Philippe Roberge - Août 2012
Cinématique directe (11)
Référentiels
S Voici quelques propriétés de la matrice de rotation et de la matrice de
transformation:
37
Jean-Philippe Roberge - Août 2012
Cinématique directe (12)
Référentiels
S Maintenant que nous avons introduit certains concepts de base
concernant les référentiels, étudions les référentiels souvent discutés en
robotique:
S
Référentiel U: il est surnommé le référentiel universel.
Dans certains ouvrages, on peut aussi parler du
référentiel de travail.
S
Référentiel R: C’est le référentiel associé à la base du
robot.
S
Référentiel H: il est surnommé le référentiel “Hand”,
c’est le référentiel associé à la main (porte-outil).
S
Référentiel E : il est surnommé le référentiel effecteur.
Il est associé à l’outil.
S
Référentiel P: Référentiel associé à la pièce.
38
Jean-Philippe Roberge - Août 2012
Cinématique directe (13)
Référentiels
S Maintenant que nous avons introduit certains concepts de base concernant les
référentiels, étudions les référentiels souvent discutés en robotique:
39
Jean-Philippe Roberge - Août 2012
Cinématique directe (14)
Référentiels
S Tel que mentionné, l’ordre de multiplication est important lorsqu’il
s’agit de multiplier des matrices de transformation homogènes.
S De plus, lorsque les matrices de transformation sont utilisées pour
décrire la pose de différents repères les uns par rapport aux autres il
faut se rappeller de ceci:
S Lorsqu’on pré-multiplie, la transformation se fait par rapport au repère
fixe.
S Lorsqu’on post-multiplie, la transformation se fait par rapport au repère
mobile.
40
Jean-Philippe Roberge - Août 2012
Cinématique directe (16)
Référentiels
S Il existe plusieurs façon pour décrire l’orientation d’un repère. Pour
représenter l’orientation de l’outil, une convention est d’utiliser les
angles de roulis (roll), tangage (pitch) et lacet (yaw).
41
Jean-Philippe Roberge - Août 2012
Cinématique directe (17)
Exemple du robot planaire
S Pour terminer le cours, effectuons la cinématique directe d’un robot
“simple”, puisqu’il s’agit d’un robot-planaire à trois degrés de liberté:
42
Jean-Philippe Roberge - Août 2012
Cinématique directe (18)
Exemple du robot planaire
43
Jean-Philippe Roberge - Août 2012
Cinématique directe (19)
Exemple du robot planaire
44
Jean-Philippe Roberge - Août 2012
Au prochain cours…
S Suite et fin de la cinématique directe
S On introduira une manière assez simple et surtout efficace d’effectuer la
cinématique directe basée sur les paramètres de Denavit-Hartenberg.
S On étudiera par la suite des exemples de robot un peu plus complexe.
S
Le robot PUMA (six degrés de liberté – tous des joints rotoïdes)
S
Le robot Stanford (six degrés de liberté – cinq joints rotoïdes et un joint
prismatique)
45
Jean-Philippe Roberge - Août 2012
Références
S
[1] Absolute Beginner’s Guide to Building Robots, Gareth Branwyn, 2003
S
[2] http://spectrum.ieee.org/automaton/robotics/roboticssoftware/10_stats_you_should_know_about_robots Notes de cours (ELE3202) – Richard
Gourdeau & John Thistle
S
[3] http://www.geekologie.com/2008/12/thats-it-im-moving-robotic-sta.php
S
[4] Robot Modeling and Control, Mark W. Spong et al.,2006.
S
[5] Notes de cours (Manipulateurs) - ELE4203, Richard Gourdeau, juillet 2012.
46
Jean-Philippe Roberge - Janvier 2011