Initiation à la
modélisation
&
aux performances
des Robots

Année 2006-2007 H.DEMOUVEAU

Table des Matières

CHAP.1. Les ARCHITECTURES DE ROBOT 1

1. Avant propos............................................................................................................1

1.1 Mécanismes à motorisation unique.........................................................................1

1.2 Mécanismes poly-articulés ......................................................................................1

2. Particularités d'un ROBOT.......................................................................................1

2.1 Définition d'un ROBOT ............................................................................................1

2.2 Les architectures de type série................................................................................1

2.3 Les architectures de type parallèle..........................................................................2

3. Familles de structures poly-articulées .....................................................................3

3.1 Les architectures séries :.........................................................................................3

3.1.1 Les architectures séries avec boucles cinématiques: 3

3.1.2 Les architectures séries arborescentes: 4

3.2 Les architectures parallèles....................................................................................4

4. Nature des articulations utilisées en robotique........................................................6

5. Morphologie des robots...........................................................................................7

5.1 Les architectures séries...........................................................................................7

5.1.1 Sous-ensembles constituant un robot 8

5.1.2 Schéma cinématique des 12 principaux porteurs 8

5.1.3 Noms des principales architectures 10

5.2 Les architectures parallèles...................................................................................14

5.2.1 Introduction 14

5.2.2 La plateforme de GOUGH 14

5.2.3 Différentes familles 15

5.2.4 robots pleinement parallèles planaires 16

5.2.5 Organisations types des architectures parallèles 20

CHAP.2. OUTILS MATHEMATIQUES DE MODELISATION 23

1. Introduction............................................................................................................23

2. Rappels mathématiques........................................................................................24

2.1 Expression de changement de repère...................................................................25

2.2 Expression de transformation de vecteur dans un repère.....................................28

3. Utilisation des matrices homogènes.....................................................................29

3.1 Changement de repère d'une matrice de transformation. .....................................29

3.2 Transformations successives dans un repère Ri...................................................30

3.3 Succession de changements de repères...............................................................30

4. Expression de quelques transformations à l'aide des matrices homogènes.........31

4.1 Rotation autour d'axe privilégié, ou translation pure..............................................31

4.2 Composition de rotation ou de rotation/translation autour d'un axe unique...........31

4.3 Rotation autour d'un axe quelconque U d'un angle ? exprimé dans un repère Ri 31

5. Expression de transformations différentielles........................................................33

6. Expressions du positionnement d'un point dans un repère Rg..............................35

6.1 Coordonnées cartésiennes....................................................................................35

6.2 Coordonnées cylindriques.....................................................................................35

6.3 Coordonnées sphériques.......................................................................................36

7. Orientation d'un solide dans l'espace....................................................................36

7.1 Système des angles d'Euler (Précession, Nutation, Rotation propre)...................36

7.2 Angles Aéronautiques (Lacet, Tangage, Roulis) Norme AFNOR E61-101 ...........37

7.3 Angles de Bryant (?1 ,?2 ,?3 )..............................................................................38

7.4 La méthode des quaternions (Hamilton 1843) ou paramères d'Euler : .................39

7.4.1 Expression des cosinus directeurs en fonction des quaternions : 39

7.4.2 Expression des quaternions en fonction des cosinus directeurs : 39

CHAP.3. MODELISATION GEOMETRIQUE 43

1. Introduction............................................................................................................43

2. Paramétrage de DENAVIT HARTENBERG modifiée par KHALIL ........................44

2.1 Description de structures géométriques de robots................................................44

2.2 Conventions de mise en place des repères :.........................................................45

3. Modèle géométrique direct du robot :....................................................................47

3.1 Exemple de détermination de modèle géométrique direct du robot : ....................47

3.2 Cas des robots incluants des arborescences :......................................................50

3.3 Cas des robots incluant des boucles fermées :.....................................................52

4. Modèle géométrique inverse .................................................................................54

4.1 Robot résoluble:.....................................................................................................54

4.2 Méthode de Paul....................................................................................................55

4.3 Idées de la méthode de Pieper..............................................................................58

4.4 Présentation des calculs de la méthode de Pieper...............................................59

4.4.1 Représentation de trois liaisons rotoïdes concourantes 59

4.4.2 Cas des robots possédant trois articulations prismatiques 62

