63
Synthèse géométrique des Synthèse géométrique des manipulateurs parallèles manipulateurs parallèles sphériques à trois degrés de sphériques à trois degrés de liberté liberté Présentation de mémoire de maîtrise par Stéphane Brunet 23 décembre 2003

Synthèse géométrique des manipulateurs parallèles

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique des Synthèse géométrique des manipulateurs parallèles manipulateurs parallèles

sphériques à trois degrés de sphériques à trois degrés de libertéliberté

Présentation de mémoire de maîtrisepar Stéphane Brunet

23 décembre 2003

Page 2: Synthèse géométrique des manipulateurs parallèles

SommaireSommaire

● Présentation de la démarche● Topologie et géométrie du manipulateur● Cinématique du robot● Calcul d'espaces de travail● Détection de collision● Synthèse géométrique par algorithmes

génétiques

Page 3: Synthèse géométrique des manipulateurs parallèles

IntroductionIntroduction

Démo

Page 4: Synthèse géométrique des manipulateurs parallèles

IntroductionIntroductionApplication visée: machine-outil hybride à six axes:

– Le manipulateur sphérique oriente la pièce à usiner;

– Un manipulateur parallèle en translation (3 ddl)déplace la tête d'usinage.

Page 5: Synthèse géométrique des manipulateurs parallèles

Démarche suivieDémarche suivie

● L'objectif est d'obtenir un manipulateur optimal pour une application donnée:– trouver le nombre minimal de paramètres

nécessaires pour décrire la géométrie;– choisir une technique d'optimisation;– choisir des critères d'optimisation.

Page 6: Synthèse géométrique des manipulateurs parallèles

Démarche suivieDémarche suivie

● L'optimisation consiste principalement à maximiser l'espace de travail :– Utiliser une méthode de calcul d'espaces de

travail.● Il faut prendre en considération les

particularités du manipulateur :– Plusieurs modes d'opération,– Nombreuses possibilités d'obstructions.

Page 7: Synthèse géométrique des manipulateurs parallèles

Topologie du manipulateurTopologie du manipulateur

Topologie = description de la chaîne cinématique

Liaison actionnée3 chaînesidentiques

Deux boucles fermées

Page 8: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrieDeux familles de géométrie possibles pour la même topologie:

Axesparallèles

Axesconcourants

Page 9: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrie

Dans un manipulateur sphérique:– Les axes de toutes les liaisons sont concourants;– Toutes les transformations sont des rotations;– Aucune translation n'est utilisée.

Page 10: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrie

● Géométrie du bâti :

Trois angles déterminent l'orientation relative des trois actionneurs attachés au bâti

Axe de rotationd'un actionneur

Page 11: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrie

● Géométrie de l'effecteur :

Trois angles déterminent l'orientation relative des trois rotoïdes attachés à l'effecteur

Page 12: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrie

● Géométrie des jambes :

Pour chaque jambe, deux angles déterminent la longueur des membrures proximale et distale

Page 13: Synthèse géométrique des manipulateurs parallèles

Description de la géométrieDescription de la géométrie

En résumé:– trois angles pour le bâti,– trois angles pour l'effecteur,– deux angles pour chacune des jambes.

Douze paramètres indépendants décrivent la géométrie du

manipulateur sphérique 3-RRR

Démo

Page 14: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Modèle géométrique direct :– Les variables articulaires sont connues;– La position de l'effecteur est calculée.

● Modèle géométrique inverse :– La position de l'effecteur est connue;– Les variables articulaires sont calculées.

Page 15: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Inconnues cinématiques:– Angles des trois actionneurs :– Orientation des membrures distales par rapport

aux membrures proximales :– Orientation de l'effecteur par rapport aux

membures proximales :

1A ,1

B ,1C

2A ,2

B ,2C

3A ,3

B ,3C

Page 16: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Équations de la cinématique:– Pour chaque jambe, une équation à trois

inconnues;– Deux boucles cinématiques relient ces équations.

Seulement six des neuf inconnues doivent être calculées pour obtenir la

position de tous les solides

