Chapitre 0 (non vu en cours) : rappels sur la robotique

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.
Unimate
• 6 Classes de robots selon la JIRA (Japan Industrial Robot
Association)
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
j2
q2
i2
j1
i1
q1
j0
i0
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.
T
q  q1 q 2 q 3
7/125
Paramétrage opérationnel
jT
OT
y
iT
j0
O0

i0
x
x x y 
T
8 / 117
Modèle géométrique direct
j2
q2
l1
i3
i2
j1
l2
i1
q1
j3
q3
l3
j0
i0
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.sankyoseiki.co.jp/fa/index-e.html
www.adept.com
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.yaho
o.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
Cartésien
SCARA
Cylindrique
Sphérique
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.
(beaucoup d’illustrations de la partie robotique mobile
sont empruntées au polycopié de B. Bayle à l’ENSPS :
http://eavr.ustrasbg.fr/~bernard/education/ensps_3a/poly_3a.pdf )
• Conséquence : la plateforme peut aller n’importe où, mais pas par
n’importe quel chemin => besoin de planifier (problème du
créneau).
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.
Inducteur
Induit bobiné
Ventilateur
Balais
Collecteur
Il est aussi celui qui permet un meilleur contrôle du
couple (par d’ondulation).
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
BP
Vanne de
surpression
BP
HP
Accumulateur
distributeur
D
x>0
Pompe
qB
qA
Vérin

Réservoir
A
B
y>0
 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).
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 :
1
 La vitesse est divisée par N :
qs 
 Le couple est multiplié par N :
 N est le rapport de réduction
s  Nm
N
qm
 Ceci suppose bien sûr que la transmission ne dissipe pas de
puissance.
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)
Engrenages cylindriques droits :
A : externes,
B : internes,
C : pignon/crémaillère
A
Engrenages hélicoïdaux :
A : arbres parallèles,
B : arbres perpendiculaires,
B
A
C
B
 + : 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)
49/125
Engrenages (2)
Engrenages coniques :
A : droits (90°),
B : angle quelconque.
A
B
Trains planétaires ou
épicycloïdaux
 + : compacité, coaxialité, grand rapport de réduction.
 - : fabrication complexe, frottements élevés (ou jeu important), très mauvaise
réversibilité.
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.
Poulies pour
l’alignement / la
tension des câbles
Plusieurs tours sur
l’arbre moteur
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
Étrier fixe
phototransistor
LED
Arbre mobile
Lorsque l’arbre tourne, le phototransistor produit un signal carré (après mise
en forme) :
La mesure de position consiste alors à compter les impulsions.
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 :
A
B
Le déphasage entre
A et B permet de déterminer
le sens de rotation
(bascule D)
 Top tour : voie supplémentaire avec une
seule encoche
La voie C n’est utilisée
C
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
CPU
BUS de communication
Carte(s)
de sortie
Amplification
de puissance
Actionneurs
Carte(s)
d’entrée
Mise en forme
Capteurs
articulaires
E/S
logiques
Mise en forme
Ampl. Puiss.
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