5. Méthode numérique...............................................................................................62

6. Méthode générale permettant de déterminer le modèle inverse explicite .............64

CHAP.4. MODELISATION CINEMATIQUE 67

1. Introduction............................................................................................................67

2. Modèle différentiel direct........................................................................................67

3. Détermination de la matrice Jacobienne du modèle..............................................68

3.1 Méthode explicite directe.......................................................................................68

3.1.1 Principe de calcul : 70

3.2 Méthode analytique ...............................................................................................70

3.3 Méthode différentielle ............................................................................................71

4. Relation Variables articulaires/ Coordonnées opérationnelles..............................73

4.1 Utilisation des angles d'Euler.................................................................................73

5. Modèle différentiel à chaînes arborescentes.........................................................74

6. Modèle différentiel de structures à chaînes possédant des boucles fermées .......74

7. Modèle différentiel inverse (étude des cas réguliers)............................................76

7.1 1ère méthode de calcul ...........................................................................................76

7.2 2ème méthode de calcul..........................................................................................76

CHAP.5. IDENTIFICATION DES ERREURS DE ROBOTS 79

1. Principales causes d'erreurs (Positionnement statique)........................................79

1.1 Erreurs de quantification et de calcul.....................................................................79

1.2 Erreurs d'étalonnage..............................................................................................79

1.3 Erreurs cinématiques de type systématique..........................................................79

1.4 Erreurs cinématiques de type aléatoire.................................................................79

2. Nature des erreurs.................................................................................................80

3. Nature de trajectoires assurées par un robot ........................................................80

4. Précision d'un robot en fonction du mode de programmation ...............................80

4.1 Programmation On-Line (par apprentissage)........................................................80

4.2 Programmation analytique.....................................................................................80

4.3 Programmation Off-Line ........................................................................................80

5. Caractéristiques générales....................................................................................82

5.1 Charge...................................................................................................................82

5.1.1 Charge nominale 82

5.1.2 Charge limite 82

5.2 L'espace de travail.................................................................................................82

5.3 Définition de la vitesse...........................................................................................82

5.4 Définition de l'accélération.....................................................................................82

5.5 Définition de temps de déplacement minimal........................................................82

5.6 Résolution..............................................................................................................82

    1. Caractéristiques pour la programmation en ligne..................................................83
    2. 6.1 Caractéristiques de pose locale.............................................................................83
    3. 6.1.1 Exactitude de positionnement 83
    4. 6.1.2 Exactitude d'orientation 84
    5. 6.1.3 Répétabilité de pose locale 84
    6. 6.1.4 La répétabilité maximale 84
    7. 6.1.5 La répétabilité statistique 85
    8. 6.1.6 Exactitude Multi-directionnelle 85
    9. 6.2 Temps de Stabilisation ..........................................................................................86
    10. 6.3 Dépassement en Position......................................................................................86
    1. Exactitude et Répétabilité Bipose..........................................................................87
    2. 7.1 Exactitude Bipose..................................................................................................87
    3. 7.2 Répétabilité Bipose................................................................................................88
  1. Caractéristiques de trajectoire et de déplacement ................................................88

8.1 Exactitude de trajectoire.......................................................................................88

8.1.1 Exactitude de positionnement 88

8.1.2 Exactitude d'orientation 88

8.2 Répétabilité de trajectoire......................................................................................89

8.2.1 Répétabilité de positionnement 89

8.2.2 Répétabilité d'orientation 89

8.3 Raccordement de trajectoire..................................................................................89

8.3.1 Erreur d'arrondi 90

8.3.2 Dépassement 90

8.4 Exactitude et Répétabilité de vitesse.....................................................................90

8.4.1 Exactitude de vitesse de trajectoire 90

8.4.2 Répétabilité en vitesse 91

8.4.3 Fluctuation de vitesse 91

CHAP.1. Les ARCHITECTURES DE ROBOT

1. Avant propos

Comme les statistiques l'indiquent, les applications en robotique sont très diverses, et trouver des morphologies adaptées à chacune, est un problème qui s'il est envisagé de cette façon est insoluble .

Ainsi résoudre le problème des structures par les fonctions à réaliser n'est pas envisageable.

1.1 Mécanismes à motorisation unique