Page 17: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Démarche de résolution du MGI:– L'orientation de l'effecteur est donnée (angles

d'Euler);– La position des joints distaux en est déduite;– Les inconnues cinématiques sélectionnées sont

obtenues en deux temps :1. Angles des actionneurs

2.Orientation de la membure distale par rapport à la membrure proximale

1k

2k

Page 18: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Angles des actionneurs:

Déduits de l'orientationde l'effecteur

Fonctions de l'angle

1k

1k

Trois équations Trois inconnues

Page 19: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Angles

Déduits de l'orientationde l'effecteur

Exprimé à l'aide de ,préalablement calculé,et de , inconnue

2k

1k

Chaque jambe est résolue

indépendamment

w3k=w3

k

2k

Page 20: Synthèse géométrique des manipulateurs parallèles

Résolution de la cinématiqueRésolution de la cinématique

● Modes opératoires = existence de plusieurs solutions

Démo

Trois jambes donnent 8 modes

différents

Page 21: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● But : évaluer au mieux les caractéristiques du manipulateur

● Méthode : 2k-arbres (quadtree, octree)– Structure hiérarchique permettant de discrétiser

l'espace– k = dimension de l'espace– p = profondeur de discrétisation

Page 22: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Profondeur de discrétisation

Exemple d'un quadtree (k=2)

Page 23: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Discrétisation dans un octree (k=3)

Page 24: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Exemple en 2D (quadtree, k=2)

Représentation dans l'espace (plan)

Représentation de la structure hiérarchique

Noeud intermédiaireNoeudfeuille

Racine de l'arbre

L'appartenance à la formeest calculée au centre

Page 25: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Simplification de la hiérachie

Représentation dans l'espace (plan)

Représentation de la structure hiérarchique

Page 26: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Simplification de la hiérachie

Représentation dans l'espace (plan)

Représentation de la structure hiérarchique

Page 27: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Méthode de numérotation (k=2)

Chemin vers unnoeud feuille

Page 28: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Méthode de numérotation (k=3)

Page 29: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Contribution personnelle aux 2k-arbres :

une double utilisation de la structure de données:● Description d'une forme (usage traditionnel)● Ajout d'informations supplémentaires aux noeuds-

feuilles :– Nombre de solutions disponibles (modes opératoires),– Présence ou non de collisions entre les membrures,– Degré d'isotropie du manipulateur,– Etc.

● Inconvénient : les simplifications possibles du 2k-arbre sont plus rares.

Page 30: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Programmation en C++ :– Utilisation des conteneurs standards map et set ;– Utilisation des templates de classes pour

améliorer la modularité et la réutilisation;– Seulement deux classes particulières :

● Une pour contenir le chemin vers un noeud,● Une pour retrouver le lien entre le chemin et la position

dans l'espace.

– Possibilité de stocker l'information supplémentaire

Page 31: Synthèse géométrique des manipulateurs parallèles

Calcul d'espaces de travailCalcul d'espaces de travail

● Application au manipulateur sphérique– Espace décrit par les angles d'Euler Z-X-Z (k=3)

● Toutes les positions sont décrites lorsque :

– Profondeur « raisonnable » :● Trop petite = temps de calcul excessif● Trop grande = erreur dues à la discrétisation grossière● p = 5 ou 6 donnent des bons résultats

Démo

Page 32: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Manipulateurs théoriques optimaux:– Les membrures proximales et distales font toutes

90°● En pratique, les collisions entre les

membrures sont nombreuses :– 100% de l'espace est parcouru, théoriquement;– Seulement 70% environ est exempt de collisions.

Jusqu'à 30% d'erreur!!

Page 33: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Problématique en détection de collisions :– Choisir une technique de représentation des

solides :● Modèle polyédrique,● Modèle filaire.

– Trouver des algorithmes de détection de collision rapides et fiables;

– Les algorithmes et la technique de représentation sont indissociables.

Page 34: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Représentation par modèle polyédrique :– Relativement précis,– Basé sur une facettisation des solides (très

courante en CAO),– Difficile à générer « à la volée ».– Algorithmes de détection de collision :

● Principalement basés sur des polyèdres convexes,● Nécessitent un pré-traitement pour devenir rapide.

Page 35: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Représentation par modèle filaire :– Bonne précision, surtout pour des volumes

élancés (bras de robots, par exemple),– Basé sur des segments entourés de matière,– Facile à générer « à la volée ».– Algorithmes de détection de collision :

● Basés sur un calcul de distance entre des segments,● Nécessitent un pré-traitement très simple pour devenir

rapide.

Page 36: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Exemple de modèle filaire

Attention!Ceci est un seul

solide!

Page 37: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Modèle filaire – algorithme non optimisé de détection de collision :

1.Prendre, un à un, tous les couples de segments entre deux solides;

2.Calculer la distance entre les deux segments;

3.Vérifier que cette distance est suffisamment grande pour qu'il n'y ait pas de collision.

Trop de calculs pour rien!

Page 38: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Modèle filaire – décomposition hiérarchique :– Permet d'obtenir une description de plus en plus

détaillée;– Si l'algorithme de détection de collision n'a pas

besoin d'une description détaillée, un gain est réalisé.

Temps de calcul divisés par 8!

Page 39: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Modèle filaire – décomposition hiérarchique :

Racine de la hiérachie=

un seul segmentenglobe tout

Page 40: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Modèle filaire – décomposition hiérarchique :

Page 41: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Modèle filaire – décomposition hiérarchique :

Page 42: Synthèse géométrique des manipulateurs parallèles

Détection de collisionDétection de collision

● Résultats comparatifs modèle filaire/modèle polyédrique :– Vitesse du même ordre de grandeur,– Plus grande précision pour le modèle polyédrique

mais la différence est faible (4 à 5% pour le manipulateur traité),

– Modèle filaire extrèmement simple!

Page 43: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Choix d'une méthode d'optimisation :– Méthodes déterministes,– Stochastiques,– Semi-déterministe.

● Algorithmes génétiques :– Mécanismes d'évolution calqués sur le modèle

biologique,– Déjà utilisés en synthèse géométrique en

robotique.

Page 44: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Domaines d'excellence des algorithmes génétiques :– Problèmes avec beaucoup de paramètres (i.e.

espaces de recherche de dimension importante)– Espaces de recherches :

