chapitre 0 (non vu en cours) : rappels sur la robotique
TRANSCRIPT
Chapitre 0 : Généralités sur la robotique
1/125
Historique de la robotique
• Étymologie : le mot tchèque robota (travail). • Définition : un robot est un système mécanique
polyarticulé mû par des actionneurs et commandé par un calculateur qui est destiné à effectuer une grande variété de tâches.
• Historique : – 1947 : premier manipulateur électrique téléopéré. – 1954 : premier robot programmable. – 1961 : apparition d'un robot sur une chaîne de montage de General Motors. – 1961 : premier robot avec contrôle en effort. – 1963 : utilisation de la vision pour commander un robot.
• 6 Classes de robots selon la JIRA (Japan Industrial Robot Association)
Unimate
2/125
Disciplines de la robotique
• Mécanique : conception, réalisation, modélisation des robots.
• Electronique : mise en place de composants pour les robots, (télé)communications
• Informatique : création de programmes destinés à la gestion du transfert d’information entre les différents composants du robot.
• Automatique : commande, calibrage des capteurs, des effecteurs, identification des paramètres
• Traitement du signal : analyse des informations enregistrées par les capteurs du robot.
• Mathématiques : modèles mathématiques pour la prise de décision ou/et l’apprentissage, calcul de trajectoires, localisation, planification.
• Sciences cognitives : interactions homme-machine, machine-machine, prise de décision.
3/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
4/125
Vocabulaire
• Effecteur = outil
• Organe terminal = dernier corps mobile
• Axe = articulation
• Corps
• Base = corps fixe
POIGNET
PORTEUR
5/125
Vocabulaire
• Configuration articulaire – Position et orientation des différents corps du robots
les uns par rapport aux autres
• Configuration opérationnelle – Position et orientation du corps terminal par rapport
au corps de base (indépendamment des autres corps)
• En général, pas de bijection – existence de modes d’assemblage, redondance.
– distinguer le nombre d’axes et le nombre de degrés de liberté de l’effecteur (DDL)
6/125
Paramétrage articulaire
i0
j0
j1
i1
q1
j2
i2
q2 j3 i3
q3
• on attache un repère à chaque corps • on définit un angle entre les axes des repères
successifs • on regroupe 3 angles dans un vecteur des
paramètres articulaires q.
qT
q q q1 2 3
7/125
Paramétrage opérationnel
O0 i0
j0
xT
x y
iT
jT OT
x
y
8 / 117
Modèle géométrique direct
i0
j0
j1
i1
j2
i2
j3 i3
q1
q2
q3
l1
l2 l3
9 / 117
Modèle géométrique inverse
10/125
Nb d’axes vs nb de DDL de l’effecteur
• Soit un robot possédant n axes.
• Le nombre de DDL maximal pour l’effecteur est : mmax= inf(n,6)
• Singularité : lorsque le nombre m de DDL de l’effecteur est inférieur à mmax.
– Singularité permanente = jamais m n’atteint mmax.
– Configuration singulière = m vaut mmax en général, mais pas dans certaines configurations.
11/125
Modélisation cinématique
12/125
Caractérisation des robots manipulateurs
• Description de la cinématique
– Nombre d’axes (nombres d’actionneurs commandés)
– Nombre de degrés de liberté de l’effecteur (classe des déplacements engendrés)
– Structure du robot
– Schéma cinématique
13/125
Les robots SCARA
• SCARA : Selective Compliance Assembly Robot Arm
• 4 axes (articulations) : – 3 rotations – 1 translation verticale
• Robots très rapides et précis • Plutôt bon marché • Usage limité aux applications
quasi plane (mouvements dans la plan horizontal + une translation verticale)
www.adept.com
www.sankyoseiki.co.jp/fa/index-e.html
14/125
Les robots cylindriques
• Coordonnées cylindriques
• 3 axes (articulations) : – 1 translation verticale
– 1 rotation d’axe vertical
– 1 translation horizontale
• Robots très rapides
Robot cylindrique SEIKO
15/125
Les robots sphériques
• Coordonnées sphériques
• 3 axes (articulations) :
– 1 rotation d’axe vertical
– 1 rotation d’axe horizontal
– 1 translation
Robot sphérique FANUC
16/125
Les robots à parallélogramme
• Rigidité à moindre masse
• Actionneurs près de la base
http://www.snmi.com/robots.htm
http://st12.yahoo.com/rfa/index
.html
17/125
Les robots 6 axes anthropomorphes
• Par rapport aux robots à parallélogramme :
– plus léger
– plus dextre
– moins rigide
– plus grand domaine accessible
– moins de charge utile
http://st12.yahoo.com/rfa/index.html
Stäubli
18/125
Les robots cartésiens
• Constitués uniquement d’axes en translation :
• axes perpendiculaires 2 à 2.
• commande simplifiée.
• possibilité d’insérer un poignet pour ajouter des d.d.l. en rotation.
• série : faible rigidité.
• portique : grand encombrement.
• guidage et mesure de précision.
Toshiba
LSIIT / GRAViR
19/125
Les robots parallèles
• Plusieurs chaînes cinématiques en parallèle
• grande rigidité. • légers et rapides (moteurs sur base
fixe) • Efforts importants • petit espace de travail
COMAU
Simulateur de vol
20/125
Les robots redondants
• nombre d’axes n > nombre de degrés de liberté de l’effecteur
• grande maniabilité.
• infinité de configurations articulaires pour une même position de l ’effecteur
• commande complexe.
• applications avancées
Kuka LWR
21/125
Caractérisation des robots manipulateurs
• Volume accessible – Volume de travail du robot, difficile à représenter pour 6DDL
– Il dépend de : la cinématique du robot, la longueur des segments, les butées articulaires
– Graphiquement, on donne le volume accessible d’un point (centre outil, centre poignet) pour au moins une orientation
SCARA Sphérique Cylindrique Cartésien Anthrop.
22/125
Caractérisation des robots manipulateurs
• Précision du positionnement – Le positionnement du robot est soumis à de nombreuses erreurs : erreurs de mesure
(quantification, erreurs sur le zéro), jeux, flexibilités, erreurs dans la modélisation géométrique du robot (longueurs, …)
– Le positionnement absolu est en général mauvais (un à plusieurs millimètres).
– La répétabilité est bien meilleure (d’un ordre au moins): c’est la précision de reproduction d’un mouvement répété plusieurs fois avec la même charge. C’est le paramètre adapté lorsque l’on considère des cycles répétitifs avec une programmation par apprentissage
• Performances dynamiques – Vitesse maximale :
• seule la vitesse maximale au niveau des articulations a un sens. • les constructeurs donnent souvent la vitesse maximale en bout de bras, dans la configuration la
plus favorable.
– Capacités d ’accélération • Déterminées à partir des couples nominaux des moteurs et du modèle dynamique du robot.
• Dépendent de la charge et de la configuration.
23/125
Caractérisation des robots manipulateurs
• Charge utile – C ’est la charge maximale telle que les autres performances du robot
(précision, vitesse max, …) sont garanties quelle que soit la position
– Très inférieure à la charge maximale que peut porter le robot dans la configuration la plus favorable. La configuration la plus défavorable est en général « bras tendu horizontal ».
– Spécifié par une masse et une distance maximale entre le « centre outil » et le centre de gravité de la charge (influence des moments).
24/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
25/125
Robots à roues
• Caractérisés par : – le nombre d’essieux,
– le nombre de roues,
– le type de roues,
– articulations entre les essieux,
et la mobilité qui en résulte.
• Deux grandes catégories : – Robots omnidirectionnels,
– Robots non holonomes
26/125
Robot “unicycle”
• Un seul essieu, deux roues motrices indépendantes.
• La stabilité de la plateforme est assurée en général par des roues folles (ou des appuis glissants).
Robot Epuck utilisé en TP
27/125
Non-holonomie
• Contrainte holonome = équation algébrique liant les variables d’état.
• Concrètement, ici, x, y et q ne varient pas de façon indépendante.
• Conséquence : la plateforme peut aller n’importe où, mais pas par n’importe quel chemin => besoin de planifier (problème du créneau).
(beaucoup d’illustrations de la partie robotique mobile sont empruntées au polycopié de B. Bayle à l’ENSPS : http://eavr.u-strasbg.fr/~bernard/education/ensps_3a/poly_3a.pdf )
28/125
Modèle cinématique
• Relie les vitesses de commande aux vitesses opérationnelles
29/125
Exemple de robot “unicycle”
• Odométrie = mesure de la rotation des roues pour connaître le déplacement et du robot, par intégration dans le temps, sa position dans le plan.
30/125
Le Segway
• Pas d’autonomie décisionnelle (pas vraiment un robot, mais issu de la robotique)
• Gestion dynamique de l’équilibre (pendule inverse).
31/125
Voitures autonomisées
• 2 ou 4 roues motrices / différentiel • Véhicules existants auxquels on ajoute des organes de
commande et des capteurs. • Voir le challenge DARPA.
•
32/125
Robots omnidirectionnels
• Comme leur nom l’indique, …
• Roues suédoises : peuvent « glisser » latéralement.
• Problème : odométrie.
33/125
Robots tous-terrains à essieux articulés
• Exemple : Roburoc 6 (ISIR – Robosoft).
34/125
Autres formes de robots mobiles
• Robots à pattes :
– Caractérisés d’abord par le nombre de pattes.
– Allures statiques vs allures dynamiques.
35/125
Robots humanoïdes
• Robots mobiles à 2 pattes avec des capacités de manipulation
• Interactivité
36/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
37/125
Actionneurs utilisés en robotique de manipulation.
Moteurs électriques : Le plus simple est aussi celui qui, historiquement, a
équipé les premiers robots industriels : le moteur à courant continu.
Il est aussi celui qui permet un meilleur contrôle du couple (par d’ondulation).
Ventilateur
Induit bobiné Inducteur
Balais
Collecteur
38/125
Moteurs CC sans balais (brushless)
La quasi totalité des robots industriels actuels utilise des moteurs brushless. Leur commande est plus complexe mais ils ont un meilleur rapport poids/puissance.
Principes généraux : • L’aimant est le rotor (d’où l’absence
de balais). • Le stator est constitué de plusieurs
bobines que l’on alimente avec des tensions déphasées de façon à faire tourner le champ.
• Les champs ayant tendance à s’aligner, le rotor tourne de façon synchrone avec la vitesse de rotation du champ statorique.
• Le couple est proportionnel au courant.
Documentation Faulhaber
39/125
Actionneurs hydrauliques
Excellent rapport poids puissance mais comportement très non linéaire.
S’utilise en montage direct, sans transmission
Ces actionneurs sont utilisés pour des robots en général assez peu précis, mais avec des capacités de charge très élevées.
Certaines servo-valves fonctionnent en débit (vitesse), d’autres en pression (couple/force).
BPBP
distributeur
D
qB
qA
A B
Vérin
Vanne de
surpression
AccumulateurHP
x > 0
y > 0
Pompe
Réservoir
BPBP
distributeur
D
qB
qA
A B
Vérin
Vanne de
surpression
AccumulateurHP
x > 0
y > 0
Pompe
Réservoir
40/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
41/125
Guidage et transmission
• Guidage = ce qui sert à contraindre le mouvement d’une pièce à une autre.
• Transmission = ce qui sert à transmettre la puissance mécanique de l’actionneur à la charge qu’il anime.
• Fonctions DISTINCTES
• Robot avec guidage et sans transmission = les corps du robot sont articulés mais le robot est passif, il n’a pas de capacités de se mouvoir.
42/125
Les problèmes du guidage
• Précision (jeu, déformations).
• Frottements que l’on peut limiter – En diminuant le coefficient de frottement des
pièces qui glissent les unes sur les autres (choix des matériaux, états de surface, lubrification)
– En évitant le glissement et en privilégiant le roulement sans glissement
• Résistance aux charges selon les directions perpendiculaires aux mouvements.
43/125
Roulements
• Pour assurer la rotation d’un arbre.
• Jamais seul.
44/125
De très nombreuses variantes
• Roulements à billes, à rouleaux, à aiguilles, à rotule, butées à billes, etc.etc.
Palier auto-aligneur Combinaison butée à billes et roulement à aiguilles
45/125
Guidages linéaires
• Pour des mouvements de translation.
• Mêmes principes de diminution des frottements.
• Rails de guidage lisses ou à billes
• Problèmes de porte-à-faux.
46/125
Principe général d’une transmission mécanique
Un moteur électrique tourne « rapidement » et produit un couple « faible » (en comparaison de ce qui est utile pour engendrer les mouvements d’un robot)
On connecte donc en général le moteur au corps du robot à travers un organe de transmission, qu’on appelle réducteur.
Principe : La vitesse est divisée par N :
Le couple est multiplié par N :
N est le rapport de réduction
Ceci suppose bien sûr que la transmission ne dissipe pas de puissance.
1s mq q
N
s mN
47/125
Pignons et courroies
+ : simplicité de mise en œuvre, peu de jeu, bonne réversibilité, miniaturisation
- : N assez petit, élasticité. 48/125
Engrenages (1)
+ : chaînage et montage simples, très couramment utilisés. - : compromis difficile entre jeu et pertes d’énergie par frottements, mauvaise
réversibilité, encombrement (donc poids), peu de dents en contact en même temps (limite la charge)
Engrenages cylindriques droits : A : externes, B : internes, C : pignon/crémaillère
A B C
Engrenages hélicoïdaux : A : arbres parallèles, B : arbres perpendiculaires,
A B
49/125
Engrenages (2)
+ : compacité, coaxialité, grand rapport de réduction. - : fabrication complexe, frottements élevés (ou jeu important), très mauvaise
réversibilité.
Engrenages coniques : A : droits (90°), B : angle quelconque.
A B
Trains planétaires ou épicycloïdaux
50/125
Transmission rotation translation par vis à bille
Principe = liaison vis-écrou, avec des billes au niveau du filetage pour limiter les frottements.
pas de jeu, réversibilité correcte (selon les modèles).
51/125
Transmission à câbles
• Peu de frottements – très bonne transmission des efforts – bonne réversibilité.
• Montage complexe (performance dépendante du montage).
• Effet de la tension sur les guidages.
• Vieillissement.
• Faible rapport de réduction.
Plusieurs tours sur l’arbre moteur
Poulies pour l’alignement / la tension des câbles
Arbre de sortie 52/125
Exemple d’une transmission à câble sur le robot WAM (Makoplasty)
53/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
²
54/125
Codeurs optiques
Lorsque l’arbre tourne, le phototransistor produit un signal carré (après mise en forme) :
La mesure de position consiste alors à compter les impulsions.
LED
phototransistor
Étrier fixe
Arbre mobile
55/125
Codeurs optiques incrémentaux
Deux voies (A et B) sont gravées, avec décalage de 1/4 de période.
Sur chaque voie, 1 phototransistor
Signaux délivrés :
Top tour : voie supplémentaire avec une seule encoche
A
B
Le déphasage entre A et B permet de déterminer le sens de rotation (bascule D)
C La voie C n’est utilisée que pour l’initialisation de la mesure
56/125
Codeurs optiques incrémentaux
http://www.heidenhain.fr/
57/125
Codeurs optiques absolus
Codeur optique absolu Principe de comptage
Pb : pour un même encombrement, la résolution est réduite par rapport à un codeur incrémental.
Nombre de fils importants (non négligeable en robotique).
58/125
Différentes structures de robots
• Deux structures principales : – Robots manipulateurs : robots à base fixe permettant
de manipuler des objets – Robots mobiles : robots permettant de se déplacer.
Parfois ils transportent sur leur plateforme un robot manipulateur.
• Eléments de technologie : – Actionneurs – Guidage et transmission – Capteurs – Interfaçage avec un contrôleur
59/125
Principe général B
US
de
co
mm
un
icat
ion
CPU
Carte(s) de sortie
Carte(s) d’entrée
Mise en forme
E/S logiques
Mise en forme Ampl. Puiss.
Actionneurs
Capteurs articulaires
Amplification de puissance
Butées, validations, …
Contrôleur Interface Robot 60/125
Amplification de puissance
Rôles : – Amplifier la puissance des signaux électriques de
sortie du contrôleur numérique. Exemple : une sortie analogique +-10V, 50mA (0,5 W maxi)
ne peut alimenter un moteur électrique 10V-3A maxi (30 W).
– Réaliser un asservissement de bas niveau permettant de : Sécuriser le fonctionnement de l’actionneur.
Linéariser le comportement de l’actionneur / de l’axe.
Accéder depuis le contrôleur numérique à une grandeur particulière de commande.
61/125
Cartes d’entrée/sortie Servent à la connexion entre le calculateur numérique et le
robot.
Sont placées sur un bus de données (bus ISA sur les anciens PC, bus PCI sur les PC récents, bus industriels : VME par exemple).
Sont identifiées par une adresse (ISA) ou un identificateur (PCI - cartes reconnues au boot).
Sont accessibles par un pilote (driver) fourni avec la carte, qui n’est rien d’autre qu’une bibliothèque de fonctions du type: SortieAnalogique(double valeur, int adr_carte, int num_voie);
LectureCodeur(int* valeur_lue, int adr_carte, int num_voie);
Souvent, une fonction de sortie écrit la valeur à envoyer dans une case mémoire 1 de la carte, puis écrit dans une case 2 un code particulier qui déclenche la production de la sortie
Souvent, une fonction d’entrée écrit dans une case mémoire 3 un code particulier qui provoque l’acquisition et la copie de la valeur à acquérir dans une case mémoire 4, puis procède à la lecture de la case mémoire 4.
Certaines fonctions d’entrée sont bloquantes, donc à utiliser avec précaution dans le contexte temps réel.
62/125
Cartes d’axe
Parfois, les fonctions d’interfaçage entrée/sortie sont réalisées par une même carte, qui comporte aussi un microcontrôleur. Celui-ci est utilisé pour l’asservissement de la vitesse et/ou de la position de l’axe. On parle alors de carte d’axe.
Depuis la CPU, on peut alors : Utiliser la carte d’axe en mode transparent, comme
une carte d’entrée et de sortie. Utiliser la carte d’axe en mode asservissement.
Une carte d’axe permet de libérer la CPU des calculs de bas niveau.
63/125