Des tentatives de recherches ont été effectuées pour réaliser des mécanismes à mouvements complexes à l'aide d'une seule motorisation. Ces développements restés marginaux n'ont pas abouti pour des raisons de complexité et de coût d'étude, Celle ci était à faire pour chaque application.

1.2 Mécanismes poly-articulés

Un deuxième axe, plus prometteur a été celui des architectures poly-articulées, qui correspond
aux mécanismes les plus couramment installés dans les entreprises.
Il est intéressant afin de clarifier la notion de robot de se reporter à sa définition .
Cette définition a été fixée par l'AFRI : Association Française de la Robotique Industrielle

2. Particularités d'un ROBOT

2.1 Définition d'un ROBOT

Un robot est un manipulateur à plusieurs degrés de libertés, commandé en position, reprogrammable, polyvalent.

Il est capable de manipuler des matériaux, pièces, outils, ou dispositifs spécialisés, au cours de mouvements variables en vue de l'exécution d'une variété de tâches.

Son unité de commande utilise un dispositif de mémoire et éventuellement de perception et d'adaptation à l'environnement et aux circonstances.

Ces machines polyvalentes sont généralement étudiées pour effectuer la même fonction de façon cyclique, et peuvent être adaptées à d'autres fonctions sans modification permanente du matériel.

On lit dans la première phrase à plusieurs degrés de libertés.
On peut alors aborder ce problème en se posant les questions suivantes :

Quel est nombre de degrés de libertés à utiliser ?
Quelle est la nature des liaisons à utiliser ?
Comment les organiser les une par rapport aux autres ?

Deux familles d'architectures ont été développées :

2.2 Les architectures de type série

Les mécaniques de cette famille se composent globalement d'un assemblage de corps successifs reliés par des articulations.

Remarque :

Une autre spécificité est que ces mécanismes peuvent être pilotés en position et vitesse par des modèles de commande de même nature.

2.3 Les architectures de type parallèle

Bien que créés il y a plus longtemps, ces mécanismes sont industrialisés depuis moins longtemps. Les raisons principales, sont des problèmes de modélisation, de mise au point des commandes, et des puissances de calcul que requière leur pilotage.

3. Familles de structures poly-articulées

3.1 Les architectures séries :

Les architectures séries simples :

Elles reposent sur le principe d'une succession des corps rigides reliés entre eux par des articulations.

Robot S10

6 articulations

Structure série

3.1.1 Les architectures séries avec boucles cinématiques:

Pour des raisons de robustesse, à ces articulations principales peuvent s'ajouter des articulations complémentaires qui constituent des boucles cinématiques qui permettent de rigidifier la structure, ce qui permet la manipulation de charges plus élevées.

Dans certains cas, les actionneurs sont reportés à la base du robot, diminuant ainsi les masses globales en mouvement. Il est alors nécessaire d'inclure des boucles cinématiques pour transférer le mouvement vers l'articulation concernée.

Robot Kuka 601r 6 degrés de liberté à boucles fermées

Les boucles que l'on trouve le plus fréquemment sont les parallélogrammes, et les triangles

3.1.2 Les architectures séries arborescentes:

Dans certains cas un robot peut posséder plusieurs extrémités, on parlera alors de architectures arborescentes.

3.2 Les architectures parallèles

Définition d'un ROBOT PARALLELE

Un robot parallèle est constitué d'un ensemble de chaînes cinématiques liées à l'une de leur extrémité à un corps de référence la base, et à l'autre extrémité à une plate-forme mobile destinée à recevoir l'organe terminal On désigne par point d'articulation les jonctions des chaînes cinématiques avec soit la base, soit la plate-forme mobile

Ces architectures présentent comme avantage une grande rigidité, pour une masse totale relativement réduite, tout en ayant un ratio masse utile/masse en mouvement élevé comparé aux architectures série.

Ces architectures sont peu nombreuses car les méthodes de calcul de leur "Modèle mathématique" sont complexes, et l'étude de mécanismes n'est pas évidente.

Ainsi à chaque nouvelle architecture, un développement complet de la commande est a réaliser, ce qui rend la rentabilité de tels projets plus hasardeuse.

Cependant certaines solutions existent comme le robot DELTA.

Le robot TRICEPT HP1 A ces deux principales familles de robot peuvent s'en rajouter d'autres, telles que les robots mobiles, et les robots à grands nombres de degrés de liberté.