● discontius,● complexes,● peu connus.

Page 45: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Inconvénients des algorithmes génétiques :– Programmation plus complexe que d'autres

méthodes;– La technique ne garantit pas l'obtention de la

solution optimale globale.

Page 46: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Fonctionnement – une génération en images...

Page 47: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Fonctionnement du croisement

Page 48: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Fonctionnement du croisement

Page 49: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Fonctionnement de la mutation

Page 50: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Algorithmes génétiques codés binaires/réels :– Codés binaires :

● Première technique utilisée;● Les paramètres sont codés à l'aide d'un nombre de bits

fixes;● Une correspondance doit être établie.

– Codés réels :● Évolution plus récente des algorithmes génétiques;● Les paramètres sont codés à l'aide de nombre réels.

Page 51: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Opérateur de croisement : BLX-

Valeur du gènepour le parent B

Valeur du gènepour le parent A

II I

La valeur du gène pour l'enfant est choisie aléatoirement dans cet intervalle

Zonesd'exploration

Page 52: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Opérateur de mutation :– La mutation aléatoire ne fonctionne pas

correctement;– L'opérateur utilisé est donc particulier au

problème.

Page 53: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Opérateur de mutation :– Il réalise l'une des opérations suivante :

● Changer la longueur totale d'une jambe;● Changer la position du joint intermédiaire sur la jambe;● Déformer la base ou l'effecteur;● Rendre la base ou l'effecteur symétrique;● Rendre les jambes identiques;● Permuter des angles de la base, des jambes ou de

l'effecteur.

Page 54: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Critères d'optimisation :– Volume de l'espace de travail,– Facteur de forme de l'espace de travail,

● Étendue de la calotte sphérique où se trouvent des orientations atteignables,

● Poids plus important pour les solutions proches de la position initiale.

Page 55: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Critères d'optimisation :– Volume de l'espace corrigé en tenant compte de

la position des jambes,

Page 56: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Critères d'optimisation :– Le degré de symétrie du manipulateur,– La longueur des jambes,– La dimension du bâti,– La dimension de l'effecteur.

Page 57: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Combinaison linéaire des critères

Page 58: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Résultat :– Obtenu après 208 générations et quelques jours

de calcul;– Le manipulateur optimal est symétrique.

Il n'est plus nécessaire d'étudier les manipulateurs non symétriques, d'où un

paramétrage simplifié.

Page 59: Synthèse géométrique des manipulateurs parallèles

Synthèse géométrique par Synthèse géométrique par algorithmes génétiquesalgorithmes génétiques

● Autre calcul – résultat :

=75°Dimension fixe

Manipulateursymétrique

Page 60: Synthèse géométrique des manipulateurs parallèles

ConclusionConclusion

● Travail réalisé :– Un paramétrage minimal mais complet de la

géométrie;– Une librairie générique pour les 2k-arbres;– Une contribution dans la détection de collision

appliquée à la robotique;– La synthèse géométrique par algorithmes

génétiques pour une application en fabrication.

Page 61: Synthèse géométrique des manipulateurs parallèles

ConclusionConclusion

● Limites du projet :– Les formes des membrures pourraient être plus

complexes;– Le nombre de critères d'optimisation pourrait être

plus grand.● Travail à réaliser :

– Génération de trajectoires avec passage d'un mode opératoire à un autre;

– Étude dynamique du manipulateur.

Page 62: Synthèse géométrique des manipulateurs parallèles

ConclusionConclusion

● Remarques supplémentaires :– Manipulateur difficile à utiliser;– Modifier légèrement la topologie peut réduire les

risques de collision;– Changer radicalement de manipulateurs pour

l'application en fabrication :● Passer de 6 à 5 degrés de libertés;● Deux degrés en translation pour la tête d'usinage;● Deux degrés en rotation et un en translation pour la

table d'usinage.

Page 63: Synthèse géométrique des manipulateurs parallèles

Période de questionsPériode de questions