4. Nature des articulations utilisées en robotique

Si on se réfère à la théorie de mécanismes, on connaît les différents types d'articulations disponibles, et leurs caractéristiques.

Ces articulations ont chacune un certain nombre de degrés de mobilité, chaque interdiction de mouvement entraînant de la part de la liaison, une transmission d'effort (blocage d'une translation) ou une transmission de moment (blocage d'une rotation).

Pour les robots à architecture série deux types de liaisons sont utilisés : la liaison pivot et la liaison prismatique. L'avantage qu'elles présentent, est qu'elles ne laissent qu'une seule possibilité de mouvement plus facile à contrôler.

De plus elles sont capables de supporter des sollicitations sauf dans la direction du mouvement. Les structures seront globalement plus solides, et moins déformables. Ce qui est une nécessité en robotique, si l'on désire atteindre des positions avec une précision suffisante, et ce indépendamment de la charge encaissée par le robot.

Symboles de la liaison prismatique
Symboles de la liaison rotoïde
Choix retenus fréquemment Pour des transmissions de mouvements

En général, la liaison hélicoïdale est utilisée pour assurer une transformation de mouvement Rotation/Translation, au niveau des motorisations. Elle se retrouve dans les boucle cinématiques.

Pour les robots à architecture parallèle vient s'ajouter la liaison rotule. Les contraintes de rigidité, et de motorisation des architectures sont différentes de celles des robots de type série.

5. Morphologie des robots

5.1 Les architectures séries

Pour faire assurer par l'effecteur des mouvements, on comprend qu'il faille un nombre de degrés de mobilité au moins égal au nombre de degrés de liberté imposé par la trajectoire à effectuer.

Tout degré de liberté supplémentaire apportera des facilités lors de la programmation de trajectoires

Lorsque la tâche à exécuter se situe dans un espace à 2 dimensions : déplacements plans, deux degrés de liberté suffisent à satisfaire tous les besoins. Les solutions sont multiples :

Rotation / Rotation Translation / Translation Rotation / Translation Translation / Rotation

Cependant l'indication du type des articulations retenues ne suffit pas. En effet leur organisation dans l'espace est importante : Si les axes de translations sont confondus, ou parallèles, les mouvements générés ne se font que dans un espace à une dimension.

Ainsi :

Les types d'articulations, le nombre d'articulations, leurs orientations relatives dans l'espace participent à la caractérisation d'un robot.

Si pour un système évoluant dans un espace à deux dimensions le problème est relativement simple à cerner, il n'en va pas de même pour un problème dans l'espace à trois dimensions.

A la question : Quelles sont les solutions envisageables en fonction du nombre d'articulations associées, on trouve les résultats suivants :

Nombre des degrés de liberté Nombres de combinaisons Nombres de structures
2 62=36 8
3 63=216 36
4 64=1296 168
5 65=7776 776
6 66=46656 3508

Si à ces combinaisons on enlève celles qui assurent des déplacements dans des espaces de dimension inférieure au nombre d'articulations, on trouve les nombres de solutions dans le tableau ci-dessus.

Ce nombre reste cependant élevé, et faire un choix adapté dans cet ensemble est toujours compliqué. Hors l'expérience montre que les mécanismes différents rencontrés dans le milieu industriel sont peu nombreux.

5.1.1 Sous-ensembles constituant un robot

Pour analyser plus facilement ce problème, il convient de partager le robot en deux sous

ensembles :
Le porteur : En général il est constitué des trois premiers degrés de liberté du mécanisme en
partant de sa base.

Sa fonction : Amener l'effecteur en un point désiré de son espace opérationnel.

Le poignet : Il est constitué des degrés de liberté restants. Souvent la mécanique de ces
éléments est beaucoup plus légère.
Sa fonction : Orienter l'effecteur aux environs du point atteint par le porteur.

5.1.2 Schéma cinématique des 12 principaux porteurs

Si on observe les possibilités de combinaisons avec trois articulations, on constate que 36 structures sont possibles. Si on retient celles qui mathématiquement sont différentes seules 12+1 subsistent, qui ne sont pas redondantes [Milenkovic 83].

Ces architectures de porteur sont symbolisées sur la figure suivante, à l'aide des conventions présentées précédemment (celles avec une astérie sont celles retrouvées le plus fréquemment).

5.1.3 Noms des principales architectures

*1* : architecture anthropomorphe *2* : architecture sphérique

*4* : architecture cylindrique *5* : architecture cartésienne

*3* : architecture torique *5* : architecture SCARA

Les versions correspondantes industrielles s'apparentent presque toutes à ces 5 architectures, seuls des décalages de positionnement dans l'espace dus à des contraintes d'assemblage des corps les un par rapport aux autres peuvent les différencier.

A ces solutions est venu se rajouter un dernier modèle : Le Simplified Compliant Assembly Robot Arm : SCARA Ce robot est du type RRP+R

Robot
SCARA

De conception plus récente, ce robot a fait l'objet d'une recherche d'un mécanisme performant pour réaliser des cycles de Pick and Place. Après comparaison d'architectures différentes pour des trajectoires types, cette organisation des articulations a donné les meilleurs résultats en terme de vitesse.

De la même façon on peut obtenir différentes architectures de poignet à 1, 2 ou 3 articulations permettant différentes orientations. Dans ce cas l'articulation retenue est la Rotoïde. (On peut y trouver là une certaine analogie avec le poignet humain).

Les statistiques d'utilisation des robots en fonction de leur morphologie, donnent les résultats suivants [AFRI 96] :

Répartition par type coordonnées

CARTESIEN et // SCARA
20% 9%
2940 robots 1044 robots

CYLINDRIQUE 7%

ANTROPOMORPH

1252 robots

E
64%
9140 robots

Le graphe ci-dessus indique le nombre de robots installés en France en fonction de leur morphologie.

Il fait ressortir la prédominance des architectures antropomorphes, et des architectures cartésiennes, bien adaptées à la manutention, et au déchargement de machines. L'architecture antropomorphe se rapprochant le plus du bras humain, elle se prête bien à la manipulation.( la Nature fait bien les choses!!!...).

Remarque

Pour diminuer les coûts de conception, les fabricants ont tendance à partir d'une architecture type de décliner une famille complète de robot de charge et zone de travail différentes. L'avantage évident est que cette famille ne nécessitera le développement que d'une seule commande qui pourra être paramétrée

5.2 Les architectures parallèles

5.2.1 Introduction

Un

ingénieur dénommé Pollard fut le premier à déposer un

brevet de mécanisme pour peindre automatiquement les carrosseries de voitures en 1938.

C'est la première idée de robot industriel (à structure parallèle ).

Le concept ne put aboutir faute de moyens électroniques et informatiques adéquats pour le commander.

Le mécanisme (que l'on nomme maintenant Tripode) comprenait trois chaînes cinématiques. Les mobilités d'orientations étaient assurées par un poignet à trois degrés de liberté en série avec la structure parallèle.

5.2.2 La plateforme de GOUGH

Dans les années cinquante, Gough, un ingénieur mécanique du domaine aéronautique conçut un mécanisme à architecture parallèle dont le but était de tester les pneus des avions à l'aide d'une plate-forme mobile.

Il est le premier à avoir mis au point une architecture à six chaînes cinématiques que l'on nomme maintenant Hexapodes.

On prête à Stewart d'avoir adapté la plate-forme de Gough au domaine des simulateurs de vols en proposant une structure parallèle commandée comme base mobile.

5.2.3 Différentes familles

Pour distinguer les architectures on identifie :

1) les robots pleinement parallèles :

Architecture pour laquelle le nombre de chaînes cinématiques est strictement égal au nombre de degrés de liberté de la plate-forme, chaque chaîne ne comporte qu'un seul actionneur.

2) les robots parallèles hybrides:
Lorsque l'on met en série plusieurs architectures parallèles

Les architectures pleinement parallèles se divisent en deux familles :

Les architectures planaires à trois degrés de liberté (2 translations une rotation perpendiculaire au plan matérialisé par les translations) Les architectures spatiales à trois ou six degrés de liberté

1) Nombre de degrés de liberté

En général les architectures parallèles possèdent des chaînes cinématiques identiques

L'objectif à atteindre est :
Un actionneur par chaîne cinématique

Lorsque les actionneurs sont bloqués la plate-forme est bloquée : Mobilité = 0

2) Formule de GR?BBER

Pour identifier la mobilité d'un mécanisme, à fortiori une structure parallèle, on peut utiliser la
formule générale de Grübber.

n

m = N(L ? n ?1) +?di

j=1

c

Elle exprime la mobilité m d'un mécanisme en fonction de :

L nombre de solides du mécanisme (référentiel compris)
n nombre d'articulations qui relient les solides entre eux
di nombre de degrés de libertés des articulations

Elle permet pour le problème qui nous intéresse, d'identifier et de construire les solutions de
mécanisme dont on aura imposé la mobilité de la plate-forme.

Structures parallèles planes
(on ne traite que des structures avec un minimum de trois mobilités)

Dans ce cas : N=3 Hypothèses Les articulations utilisées pour une structure plane ne peuvent être que des articulations à 1 ddl où on perd la planéité de la structure on étudie des structures pleinement parallèles on pose n1 le nombre de solides par chaînes devient :

n

m = 3(L ? n ?1) +?di

j=1

dans ce cas : m=3

L =3n1 + 2 (2 correspond aux solides que sont la base et la plate-forme ) n = 3(n1 +1)

n

?di = 3(n1 +1) j=1 les articulations ont 1 ddl

devient :

c

m = 3(3n1 + 2 ? 3(n1 + 1) ?1) + 3(n1 + 1) m = 3(?2) + 3(n1 +1) m =?3 + 3n1 )

Comme m=3, nous obtenons : n1 = 2

CONCLUSION :

Toutes les solutions planes de structures pleinement parallèles ont des chaînes constituées de 2 solides reliés entre eux par des articulations à 1ddl

Structures pleinement parallèles spatiaux

A priori dans ce cas m peut être égal à 3,4,5,6 Formule de Grübber

n

m = N(L ? n ?1) +?di

j=1

c

avec :
L nombre de solides du mécanisme (référentiel compris)
n nombre d'articulations qui relient les solides entre eux
di nombre de degrés de libertés des articulations
N=6
A ce niveau de calcul intégrons une nouvelle variable :

A

B nombre de boucles cinématiques du robot

D

Définition

Une boucle cinématique est un chemin virtuel à travers le mécanisme, qui permet en partant d'une articulation de revenir sur cette même articulation

Pour identifier le nombre de boucles d'une structure, dès qu'un chemin a été parcouru, on ouvre la boucle à un endroit quelconque de cette boucle, et on procède ainsi jusqu'à ce qu'on ne puisse plus trouver de chemins supplémentaires

Pour une structure pleinement parallèle, on a la relation B=m-1, en effet il y a une chaîne de plus qu'il n'y a de boucles cinématiques.

Ainsi la formule de Grübber devient :

n

m = N((B +1)n1 + 2 ? (B +1)(n1 +1) ?1) +?di

j=1

soit c

n

m = N(?B) +?di

j=1

si on appelle d le nombre de ddl de chaque chaîne cinématique, la formule devient :

n

m × d =?di

m = N(?B) + m × d avec j=1

structure spatiale : mobilité = 3

m = 6(?2) + 3 × d

Actionneurs bloqués on souhaite une mobilité nulle Si on pose d?= d ?1 (1 correspond à la mobilité contrôlée par l'actionneur) Mécanisme bloqué, nous aurons : 0 = 6(?2) + 3× d? d?= 4

)

Déclinaison des mécanismes envisageables : Chaînes cinématiques à un solide par chaîne

Articulation Base/solide solide/plate-forme
Nbre de ddl 1 3
Nbre de ddl 2 2
Nbre de ddl 3 1

Chaînes cinématiques à 2 solides par chaîne

Articulation Base/solide1 solide1/solide2 solide2/plateforme
Nbre de ddl 1 1 2
Nbre de ddl 2 1 1
Nbre de ddl 1 2 1

Chaînes cinématiques à 3 solides par chaîne

Articulation Base/solide1 solide1/solide 2 Solide2/solide 3 Solide3/plateforme
Nbre de ddl 1 1 1 1

structure spatiale : mobilité = 6 m = 6(?5) + 6 × d

Actionneurs bloqués on souhaite une mobilité nulle

Si on pose d?= d ?1 (1 correspond à la mobilité contrôlée par l'actionneur)

Mécanisme bloqué, nous aurons : 0 = 6(?5) + 6 × d? d?= 5

)

Déclinaison des mécanismes envisageables :

1