Réf. : S7730 V1 Date de publication : 10 juin 2000 Modélisation et commande des robots manipulateurs Date de dernière validation : 05 février 2015 Cet article est issu de : Automatique - Robotique | Robotique par Alain LIÉGEOIS Pour toute question : Service Relation clientèle Techniques de l’Ingénieur Immeuble Pleyad 1 39, boulevard Ornano 93288 Saint-Denis Cedex Document téléchargé le : 29/04/2020 Pour le compte : 7200045072 - imt mines albi // 193.50.45.187 Par mail : [email protected] Par téléphone : 00 33 (0)1 53 35 20 20 © Techniques de l'Ingénieur | tous droits réservés Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Modélisation et commande des robots manipulateurs par Alain LIÉGEOIS Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Professeur de l’université Montpellier-II, Institut des sciences de l’ingénieur Enseignant-chercheur au Laboratoire d’informatique, de robotique et de microélectronique de Montpellier (LIRMM ) tiwekacontentpdf_s7730 v1 1. 1.1 1.2 1.3 1.4 Morphologie .............................................................................................. Graphe du mécanisme ................................................................................ Articulations ou « liaisons »........................................................................ Torseurs cinématique et dynamique d’un corps rigide............................ Degrés de liberté d’un mécanisme ............................................................ 1.4.1 Premier mode de calcul ..................................................................... 1.4.2 Second mode de calcul ...................................................................... 2. 2.1 Changements de coordonnées directs .............................................. Modèle géométrique direct ........................................................................ 2.1.1 Structures arborescentes ................................................................... 2.1.2 Robots manipulateurs avec boucles cinématiques planes ............. 2.1.3 Robots parallèles ................................................................................ Modèle cinématique direct ......................................................................... 2.2.1 Structure de chaîne ............................................................................ 2.2.2 Structures avec des boucles simples................................................ 2.2.3 Robots parallèles ................................................................................ — — — — — — — — — 6 6 7 7 8 8 8 9 9 Changements de coordonnées inverses............................................ Modèle géométrique inverse...................................................................... 3.1.1 Structures série................................................................................... 3.1.2 Robots avec des boucles.................................................................... 3.1.3 Robots parallèles ................................................................................ Modèle cinématique inverse ...................................................................... 3.2.1 Structures série................................................................................... 3.2.2 Robots avec des boucles simples ..................................................... 3.2.3 Robots parallèles ................................................................................ — — — — — — — — — 9 9 10 10 10 11 11 11 11 Utilisation des matrices jacobiennes ................................................. Calcul des efforts statiques......................................................................... Inerties de l’organe terminal vues par l’environnement .......................... Indice de manipulabilité.............................................................................. Commande « jacobienne » ......................................................................... Commande en effort ................................................................................... 4.5.1 Retour par matrice de raideur ........................................................... 4.5.2 Commande d’impédance................................................................... Commande hybride position-force ............................................................ — — — — — — — — — 12 12 12 13 13 13 13 14 14 Commande dynamique........................................................................... Modèles théoriques de la dynamique ....................................................... 5.1.1 Équations de Newton ......................................................................... 5.1.2 Équations de Lagrange ...................................................................... Commande dynamique............................................................................... 5.2.1 Commande théorique : méthode des couples calculés .................. 5.2.2 Commande avec prédicteur............................................................... — — — — — — — 14 14 14 15 15 16 16 Conclusion ................................................................................................. — 16 2.2 3. 3.1 3.2 4. 4.1 4.2 4.3 4.4 4.5 4.6 5. 5.1 5.2 6. Pour en savoir plus........................................................................................... Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 - 3 — 3 — 3 — 4 — 5 — 5 — 5 Doc. S 7 730 S 7 730 − 1 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ________________________________________________________________________________ a maîtrise de la conception et du fonctionnement de mécanismes complexes motorisés, ou « machines », a toujours été un facteur important de progrès technologiques et parfois aussi sociaux et économiques dans divers domaines : transports, production industrielle, travaux publics, exploration et travail en milieux hostiles, imagerie médicale, etc. La conception, la fabrication et le pilotage de ces machines ont été rendus possibles grâce aux connaissances scientifiques et techniques en mécanique, thermodynamique, électrotechnique et hydraulique. Ces machines sont destinées à augmenter les possibilités de l’homme pour la rapidité de ses déplacements et de ses actions, et pour l’amplification de sa force et de son champ d’action, notamment dans l’accomplissement de tâches pénibles, dangereuses et/ou répétitives. Les fonctions généralement concernées sont : — le déplacement à plus ou moins longue distance sur terre, sur mer, dans l’air et sous l’eau ; — la « manipulation » au sens large du terme : • déplacer un outil pour saisir des objets ou de la matière, les transporter et les déposer, • exercer des efforts sur l’environnement ; — la combinaison des deux fonctions précédentes. Un robot manipulateur peut donc être considéré d’une manière générale, vu par son environnement, comme un générateur de mouvements et d’efforts dans les diverses directions de l’espace. Sur le plan des applications les plus courantes, on peut distinguer : — les robots industriels, travaillant généralement à poste fixe, de manière totalement autonome, et dont les « tâches » sont programmées sur le site par apprentissage, ou bien hors ligne en utilisant un langage spécialisé ou des moyens de conception assistée par ordinateur ; — les robots pour l’intervention et l’exploration en milieu hostile et mal connu (nucléaire, planétaire, sous-marin ) qui sont le plus souvent téléopérés mais peuvent être dotés d’une certaine autonomie locale compte tenu des difficultés relatives aux délais des transmissions et à leur faible bande passante. Les outils de la « réalité virtuelle » qui émergent dans de nombreux laboratoires et industries sont susceptibles d’aider les opérateurs dans la commande des manipulateurs dont sont dotés les véhicules robotisés. Dans tous ces cas où les robots manipulateurs ne sont pas directement téléopérés et doivent posséder une certaine autonomie d’action, leurs systèmes de commande automatique doivent connaître et compenser les imprécisions éventuelles puisque l’opérateur humain n’est pas directement dans la boucle d’asservissement, pour s’adapter aux caractéristiques des machines et de leur environnement. Pour cela, il est nécessaire de passer par une modélisation mathématique précise de la géométrie et de la dynamique des bras manipulateurs. Cet article a pour but de familiariser le lecteur avec les principales notions nécessaires à l’analyse de la morphologie d’un robot et de ses capacités de travail, afin de choisir et d’utiliser au mieux un robot industriel du commerce ou même de concevoir une machine particulière mieux adaptée à ses besoins. Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 L tiwekacontentpdf_s7730 v1 Le lecteur est invité à se reporter à l’article [R 7 734] traitant de l’application de la réalité virtuelle à la robotique, et plus généralement aux articles [R 7 700] et suivants du présent traité consacrés à la robotique. S 7 730 − 2 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS 1. Morphologie Un robot manipulateur est constitué par l’assemblage de corps (segments) rigides en première approximation, et articulés entre eux. Les articulations peuvent être motorisées (actives) ou non (articulations passives). 1.1 Graphe du mécanisme Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Pour décrire la topologie du mécanisme constituant le robot manipulateur, on lui associe un graphe dont les sommets sont les corps constitutifs et les arcs représentent les assemblages entre ces corps. Deux corps extrêmes ont des rôles particuliers : — la base, qui est fixée au sol ou sur un véhicule ; — l’organe terminal qui porte l’outil (ou effecteur). tiwekacontentpdf_s7730 v1 En partant de la base pour aller vers l’effecteur, on pourra distinguer : — les structures série, ou sérielles, pour lesquelles le graphe est arborescent, la base étant la racine et les feuilles étant les organes terminaux (dans le cas général où il y en aurait plusieurs) (figure 1 par exemple) ; — les structures parallèles pour lesquelles toutes les chaînes partent de la base pour aller vers l’organe terminal [4] (figure 2 par exemple) ; — les structures mixtes, présentant des boucles cinématiques, par exemple des parallélogrammes ou des motorisations par vérins linéaires (figure 3 par exemple). Base attachée à un porteur Corps des vérins 1.2 Articulations ou « liaisons » On admettra qu’un corps solide rigide isolé dans l’espace à trois dimensions possède six degrés de liberté : trois composantes d’un vecteur position et trois composantes d’orientation. Les divers formalismes pratiques utilisés pour quantifier ces degrés de liberté sont précisés au paragraphe 1.4. Quand on relie un tel corps à un autre, au moyen de « liaisons » mécaniques, il perd de sa mobilité par rapport au second. On peut imaginer diverses combinaisons de translations et de rotations, dont quelques-unes sont représentées sur la figure 4. Tiges des vérins Pince Figure 2 – Exemple de structure parallèle. Poignet à compliance active développé par C. Reboulet (doc. ONERA/CERT, Toulouse) Poignet Avant-bras Dispositif d'accouplement Bras Avant-bras Bras Épaule Base Base Figure 1 – Exemple de structure série. Bras (doc. Adept) Figure 3 – Exemple de structure mixte. Robot avec boucles (doc. Afma Robots) Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 3 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS tiwekacontentpdf_s7730 v1 ________________________________________________________________________________ a 5 b 4 c 4 d 4 e 3 f 3 g 3 h 2 i 2 j 1 k 1 l 1 Le chiffre indique le nombre de degrés de liberté de la liaison Figure 4 – Liaisons. Paires cinématiques Dans l’assemblage de robots manipulateurs, les liaisons les plus courantes sont : — la liaison rotoïde R (ou pivot) à un degré de liberté (figure 4j ) ; — la liaison prismatique P (ou glissière) à un degré de liberté (figure 4k ) ; — la liaison rotule S (sphérique) à trois degrés de liberté, équivalente à R3 (figure 4f ) ; — la liaison cardan U (joint universel) à deux degrés de liberté, équivalente à R2 (figure 4i ). Nous avons également représenté des liaisons unilatérales (figures 4a, c et g ) qui ne servent pas à proprement parler dans l’assemblage de mécanismes, mais peuvent représenter localement (une surface est approchée par son plan tangent) des relations temporaires entre l’organe terminal du robot et son environnement. D’autres liaisons, comme le roulement sans glissement, équivalent à un mouvement plan sur plan, existent dans les cames et les réducteurs à engrenages (figure 5). Comme dans le système visécrou (figure 4l ), elles ne rajoutent pas de degré de liberté puisque l’on peut écrire, en coordonnées polaires : r1 dθ1 + r2 dθ2 = 0 S 7 730 − 4 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 avec r 1 + r 2 = constante (1) r1 r2 θ2 Origine de θ2 θ1 Origine de θ1 Figure 5 – Came ou engrenage 1.3 Torseurs cinématique et dynamique d’un corps rigide Le mouvement d’un corps solide rigide est déterminé à chaque instant par le vecteur vitesse V d’un de ses points (son centre Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS d’inertie G par exemple) et par son vecteur vitesse instantanée de rotation V (le même pour tous les points du solide). L’ensemble des forces extérieures qui agissent sur lui peut être réduit à un vec- Base Pivot teur force résultante F et à un vecteur moment résultant M . Les équations de la dynamique du corps solide (équations de Newton) s’écrivent, dans un repère fixe (galiléen) : dV m ---------- = F dt d ------ I • V = M dt Bras (2) Cardan Avant-bras Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 avec tiwekacontentpdf_s7730 v1 m masse du corps, I son tenseur d’inertie (d’ordre 2) au point de référence considéré. Cardan Corps terminal (« nacelle ») Le point • symbolise le produit « contracté » de tenseurs. Dans le cas où le corps est soumis à une liaison, il perd des degrés de mobilité. Si l’on suppose la liaison parfaite, c’est-à-dire sans frottement, les composantes des efforts aux contacts (forces et/ou moments) sont donc localement orthogonales aux vitesses. Cette remarque nous permet de tester la validité d’un mécanisme (§ 1.4). Figure 6 – Concept simplifié du robot Delta (d’après [4]) Bras 1.4 Degrés de liberté d’un mécanisme On suppose que les conditions théoriques nécessaires à un mécanisme complexe sont : 1. il y a le nombre de moteurs actifs nécessaire et suffisant ; 2. il n’y a pas de contrainte interne non calculable (le mécanisme n’est pas hyperstatique). Nota : on verra dans les calculs de changement de coordonnées que ces conditions peuvent exceptionnellement être transgressées dans quelques configurations « singulières » du mécanisme. 1.4.1 Premier mode de calcul Soit N le nombre de degrés de liberté recherché (c’est le nombre nécessaire de moteurs). On a : N = avec ∑ Ni liaisons i – 6b (3) Ni nombre de degrés de liberté de la liaison i, b nombre de boucles cinématiques (nombre de corps qu’il faut couper pour rendre le graphe du mécanisme arborescent). 1.4.2 Second mode de calcul Soit n le nombre de corps mobiles. Les équations de Newton contiennent donc 6 n inconnues, par exemple les efforts à exercer pour obtenir des mouvements donnés (ou tout simplement l’équilibre statique). Toutefois, à chaque articulation i, N i composantes du tenseur des efforts sont nulles d’après l’hypothèse de nonfrottement. Il reste donc N inconnues que l’on doit imposer par des moteurs, avec : N = 6n – ∑ ( 6 – Ni ) liaisons i (4) Avant-bras Figure 7 – Concept original du robot Delta (d’après [4]) Exemple 1 : un des concepts du robot parallèle Delta [4] (figure 6). Il possède trois articulations rotoïdes, ou pivots, et six joints de cardan, soit au total quinze degrés de liberté aux articulations. Il possède également deux boucles cinématiques : il suffit de couper deux bras par exemple pour rendre la structure arborescente. Le nombre de degrés de liberté de l’ensemble est donc égal à 15 – (6 × 2) = 3. Les mouvements du corps terminal doivent donc être assurés par trois moteurs. Dans le robot réel, ce sont les trois pivots qui sont motorisés. Pour utiliser le second mode de calcul, qui donne une idée plus précise des variables à calculer pour faire par exemple une étude des contraintes et dimensionner les segments, on recense sept corps : trois avantbras, trois bras et le corps terminal. Il y a donc a priori 6 × 7 = 42 équations de la dynamique. Toutefois, dans chaque pivot, il n’y a que cinq composantes d’efforts au contact (trois composantes de la force et deux composantes du moment), et dans chaque liaison de cardan, il y en a quatre (trois composantes de la force et une composante du moment). Cela fait donc (3 × 5 + 6 × 4) = 39 inconnues des efforts transmis mécaniquement, et il reste donc bien 42 – 39 = 3 composantes de moments à motoriser. Exemple 2 : concept original du robot Delta L’avant-bras est constitué par un parallélogramme (figure 7) dont chaque biellette est fixée par des rotules respectivement au bras et à la nacelle. Avec l’hypothèse d’articulations sans frottement, on obtient des mouvements incontrôlables par les trois moteurs : il y a pour chaque bras treize degrés de liberté, soit trente-neuf au total. Chaque parallélogramme rajoute une boucle cinématique, il y en a donc cinq. On calcule alors N = 39 – 30 = 9. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 5 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 , MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ,,, ,,, ,,, U ________________________________________________________________________________ Zn S Zn Yn Xn Yn Xn R S a aspect bras gauche et coude bas b aspect bras droit et coude bas T R Zn Zn Yn U Xn Yn Xn Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Figure 8 – Mécanisme « un axe » avec boucles tiwekacontentpdf_s7730 v1 Cela signifie que sans frottement, chacune des six biellettes peut tourner librement autour de son axe longitudinal. Pour rendre la représentation cinématique correcte, il suffit de remplacer la liaison rotule à une extrémité par une liaison cardan. Dans le mécanisme réel, l’assemblage est plus complexe [4]. Exemple 3 : motorisations par vérins linéaires La figure 8 schématise un robot, « un axe » (qui peut être une partie d’un robot série-parallèle). Des liaisons correctes sont écrites sur la figure. Il y a au total treize degrés de liberté dans les articulations, et deux boucles, ce qui donne bien un degré de liberté pour le mécanisme : la translation active du vérin. Remarquons que pour mieux mettre en évidence cette dernière, nous avons, pour la tige du vérin et sa fixation au bras, remplacé une liaison verrou (figure 4h ) plus une liaison de cardan par une liaison prismatique plus une rotule. Sur cet exemple, on peut aussi vérifier qu’il y a cinq corps mobiles, donc trente équations, et vingt-neuf inconnues. Ces dernières peuvent donc être calculées en fonction de la seule force motrice agissant selon l’axe du vérin. Les forces de pesanteur sont en effet supposées également connues. Si la base est mobile (manipulateur embarqué sur un véhicule par exemple) avec un mouvement connu, on peut de même rajouter sur chaque corps une force d’inertie due à ce mouvement. c aspect bras gauche et coude haut Figure 9 – Divers aspects pour une même pose du bras du robot PUMA démontre qu’une même pose peut être obtenue par plusieurs configurations. Nous avons appelé aspects les classes de configurations différentes [1]. 2.1 Modèle géométrique direct Il exprime la position et l’orientation du repère de référence Routil lié à l’outil, relativement à un repère fixe — celui de la base R 0 par exemple — en fonction des variables articulaires motorisées (et asservies électroniquement) q 1 , q 2 ... qN du mécanisme. L’élément fondamental qui décrit la position et l’orientation d’un repère Ri , d’origine Oi , dans un repère Rj peut se mettre sous la forme d’une matrice de dimensions (4,4) : Xi j 2. Changements de coordonnées directs On associe à chaque corps i du mécanisme un repère orthonormé direct {Xi , Yi , Z i } noté Ri . Les repères particuliers sont d’une part celui de la base {X 0 , Y0 , Z0 } noté R0 et d’autre part celui, Rn , de l’organe terminal {Xn , Yn , Zn }. Le repère de la base occupe une position et une orientation connues par rapport à un repère fixe si le robot est à un poste fixe dans un atelier, ou lié à un véhicule porteur sur lequel la base est fixée rigidement. Le dernier repère Rn peut être aussi bien lié au dispositif d’accouplement de l’effecteur qu’à ce dernier qui lui est rigidement attaché. Sa situation instantanée s’appelle une pose. C’est l’action sur N effecteurs qui permet de situer l’organe terminal par rapport à un repère lié à la base et/ou d’exercer au moyen de cet organe des efforts sur l’environnement. On note généralement q 1 , q 2 ... qN les variables de position (angulaire ou linéaire) des effecteurs actionnant les articulations actives que nous avons recensées dans la section précédente. Ces variables définissent la configuration instantanée du mécanisme. La figure 9 S 7 730 − 6 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 d aspect bras droit et coude haut Ti = j 0 Yi j Zi Oj Oi j j (5) 1 0 0 où les composantes des vecteurs sont mesurées dans le repère Rj . Dans cette matrice (4,4), on remarque que la quatrième colonne est la représentation d’un vecteur en coordonnées « homogènes » (quatre composantes) [2]. La matrice (3,3) suivante : j Ri = X i j Yi j Zi (6) j représente la rotation entre les deux repères. Ses éléments sont les cosinus directeurs : les cosinus des angles respectifs entre les vecteurs unitaires du repère Ri et ceux du repère Rj . Pour spécifier une rotation, cette matrice présente un nombre surabondant de paramètres (neuf) qui doivent être reliés par les six contraintes exprimant que le repère est orthonormé. On peut donc en pratique ne spécifier que trois paramètres, par exemple les angles de lacet (λ ), tangage (θ ) et roulis (ρ ) par analogie avec la terminologie des pilotes de véhicules, d’avions notamment. La figure 10 montre la définition de ces angles, ce qui donne la matrice de rotation : Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS cos λ ji j Ri = sin λ ji 0 – sin λ ji cos λ ji 0 0 1 0 0 0 cos θ ji – sin θ ji – sin θ 1 0 0 ji cos θ ji cos ρ ji 0 0 1 0 0 cos ρ ji – sin ρ ji sin ρ ji = cos λ ji cos ρ ji – sin λ ji sin θ ji sin ρ ji – sin λ ji cos θ ji cos λ ji sin ρ ji sin λ ji cos ρ ji + cos λ ji sin θ ji sin ρ ji cos λ ji cos θ ji sin λ ji sin ρ ji – cos λ ji sin θ ji cos ρ ji sin θ ji cos θ cos ρ ji ji – cos θ ji sin ρ ji sin λ ji sin θ ji cos ρ ji + (7) composition des changements de repères successifs le long de la chaîne. Par exemple, pour une seule chaîne de n corps : θji //Zj 0 ρji θji Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 tiwekacontentpdf_s7730 v1 λji Oi //Yj λji Xi Figure 10 – Angles de lacet, tangage et roulis – sin θ i cos θ i i–1 Ti = n Tn Toutil (8) 0 di cos α i sin θ i cos α i cos θ i – sin α i – ri sin α i sin α i sin θ i sin α i cos θ i cos α i ri cos α i 0 0 0 1 (9) Xi Zi 2.1.2 Robots manipulateurs avec boucles cinématiques planes θi //Xi – 1 Oi αi //Zi – 1 ri Xi – 1 n –1 La variable articulaire active qi associée à l’articulation i est soit θi (articulation rotoïde), soit di (articulation prismatique). La composition des transformations élémentaires conduisant du repère Ri – 1 au repère Ri conduit à la matrice de passage (composantes exprimées dans Ri – 1) : ρji Zi – 1 1 Il est usuel de représenter les matrices de transformations qui font passer d’un corps au suivant au moyen du formalisme de Denavit et Hartenberg modifié par Khalil [2]. Chaque articulation i est alors motorisée, en pratique par un moteur linéaire ou rotatif. Il doit y avoir n moteurs. La figure 11 montre les paramètres intervenant dans la transformation. Ces paramètres sont : — αi angle entre Zi – 1 et Zi (rotation autour de Xi – 1) ; — di distance entre Zi – 1 et Zi le long de Xi – 1 ; — θi angle entre Xi – 1 et Xi (rotation autour de Zi ) ; — ri distance entre Xi – 1 et Xi le long de Zi . Yi Zi //Xj 0 Toutil = T1 T2 ... di Normale commune Oi – 1 Dans ce cas, il existe encore toujours une chaîne cinématique « principale » entre la base et l’organe terminal. C’est elle qui assure la précision de la pose. On peut encore décrire la situation de l’outil, par rapport à la base, par le produit des matrices de la chaîne principale. Mais alors certaines variables articulaires (paramètres θi ou d i de la formulation de Denavit et Hartenberg) ne sont plus directement actionnées par les « axes » qi des moteurs. Lorsque les boucles sont planes, il est aisé de calculer les variables articulaires en fonction des qi et de porter ce résultat dans les matrices de passage de la chaîne principale. Dans l’exemple 3 (figure 8), il suffit d’appliquer les relations fondamentales dans un triangle pour obtenir l’orientation du bras principal en fonction de l’élongation de la tige du vérin. D’après les notations de la figure 12, on obtient alors : X S = L cos α Y = h + L sin α S 2 2 2 q = ( XS – , ) + Y S Figure 11 – Paramètres de Denavit et Hartenberg 2.1.1 Structures arborescentes On considère les chaînes qui relient la base à chaque outil. Dans le repère de la base, la position et l’orientation de ce dernier s’obtiennent par un produit de matrices (4,4), correspondant à la d’où q = 2 2 2 L + , + h – 2 L ( , cos α – h sin α) (10) Inversement, il nous faut α pour en déduire l’angle articulaire θ. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 7 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 , MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ,,, ,,, ,,, Y θ h , α ________________________________________________________________________________ ticiens préfèrent inverser le modèle géométrique inverse qui est, lui, relativement facile à obtenir pour une structure parallèle, quand les « bras » ne présentent pas de singularité. 2.2 Modèle cinématique direct Ce modèle décrit les vitesses de l’organe terminal en fonction des dérivées, par rapport au temps, des variables actives. La vitesse instantanée du corps solide qui constitue l’organe terminal (en supposant pour simplifier qu’il n’y en a qu’un) relativement à la base est entièrement déterminée par la vitesse : S L q X la base, et par la vitesse de rotation instantanée V outil Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 tiwekacontentpdf_s7730 v1 2 2 2 L + , +h –q , cos α – h sin α = --------------------------------------------2L (11) Pour cela, on introduit l’angle β tel que : , h sin β = ------------------------ et cos β = -----------------------2 2 2 2 , +h , +h 2 2 L + , +h –q sin ( β – α ) = --------------------------------------------2 2 2L , + h (12) qui ne peut avoir une solution donnant α que si la fraction du second membre est comprise entre – 1 et + 1. On voit donc qu’un cas limite est obtenu lorsque : (L ± q ) 2 = h 2 + , 2 Ce cas peut être facilement généralisé à une structure arborescente : il suffit de considérer chaque chaîne qui conduit de la base à un corps terminal. Les vitesses de l’organe terminal sont obtenues par composition des vitesses des corps constituant la chaîne cinématique. Si l’articulation active i est rotoïde, on a qi = θi , et alors : V i = V i – 1 + q̇ i Z i 0 0 0 ˙ ˙ = O + V ∧ ( di X i – 1 + ri Z i ) Oi i i –1 0 0 2.1.3 Robots parallèles Pour positionner et orienter l’organe terminal dans l’espace, un robot parallèle doit avoir six articulations motorisées, mais il a obligatoirement en plus un grand nombre d’articulations passives. Plusieurs chaînes complexes conduisent de la base à l’organe terminal. Si l’on désire le modèle géométrique direct, on ne peut pas l’obtenir analytiquement. En effet, il faut écrire les matrices de passage de toutes les chaînes (au nombre de six) puis exprimer comme contraintes que toutes ces transformations fournissent la même pose de l’organe terminal. Cela nécessite des calculs numériques complexes utilisés uniquement dans les systèmes de CAO (conception assistée par ordinateur), et c’est pourquoi les automa- (15) 0 Si l’articulation active i est prismatique, on a qi = ri et l’on peut écrire : Vi ˙ Oi Un autre cas courant simple, qui lui ne présente pas de singularité, est la prise en compte éventuelle des transmissions (réducteurs à engrenages, courroies, câbles, etc.) entre des moteurs et les articulations commandées. Les relations entre les variables des moteurs et les variables articulaires sont alors linéaires. Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 0 Il faut noter que les composantes de ce dernier vecteur ne sont pas les dérivées, par rapport au temps, de vraies variables d’orientation, comme les angles de roulis, tangage et lacet, bien qu’elles leur soient liées [1]. Il en est de même des dérivées des cosinus directeurs de la matrice d’orientation de l’organe terminal. Le choix de la vitesse instantanée de rotation permet dans un premier temps de s’affranchir d’un quelconque ensemble de variables d’orientation. (13) correspondant théoriquement aux positions du vérin agissant selon l’axe qui porte le segment de longueur L. Dans de telles positions le mouvement de la tige du vérin est impossible. En pratique, les butées du mécanisme font que l’on ne se trouve pas dans de tels cas. Toutefois, ce problème se posera de manière encore plus cruciale dans les robots parallèles [4]. S 7 730 − 8 = Vn 2.2.1 Structure de chaîne On doit donc avoir : 2 0 de cet organe terminal. On l’obtient théoriquement à partir de : 2 (14) 0 du point de référence de l’organe terminal par rapport au repère de Figure 12 – Résolution d’une boucle de l’exemple 3 (figure 8) 2 ˙ dO0Ooutil O outil = --------------------------dt 0 0 = Vi – 1 ˙ = O i –1 0 0 (16) + q̇ i Z i 0 Les équations (15) et (16), appliquées successivement depuis la base jusqu’à l’extrémité de la chaîne, permettent d’exprimer les vitesses de l’organe terminal en fonction des dérivées des variables de configuration. Sous forme matricielle, on a : ˙ On Vn avec = J 0 ( Q ) Q˙ (17) 0 J0 matrice de dimensions (6,n ), c’est-à-dire (6,6) pour un robot non redondant, Q vecteur-matrice colonne (n ,1) dont les composantes sont les qi . Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS La matrice J 0 est fonction des qi puisque les équations qui permettent de calculer les vitesses dans le repère de la base font intervenir les matrices de passage de configuration. i –1 0 – V Z0 VY 0 V Z0 0 – VX0 – V Y0 V X0 0 VX0 Vn avec 0 = VY0 (19) V Z0 Si l’on veut maintenant calculer les dérivées, par rapport au temps, de coordonnées opérationnelles mesurables, par exemple les coordonnées cartésiennes du point de référence de l’organe terminal et les angles de roulis, tangage et lacet de son repère de référence, il faut exprimer en particulier les relations entre la Puisqu’une matrice de rotation est orthogonale, on en déduit les expressions des composantes de la vitesse angulaire par la formule : 0 0 0 –1 0 T Ṽ = R˙ R = R˙ R (20) vitesse angulaire Vn où l’exposant T dénote la transposition de matrice. La relation (7) est l’expression d’une matrice de rotation en fonction des angles de roulis, tangage et lacet (§ 2.1). Il suffit de la dériver par rapport au temps et d’appliquer l’équation (20) pour obtenir les relations entre les dérivées des variables d’orientation et les dérivées des variables articulaires. Dans le cas présent où l’on s’intéresse au corps terminal, on a : et les dérivées des variables d’orientation. 0 0 0 R˙n = Ṽn Rn Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Ṽn = Ti qui contiennent ces variables On peut commencer simplement par faire intervenir la matrice des cosinus directeurs et sa dérivée. On démontre [1] que l’on peut écrire en particulier pour le corps n : tiwekacontentpdf_s7730 v1 où l’on a noté : 0 Rn = (18) n n n n n cos λ 0 n cos ρ 0 n – sin λ 0 n sin θ 0 n sin ρ 0 n – sin λ 0 n cos θ 0 n cos λ 0 n sin ρ 0 n + sin λ 0 n sin θ 0 n cos ρ 0 n sin λ 0 n cos ρ 0 n + cos λ 0 n sin θ 0 n sin ρ 0 n cos λ 0 n cos θ 0 n sin λ 0 n sin ρ 0 n – cos λ 0 n sin θ 0 n cos ρ 0 n – cos θ 0 n sin ρ 0 n sin θ 0 n Les trois premières composantes d’un vecteur « vitesse des coordonnées opérationnelles » sont tout naturellement les composantes de la vitesse du point de référence terminal dans le repère de la base. On obtient ainsi finalement une relation de la forme : ˙ (22) X˙ = J (Q ) Q ( 6, n ) ( n ,1 ) ( 6,1 ) J (Q ) est ainsi la matrice jacobienne (cf. article Calcul différentiel [AF 55] dans le traité Sciences fondamentales) de la fonction vectorielle f qui définirait un modèle géométrique direct de la forme : X = f (Q ) (23) (21) cos θ 0 n cos ρ 0 n 2.2.3 Robots parallèles Comme le modèle géométrique direct, le modèle cinématique direct ne s’obtient pas simplement pour de tels mécanismes. On préfère inverser le modèle cinématique inverse qui est, lui, relativement facile à obtenir (§ 3.1.3). 3. Changements de coordonnées inverses quand il existe explicitement. 2.2.2 Structures avec des boucles simples Comme il a été écrit plus haut (§ 2.1.2), il existe une chaîne principale qui conduit de la base vers l’extrémité, mais alors certaines articulations de cette chaîne sont passives (non motorisées directement). Il est cependant possible, au paragraphe 2.2.1, d’écrire un modèle cinématique direct en fonction de toutes les variables articulaires, motorisées ou non, de la chaîne principale, puis d’utiliser les relations entre les variables des articulations passives et les coordonnées qi motrices, ainsi que les dérivées, pour « éliminer » les premières et obtenir une matrice jacobienne comme dans l’équation (22). Prenons l’exemple simple de boucles planes déjà vu (§ 2.1.2), et introduisons les paramètres de dimensions (voir figure 12). La variable active est la longueur q du vérin et la variable passive de la chaîne principale est par exemple l’angle θ. Ce dernier est égal à l’angle α plus un angle constant. Le repère {X, Y } est par exemple un repère local. La relation (10) : q = 2 2 L’organe terminal d’un robot manipulateur doit effectuer des mouvements et/ou exercer des efforts dans un repère qui est lié à l’espace opérationnel (l’atelier). L’opérateur qui programme un robot par des moyens évolués [5] lui fournit des instructions définies dans cet espace. Par contre, même s’il est doté de capteurs extérieurs (de position, de force) permettant de l’asservir localement à la tâche, le robot a ses asservissements élémentaires bouclés sur les informations issues de ses capteurs internes (articulaires) et mesurant plus ou moins directement les qi et/ou les γ i . L’armoire de commande du robot doit donc contenir un module (un programme implanté sur calculateur numérique) qui calcule les consignes à envoyer aux asservissements « articulaires » en fonction des valeurs des variables de position, d’orientation et/ou d’efforts désirées dans l’espace opérationnel. Ces calculs font appel aux modèles théoriques des transformations de coordonnées inverses. Une condition nécessaire d’existence de ces modèles (nombre fini de solutions) est que le robot ne soit pas redondant vis-à-vis de la tâche : le nombre de variables opérationnelles spécifiées est égal à N, nombre de degrés de liberté du mécanisme. 2 L + , + h – 2 L ( , cos α – h sin α) a été utilisée pour obtenir le modèle géométrique direct (23). Par dérivation de ce dernier, on obtient l’expression de dθ en fonction de dq , en dehors des cas limites (singularités ). En effet, on a dans ces cas : cos(β – α ) = 0, et dθ /dq = dα /dq n’est pas défini. 3.1 Modèle géométrique inverse En supposant les asservissements parfaits, on a égalité de leurs sorties q i et des consignes de position correspondantes. Il s’agit ici de calculer, si elle existe, l’application réciproque f –1 de celle du modèle géométrique direct (23). Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 9 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ________________________________________________________________________________ Aucune solution réelle n’existe en dehors de ce que l’on nomme l’espace de travail du robot [6]. De plus, il peut exister plusieurs solutions en nombre fini (voir figure 9) ou en nombre infini dans les singularités de la matrice jacobienne J associée à f. Y En dehors des singularités, et sans tenir compte des butées mécaniques, il est impossible dans le cas général de savoir si un mécanisme donné est soluble et quel est le nombre de solutions quand il l’est. On peut toutefois avoir des informations dans des cas simples en étudiant analytiquement le déterminant de la matrice jacobienne : dét J [1]. Pour un robot série à six axes rotoïdes, dont les trois axes du poignet sont concourants, il peut y avoir théoriquement trente-deux solutions différentes Q (aspects) pour une pose donnée. Point de référence M L S θ S R P(q1) P(q2) R P(q3) U U X 3.1.1 Structures série Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Pour un grand nombre de robots manipulateurs dont les trois axes du poignet sont concourants, il est possible de résoudre analytiquement le problème inverse par étapes. tiwekacontentpdf_s7730 v1 La position du point de référence de l’outil et l’orientation de l’outil sont données relativement au repère atelier. À un déplacement constant près, on peut considérer ici que ce dernier est confondu avec le repère de la base du robot. Les données sont 0 ainsi [ O outil ] 0 et Routil . Par ailleurs, la situation de l’outil dans le repère de référence du corps 6 est fixe. On en déduit les coordonnées du point d’intersection O4 = O5 = O6 des axes du poignet : 0 [O 6 ] 0 = [O outil ] 0 – Routil [O outil – O 6 ]6 (24) La position du poignet permet alors de résoudre le « bras » et d’obtenir, en dehors des cas singuliers, la (ou les) solution(s) admissible(s) pour q 1 , q 2 et q 3 . À chaque solution correspond une 0 matrice de rotation R3 . Comme l’on a : 0 0 3 6 Routil = R3 R6 Routil (25) on en déduit : 3 3 0 R6 = R0 Routil outil R6 (26) Cette dernière matrice ne fait intervenir que q 4 , q 5 et q 6 , que l’on calcule alors. Nota : on trouve dans la référence [2] les solutions pour un grand nombre de structures de robots industriels série du commerce. 3.1.2 Robots avec des boucles On calcule alors le modèle géométrique inverse pour la chaîne principale, puis on remplace les coordonnées articulaires passives par leurs expressions en fonction des variables motorisées, comme au paragraphe 2.1.2. La présence de boucles cinématiques augmente le nombre de solutions théoriques et par là même la complexité des calculs. En pratique, on ne retient que les solutions techniquement réalisables. Exemple 4 Dans le cas simple représenté sur la figure 12, on ne prend que la solution q > 0, et normalement le mécanisme doit être construit pour qu’il n’atteigne pas ses propres configurations singulières. La résolution du triangle est alors unique et correspond à la relation (10) où α ne diffère de θ que par un angle constant. 3.1.3 Robots parallèles Dans ce cas, la position et l’orientation de l’organe terminal qui porte l’outil sont assurées par les configurations des divers S 7 730 − 10 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 L2 L1 Figure 13 – Mécanisme parallèle à trois degrés de liberté « bras » qui y conduisent, en partant de la base. Prenons le cas d’un robot à six degrés de liberté et à six bras (par exemple celui de la figure 3). Il y a cinq boucles et donc, d’après la formule (3), la somme des degrés de liberté de l’ensemble des articulations des bras est égale à 6 + (6 × 5) = 36. Pour que le système soit correctement défini, il faut six degrés de liberté par bras, que les bras soient identiques ou non, et chacun d’entre eux peut alors être résolu par la méthode donnée au paragraphe 3.1.1. Nota : un exemple de résolution, celle du robot Delta à trois degrés de liberté, est donné dans l’article Robots parallèles [R 7 710] du présent traité. Le principe est valable dans le cas général. Ici encore, on peut avoir des singularités. Nous détaillerons ce problème à propos des modèles cinématiques (§ 3.2). D’autre part, des contraintes technologiques peuvent éliminer des solutions, qui sont hors du volume de travail du robot. Considérons l’exemple simple de la figure 13. Ce mécanisme comporte : — trois articulations prismatiques actives P (vérins) ; — deux rotoïdes R qui assurent, avec la première prismatique, la précision de positionnement et d’orientation de la plate-forme mobile ; — deux rotules S ; — deux cardans U. L’ensemble comporte donc N = 15 – 6 × 2 = 3 degrés de liberté. On voit en effet que normalement, on peut positionner (point M) et orienter (angle θ ) l’axe de la plate-forme dans le plan de la figure en agissant sur les vérins. Pour simplifier l’exposé, on a noté qi la longueur totale du vérin i. q1 = q2 = q3 = 2 2 X M +Y M 2 2 ( L1 – XM ) + Y M (27) 2 ( L 1 + L 2 – X M – L cos θ ) + ( Y M + L sin θ ) 2 Ce modèle mathématique correspond à une configuration exécutable si et seulement si : qi min < q i < qi max pour i = 1,2,3 ce qui correspond à une pose de la plate-forme appartenant à l’espace de travail. On remarque toutefois que théoriquement, si par exemple YM = 0, on se trouve en singularité : si le mécanisme y arrive, aidé par la gravité par exemple, il ne peut en sortir activement et reste avec YM = 0. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS On obtient également d’autres configurations singulières quand l’axe du troisième vérin est aligné avec celui de la plate-forme. On ne peut alors pas modifier θ sans changer la position du point M. De part et d’autre d’une configuration singulière se trouvent des aspects différents. u M2 m 3.2 Modèle cinématique inverse Ce modèle est nécessaire quand on spécifie la loi de vitesse de l’organe terminal dans le repère atelier (ou plus simplement celui de la base du robot) pour en déduire les lois d’évolution des variables articulaires asservies. Le problème revient donc à inverser la matrice jacobienne J , quand c’est possible. O M1 Figure 14 – Coordonnées de Plücker Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 3.2.1 Structures série tiwekacontentpdf_s7730 v1 Dans ce cas, on a toujours besoin de calculer au préalable le modèle géométrique inverse. En effet, on a théoriquement deux façons d’obtenir le modèle cinématique inverse : — par dérivation du modèle géométrique inverse ; — par inversion de la matrice jacobienne J . On obtient ainsi, en dehors des singularités, une relation de la forme : –1 (28) Q˙ = J ( Q )X˙ avec J –1 l’inverse de la jacobienne fonction de Q . Dans un deuxième temps, il faut donc utiliser le modèle géométrique inverse pour remplacer les qi par leurs valeurs numériques ou, quand c’est possible, par leurs expressions en fonction de X . Dans le cas de robots série, les singularités de la matrice jacobienne (solutions de l’équation dét J = 0) correspondent à des pertes de mobilité : les mouvements admissibles appartiennent à des sous-espaces de l’espace des vitesses, normalement de dimension 6 pour la majorité des robots. On peut éviter, soit par construction soit par « butées électroniques », d’atteindre les configurations singulières. De plus, on peut prévoir dans le langage de programmation, de spécifier l’aspect dans lequel doit s’effectuer le mouvement. C’est le cas du langage VAL [5] pour le robot PUMA dont nous avons représenté les divers aspects du bras sur la figure 9. Il y a en plus les singularités du poignet dont deux axes peuvent être alignés : on peut donc avoir de part et d’autre de cette singularité retournement ou non du poignet (flip ou no flip dans le langage de programmation). 3.2.2 Robots avec des boucles simples On a étudié ce cas pour le modèle géométrique inverse, avec l’exemple détaillé de la boucle de la figure 12. On peut traiter de tels robots comme les robots série, en considérant la chaîne principale, puis remplacer dans l’expression de dX /d t les dérivées des variables articulaires passives de la chaîne principale par leurs expressions en fonction des dérivées dqi /dt des variables actives. Ces dernières expressions sont obtenues en dérivant les relations géométriques dans les boucles. Une autre façon élégante fait appel aux coordonnées de Plücker [3]. Tout actionneur i associé à une variable active qi produit une force ou un couple γ i le long ou autour de l’axe correspondant. Cet effort, si le mécanisme est supposé sans frottement, contribue au vecteur F des efforts exercés par le corps terminal sur son environnement. Considérons le modèle différentiel inverse que l’on recherche. Il est de la forme : dQ = G dX avec G (29) l’inverse de la matrice jacobienne du modèle direct. Appliquons le principe des travaux virtuels : pour cela, on considère des déplacements virtuels dQ et dX compatibles avec les contraintes du mécanisme et l’on écrit l’égalité des travaux des forces pour ces déplacements : FT dX = G T d Q (30) donc FT dX = G T G dX (31) d’où F = GT G (32) Il suffit donc de savoir exprimer la force et le moment résultant au niveau de l’organe terminal en fonction des efforts actifs pour obtenir la matrice G. On considère pour cela les coordonnées de Plücker d’une droite (figure 14). Soit, dans l’espace à trois dimensions, une droite définie par deux de ses points distinct M1 et M2 , et O l’origine d’un repère de référence R0 . On considère deux vecteurs qui sont des invariants de la ligne : le vecteur unitaire u son moment par rapport à O : m = OM ∧ u où M est un point de la droite. Les composantes de ces deux vecteurs fondamentaux s’obtiennent à partir des coordonnées de Plücker de la droite. Ces dernières sont les six composantes du vecteur colonne : Dans la fabrication du mécanisme, on fait en sorte que les boucles n’introduisent pas de singularités propres. Comme dans le cas d’un robot à structure de chaîne, les configurations singulières sont obtenues quand le déterminant de la matrice jacobienne est nul. U = M1 M2 R0 (33) OM 1 ∧ OM 2 R0 U V = ----------------------- = u M1 M2 m R0 On a en effet : 3.2.3 Robots parallèles Une première façon d’obtenir le modèle cinématique inverse des robots parallèles consiste à dériver le modèle géométrique inverse. (34) Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 11 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ________________________________________________________________________________ On peut associer un tel vecteur à l’axe de chaque articulation motorisée. On obtient ainsi pour un robot à six axes V1 à V6 . On va montrer que l’on a, dans le cas de moteurs linéaires [3] : GT = [V1 ... V6] La matrice jacobienne J et son inverse G ou J –1 ont des applications fondamentales dans l’analyse d’un mécanisme et dans sa commande. Le système mécanique étant en équilibre statique, on a : i=6 ∑ γ i ui (35) =F i=1 4.1 Calcul des efforts statiques i=6 ∑ OOi ∧ γ i ui =M (36) i=1 où O est le point de référence choisi. Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 En notations matricielles, les équations (35) et (36) donnent : tiwekacontentpdf_s7730 v1 4. Utilisation des matrices jacobiennes V 1 V 2 ... V 6 G = F M À partir du modèle cinématique, on peut écrire le modèle différentiel : (39) dX = J (Q )dQ Supposons que les variables qi soient directement les variables associées aux déplacements relatifs des moteurs rotatifs ou linéaires. Chacun de ces derniers exerce une force ou un couple noté γ i , d’où pour l’ensemble des degrés de liberté un vecteur des efforts G = [γ1γ2 ... γN]T. Si l’on note F le vecteur à six composantes de la force et du moment exercés par l’organe terminal sur l’environnement, le principe des travaux virtuels permet d’écrire : R0 Donc, en dehors des singularités, on a : G = J –1 = [V1 V2 ... V6]T. Considérons l’exemple simple de la figure 13. La dérivation des équations du modèle géométrique inverse (§ 3.1.3) donne : ∂ q2 ∂ q2 ∂ q2 ----------- ----------- --------- = ∂X M ∂Y M ∂ θ YM ------------------------------0 2 2 XM + Y M YM ------------------------------------------------------0 2 2 ( L1 – XM ) + Y M Y M + L sin θ L sin θ ( L 1 + L 2 – X M ) + LY M cos θ -------------------------------------------------------------------------------------------------------------------------------q3 q3 (37) 0 L cos θ + X M – L 1 – L 2 -----------------------------------------------------------q3 Y M + L sin θ ------------------------------q3 L cos θ ^ L sin θ L cos θ + X M – L 1 – L 2 -----------------------------------------------------------q3 Y M + L sin θ ------------------------------q3 - (42) En utilisant le modèle différentiel inverse d Q = J – 1 d X , on obtient : 1 T –T –1 (43) E p = --- d X J KJ d X 2 Si maintenant on considère les coordonnées de Plücker des axes des vérins, en se limitant aux composantes non nulles (deux pour le vecteur unitaire dans le plan de la figure et une pour son moment le long de l’axe perpendiculaire à ce plan) et en choisissant M comme point de référence, on obtient bien : XM XM – L1 ---------------------------q1 q2 Y YM , V = M ,V = V 1 = ------2 3 ------q 1q 2- Avec les matrices jacobiennes, on peut également définir une « impédance » (raideur) du robot manipulateur vu par l’environnement. Imaginons que les raideurs au niveau des moteurs définissent une matrice K. Sans tenir compte de la pesanteur, l’énergie potentielle du mécanisme, pour un changement de configuration virtuel dQ , est de la forme : 1 T E p = --- dQ K dQ 2 2 2 ( L 1 + L 2 – X M – L cos θ ) + ( Y M + L sinθ) pour alléger l’écriture. Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 (41) et les singularités à considérer pour obtenir F sont donc ici celles de G. Nota : dans la troisième ligne, on a écrit q3 au lieu de S 7 730 − 12 F = J –T G F = GT G ∂ q 3 ∂ q 3 ∂q 3 ----------- ----------- --------∂ X M ∂ Y M ∂θ 0 (40) d’où : qui donne la répercussion des efforts moteurs sur l’environnement, en dehors des singularités. Pour un robot parallèle, on avait au paragraphe précédent démontré directement ces formules. Cependant on avait obtenu la relation (32) : ∂ q1 ∂ q1 ∂ q1 ----------- ----------- --------∂X M ∂Y M ∂ θ XM ------------------------------2 2 XM + Y M –L1 – XM ------------------------------------------------------2 2 ( L1 – XM ) + Y M L cos θ + X M – L 1 – L 2 --------------------------------------------------------------q3 F T d X = G T dQ (38) Donc Kext = J –TKJ –1 apparaît comme la matrice de raideur du mécanisme vu depuis l’espace opérationnel. 4.2 Inerties de l’organe terminal vues par l’environnement Nous montrons que la matrice jacobienne intervient également dans le calcul de l’inertie du robot comme si un opérateur extérieur essayait de le déplacer (l’accélérer) en agissant sur son organe terminal, si les liaisons étaient idéalement sans frottement. En effet, pour tout système mécanique, l’énergie cinétique Ec est une fonction quadratique des vitesses, qui peut s’exprimer en fonction des vitesses des variables qi : 1 T E c = --- Q̇ A ( Q ) Q̇ 2 Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle (44) Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS avec A (Q ) matrice (n,n ) symétrique définie positive dépendant des masses et des inerties de chaque corps mobile, fonction de la configuration instantanée Q du mécanisme. (dXd )k En utilisant le modèle cinématique inverse, quand il existe, on obtient : 1 T –T –1 (45) E c = --- Ẋ J ( Q ) A ( Q ) J ( Q ) Ẋ 2 + Σ JT (Qk ) ( Qd ) k – d Qk Robot et servos Q k J ( Qk ) La matrice J –T(Q ) A (Q )J –1(Q ) apparaît donc comme une matrice de masses et d’inerties généralisées dans l’espace opérationnel. À partir du repos, les capacités d’accélérations du robot vues dans cet espace seront d’autant mieux isotropes que translation et rotation sont mieux découplées, l’idéal étant que : Kv Figure 15 – Commande jacobienne Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 1. la matrice soit de la forme : tiwekacontentpdf_s7730 v1 m 0 0 I 4.4 Commande « jacobienne » 2. les valeurs propres de [m ] soient égales, et les valeurs propres de [ I ] soient égales. Comme la matrice dépend de la configuration Q, ces conditions ne peuvent jamais être satisfaites dans tout le volume de travail, mais éventuellement dans quelques configurations particulières. Cette analyse permet au programmeur du robot de choisir des configurations préférentielles quand il désire obtenir une accélération de l’organe terminal particulièrement importante dans telle ou telle direction de l’espace. Dans une commande par calculateur numérique, ce dernier « bloque » la commande pendant chaque période d’échantillonnage de durée T. Les informations sur la configuration Q, provenant de capteurs, sont échantillonnées avec la même période. Soit (dXd )k la variation de pose « désirée » à l’instant kT où la configuration est Qk . D’une manière idéale, d’après le modèle différentiel, il doit en résulter une variation de configuration dQk telle que : (dXd )k – J (Qk )dQk = 0 Pour essayer de réaliser cette condition, on cherche à minimiser la fonction d’erreur : 1 f = --- ( d X d ) k – J ( Q k )d Q k 2 4.3 Indice de manipulabilité Pour un robot série dans une configuration singulière, il y a perte de degrés de mobilité de l’organe terminal puisqu’alors le vecteur d X de ses déplacements élémentaires n’appartient plus à l’espace des opérations de dimension 6, mais à un sous-espace de dimension égale au rang de la matrice jacobienne J. On a pu ainsi définir un indice de manipulabilité w (Q ), nul pour les configurations singulières, par : w(Q) = T dét [ J ( Q ) J ( Q ) ] (47) On peut définir des ellipsoïdes de manipulabilité qui traduisent la facilité qu’a le robot à engendrer une vitesse linéaire et angulaire dX /dt dans les directions de l’espace opérationnel. Ils ont pour équation : dXT(JJT)–1dX = constante (48) Les longueurs des demi-axes de ces (hyper)ellipsoïdes sont proportionnelles aux racines carrées des valeurs propres de JJ T. On voit qu’il y a dualité avec des ellipsoïdes d’efforts (ces derniers étant perpendiculaires aux déplacements dans des déplacements virtuels sans frottement respectant les contraintes) qui auraient pour équation : FTJJTF = constante T ( d X d ) k – J ( Q k ) dQ k (51) L’application de la méthode du gradient à la minimisation de cette fonction conduit à l’application des variations suivantes des consignes aux asservissements articulaires : (d Qd )k + 1 = dQ k + K v J T (Qk)[(dXd)k – J (Qk )dQk ] (52) ce qui donne un schéma théorique représenté sur la figure 15. Kv est une matrice de gains. Nota : la méthode a été donnée à titre didactique, car il est souvent possible de calculer l’inverse de la matrice jacobienne, mais on verra intervenir ce type de boucle dans les commandes en effort et hybrides. (46) Pour un robot non redondant, n = 6 et J est une matrice carrée. L’expression de l’indice de manipulabilité est alors : w ( Q ) = dét J ( Q ) (50) (49) En effet, les valeurs propres de (JJ T)–1 sont les inverses de celles de JJ T. Il en résulte qu’un robot ne peut pas simultanément se déplacer à la vitesse optimale et exercer un effort maximal dans la même direction [2]. 4.5 Commande en effort Les plus classiques sont les commandes dites « par retour d’effort explicite ». Dans ce cas, une mesure des efforts entre l’extrémité du robot et l’environnement vient corriger les consignes des asservissements articulaires. 4.5.1 Retour par matrice de raideur Quand le robot est commandé en position dans l’espace opérationnel, on peut lui assurer une certaine compliance (inverse de la raideur) vis-à-vis de l’environnement. Soit F le vecteur des efforts mesurés dans l’espace opérationnel, on effectue une petite correction d Xd de la consigne de pose selon la loi : dXd = KF F avec KF (53) inverse d’une matrice de raideur. On peut avoir des problèmes d’instabilité avec une telle loi, selon les valeurs des gains (coefficients de la matrice de compliance) quand la variation de déplacement conduit à quitter le contact. Ce dernier est ensuite recherché par les asservissements de position, des efforts sont à nouveau mesurés, et ainsi de suite. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 13 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS Le choix des directions de l’espace opérationnel ainsi commandées s’effectue par une matrice « de sélection » diagonale, de dimensions (6,6), dont les éléments sont constitués de 0 et/ou de 1. Les efforts commandés aux articulations par les moteurs sont : J (Q) • X • Xd ________________________________________________________________________________ G = LpS (Xd – X ) + Lf (1 – S )(Fd – F ) – + Kv + Kp Q – Lp et Lf respectivement les lois de commande en position et en effort de l’espace opérationnel à l’espace articulaire. Elles font donc intervenir les matrices J –1 (ou G ) et J T. • Q + Xd JT (Q) + (56) avec 1 matrice unité (6,6), La figure 17 représente le schéma de principe de la commande hybride. Robot X X Figure 16 – Commande d’impédance Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 5. Commande dynamique tiwekacontentpdf_s7730 v1 Transformation de coordonnées X – Xd S + Consignes dans l'espace opérationnel Fd + F Q Robot 1–S – Commande en position + transformation inverse + Un robot manipulateur est une structure mécanique complexe dont les inerties par rapport aux axes articulaires varient non seulement en fonction de la charge terminale, mais aussi en fonction de la configuration. Les effets de la pesanteur varient également avec cette dernière. Quand les articulations (les « axes ») sont actionnées par l’intermédiaire de forts rapports de réduction, l’inertie vue par les moteurs varie peu. En effet, l’inertie de la charge ramenée au moteur est divisée par le carré du rapport de réduction (voir les articles sur les asservissements [R 7 500] et suivants du présent traité). Dans ces cas, les asservissements peuvent être assurés axe par axe par des réseaux classiques, PID notamment (proportionnel, intégral et dérivé). Toutefois, une augmentation des rapports de réduction entraîne une perte de rendement et un surdimensionnement des moteurs. + Commande en effort + transformation inverse Efforts mesurés Pour des motorisations avec de faibles rapports de réduction ou même « à entraînement direct » (direct-drive ), les moteurs doivent compenser les variations des forces d’inertie et de gravité fonctions de la configuration, et des commandes non linéaires sont alors intéressantes pour assurer des performances constantes dans toutes les conditions de fonctionnement. Une autre possibilité est d’utiliser un mode de commande robuste, par exemple les systèmes dits « à structure variable », mais les rapidités de réponse correspondantes sont médiocres en général. Une « commande dynamique » est un asservissement non linéaire dont les paramètres utilisent un modèle de la dynamique du robot. Transformation de coordonnées Figure 17 – Commande hybride position-force 4.5.2 Commande d’impédance Ce type de commande généralise le précédent. On peut choisir d’avoir par exemple un comportement du type ressort plus amortisseur, ce qui correspond à la relation : F n = K p ( X d – X ) + K v ( Ẋ d – Ẋ ) d’où le vecteur de commande des efforts articulaires : T G = J K ( X – X ) + K ( Ẋ d – Ẋ ) p d v 5.1 Modèles théoriques de la dynamique (54) (55) Les deux principaux formalismes utilisés pour obtenir les équations différentielles qui décrivent le comportement d’un mécanisme à plusieurs corps articulés sont le formalisme de Newton (théorèmes généraux de la mécanique classique) et celui de Lagrange. qui fait bien intervenir la matrice jacobienne. Le schéma théorique est représenté sur la figure 16. 4.6 Commande hybride position-force La commande hybride (ou mixte) consiste à contrôler simultanément les efforts dans certaines directions de l’espace, et les mouvements dans les autres. Elle est utilisée pour des opérations au contact, comme l’ébavurage de pièces, l’assemblage, etc. S 7 730 − 14 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 5.1.1 Équations de Newton Soit G i le vecteur définissant la position du centre d’inertie Gi du corps i dans un repère fixe, I i le tenseur d’inertie central (au centre d’inertie) de ce corps, et mi sa masse, V i le vecteur vitesse angulaire instantanée de ce corps, { ( Fi ) ext , ( M i ) ext } le torseur résultant (force et moment) en Gi des forces extérieures à ce corps considéré isolément. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 ________________________________________________________________________________ MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS Les équations fondamentales de la dynamique s’écrivent : ˙ d ---- dt- m i G i = ( F i ) ext d ˙ ------ I i • Vi = Ii • V i + V i ∧ I i • Vi = (M i ) ext t d (57) (58) En l’absence de forces provenant de l’environnement, les forces agissant sur ce corps sont celles au niveau de ses articulations avec les autres corps de la structure mécanique. Au point Oi , on a la force f et le moment m i . i Pour un manipulateur à structure de chaîne, en introduisant les vecteurs : Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Li = Oi Oi + 1 d = O G i i i tiwekacontentpdf_s7730 v1 Dans cette formulation des équations de la dynamique, l’effet de la pesanteur est introduit par une accélération verticale de la base du robot. Si le robot manipulateur est situé sur un véhicule dont le mouvement est connu, on peut donc également introduire les fonctions du temps correspondantes (vitesses et accélérations) dans les premières récurrences directes qui partent de la base. 5.1.2 Équations de Lagrange Les équations de Lagrange permettent d’obtenir directement les relations entre les efforts moteurs aux articulations et les mouvements. Par rapport aux équations de Newton, on perd au passage les informations sur les efforts de réaction aux articulations qui sont utiles au dimensionnement des parties mécaniques, mais n’interviennent pas dans un modèle utile à la commande automatique puisque les corps sont supposés indéformables. Il s’agit de N équations différentielles non linéaires du second ordre obtenues à partir de : d ∂L ∂L ------ -------- – -------- = γ i d t ∂q̇ i ∂q i on peut écrire : V = V i – 1 + σi q̇i Zi i ˙ ˙ O i = O i – 1 + V i – 1 ∧ L i – 1 + σi q̇i Z i (59) avec ˙ ˙ V i = V i – 1 + σi ( q̇˙i Z i + q̇i V i – 1 ∧ Z i ) ˙˙ ˙˙ ˙ O i = O i – 1 + V i – 1 ∧ L i – 1 + V i – 1 ∧ (V i – 1 ∧ Li – 1 + σ i q̇i Zi ) avec + σi ( q̇˙i Zi + q̇ i Vi –1 ∧ Zi ) –1 ∧ Zi ) ˙˙ ˙ = O i – 1 + Vi – 1 ∧ Li – 1 + Vi – 1 ∧ ( Vi – 1 ∧ L i – 1 ) + σi (q̇˙i Z i + 2 q̇i Vi σi σi σi γi « force généralisée » correspondant à la variable articulaire qi . Elle inclut toutes les forces non conservatives, c’est-à-dire non seulement la force motrice ou le couple moteur selon le cas, mais aussi les forces ou couples de frottement. Pour tous les systèmes mécaniques, l’énergie cinétique (44) est une forme quadratique des vitesses : 1 T E c = --- Q˙ A ( Q ) Q˙ 2 où A (Q ) est une matrice symétrique définie positive dépendant des masses et des inerties de chaque corps du mécanisme, et de la configuration Q. En effet : = 0 si l’articulation i est rotoïde, = 1 si l’articulation i est prismatique, = 1 – σi . i=n Les équations (61) et (62) s’appellent « récurrences avant », car pour la chaîne on part de la base pour aller vers l’extrémité. On en déduit les accélérations des centres d’inertie : ˙˙ ˙˙ ˙ G i = O i + Vi ∧ d i + Vi ∧ (Vi ∧ d i ) Ec = ˙ ˙ ∑ --2- mi Gi • Gi + --2- Vi • Ii • Vi 1 1 (67) i=1 et on a vu que les vitesses de translation et de rotation de chaque corps sont des fonctions linéaires des vitesses articulaires. (63) d’où le vecteur résultant des forces extérieures en ce point en utilisant la première équation de Newton (57). Le moment résultant s’obtient à partir de la seconde équation de Newton (58), connaissant les vitesses angulaires (59) et (60) et leurs dérivées (61) et (62). On en déduit les efforts aux articulations par des récurrences « arrière » (en partant de l’extrémité pour revenir vers la base) : f = (F ) + f i+1 i ext i m i = (M i ) ext + m i + 1 + L i ∧ f i + 1 + d i ∧ (F i ) ext (66) fonction de Lagrange, différence entre l’énergie cinétique Ec et l’énergie potentielle Ep du mécanisme, (61) (62) i = 1, ...N L = Ec – Ep (60) d’où, par dérivation : avec (64) D’autre part, l’énergie potentielle est fonction de la configuration du mécanisme (potentiel de gravité, énergie dans des ressorts compensateurs) : E p = E p (Q ) (68) Il en résulte que les équations de Lagrange peuvent s’écrire : A ( Q ) Q̇˙ + B ( Q, Q̇ ) + C ( Q ) = G (69) où le premier vecteur représente les forces ou couples d’inertie sur les articulations motorisées, le deuxième (du second degré par rapport aux vitesses) correspond aux effets centrifuges et de Coriolis, le troisième traduit les efforts dus à la pesanteur et aux ressorts. (65) Ces équations peuvent être étendues sans trop de difficultés aux structures arborescentes, il suffit de considérer tous les « successeurs » de chaque corps i (multiplication des points tels que Oi + 1 et des efforts transmis aux articulations). Pour les structures présentant des boucles et pour les robots parallèles, il suffit d’ouvrir fictivement les boucles, les équations s’appliquent puisque chaque corps est considéré comme isolé et qu’il y a autant d’inconnues que d’équations (pour une topologie correcte et hors singularités). 5.2 Commande dynamique La matrice A (Q ) n’est généralement pas diagonale (il y a des couplages inertiels entre corps) et dépend fortement de la configuration Q. De plus, aux grandes vitesses, les forces centrifuges et de Coriolis [vecteur B (Q )] peuvent être importantes. Pour ces raisons, l’utilisation d’asservissements linéaires classiques contrôlant sépa- Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 S 7 730 − 15 Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 MODÉLISATION ET COMMANDE DES ROBOTS MANIPULATEURS ________________________________________________________________________________ Pour un modèle parfait, l’évolution du vecteur des erreurs articulaires ε = (Qd – Q ) est régie par l’équation : • – Qd •• ε• + ε̇˙ + Kv ε̇ + K p ε = 0 Kv ε Q Modèle + Qd + • + Qd Robot Q + Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 tiwekacontentpdf_s7730 v1 • 5.2.2 Commande avec prédicteur – – ε• + Si le modèle est très imparfait et si les erreurs initiales sont importantes, le comportement non linéaire des erreurs (vecteur ε ) correspondant à la méthode précédente est difficilement prévisible. Bien que l’on puisse théoriquement assurer la stabilité, on risque d’avoir des dépassements non souhaités, susceptibles de provoquer des collisions entre le robot et son environnement. Pour éviter cela, au lieu d’utiliser le modèle dynamique calculé à partir de l’état mesuré du robot (positions et vitesses articulaires), on utilise celui calculé à partir de l’état désiré. On évite ainsi un rebouclage non linéaire. Les efforts au niveau des articulations sont alors calculés par : ˙˙ ] + B ( Q ,Q˙ ) + C ( Q ) (72) G = A ( Q ) [ K ( Q – Q ) + K ( Q˙ – Q˙ ) + Q Kv m •• • + Qd + ε Qd + Q Modèle + Robot Q Figure 19 – Commande dynamique calculée à partir de la consigne rément chaque axe conduit à des performances de rapidité et de précision inconstantes et difficiles à estimer étant donné le caractère fortement non linéaire du processus commandé. Cet inconvénient peut être notablement réduit par des schémas de commande automatique utilisant le modèle dynamique du mécanisme. Deux méthodes sont exposées ici. 5.2.1 Commande théorique : méthode des couples calculés Ce schéma de commande, représenté sur la figure 18, utilise une loi non linéaire pour découpler et linéariser les équations différentielles qui décrivent les mouvements articulaires. Les couples et forces de commande sont calculés à partir du modèle dynamique : ˙˙ ] + B (Q , Q˙ ) + C ( Q ) (70) G = A m ( Q ) [ K p ( Q d – Q ) + K v ( Q˙ d – Q˙ ) + Q d m m avec Qd = Qd (t ) évolution du vecteur de consigne (valeurs désirées) des asservissements articulaires, m indice indiquant que A, B et C sont estimés (modèles). Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 d p d v d d m d d m d qui correspond au schéma de la figure 19. Pour un modèle parfait et des erreurs initiales petites, on retrouve la réponse de la commande théorique. En outre, quand les mouvements désirés sont connus à l’avance, les termes correcteurs peuvent être précalculés hors ligne. Kp – S 7 730 − 16 En choisissant alors les matrices K p et K v diagonales, les erreurs articulaires sont découplées et chacune se comporte comme un système du second ordre dont on peut fixer la rapidité de réponse (choix de K p ) et l’amortissement (choix de Kv , étant donné K p ). Kp Figure 18 – Commande dynamique théorique Qd (71) La commande dynamique est expérimentée depuis longtemps dans les laboratoires de recherche. Il n’y a que peu de temps qu’elle est implantée dans les armoires de commande de certains robots industriels, grâce notamment aux performances accrues des circuits électroniques pour les calculs numériques. 6. Conclusion Les principes de modélisation des robots manipulateurs dont cet article a donné les grandes lignes sont utilisés dans les armoires de commande des robots industriels modernes, y compris la commande en effort et la commande dynamique. Les modèles sont par ailleurs engendrés automatiquement par un grand nombre de systèmes de conception et de fabrication assistées par ordinateur (CFAO) utilisés pour simuler le comportement de mécanismes complexes ou pour programmer « hors ligne » les robots industriels. Les déformations des corps constituant les mécanismes ont été toutefois négligées ici et des modèles plus compliqués seraient nécessaires pour les inclure. Les lois de commande de robots « souples » seraient également plus compliquées car elles devraient contrôler les déformations qui constituent autant de degrés de liberté supplémentaires. Pour l’instant, de tels manipulateurs ne sont pas utilisés dans l’industrie, mais comme bras téléopérés dans les navettes spatiales par exemple. Il ne faut toutefois pas exclure que de nouvelles structures se développent, comme c’est certainement le cas avec les robots parallèles, pour augmenter la rapidité des mouvements avec des bras relativement légers et peu coûteux. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 P O U R Modélisation et commande des robots manipulateurs E N par Alain LIÉGEOIS Parution : juin 2000 - Dernière validation : février 2015 - Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Professeur de l’université Montpellier-II, Institut des sciences de l’ingénieur Enseignant-chercheur au Laboratoire d’informatique, de robotique et de microélectronique de Montpellier (LIRMM) tiwekacontentpdf_s7730 v1 Bibliographie Références [1] [2] [3] LIÉGEOIS (A.). – Les Robots. Tome 7. Analyse des performances et CAO. 248 p. 1984 Hermès. DOMBRE (E.) et KHALIL (W.). – Modélisation et commande des robots. 407 p. 2e édition 1998 Hermès. MERLET (J.-P.). – Les robots parallèles. 304 p. 1990 Hermès. [6] Dans les Techniques de l’Ingénieur [4] [5] CLAVEL (R.). – Robots parallèles. R 7 710, traité Informatique industrielle, 1994. DOMBRE (E.). – Programmation des robots. R 7 720, traité Informatique industrielle, 1998. QUINET (J.-F.). – Évaluation des performances des robots industriels. R 7 800, traité Informatique industrielle, 1996. COIFFET (P.). – Réalité virtuelle : application à la robotique. R 7 734, traité Informatique industrielle, 1996. Normalisation Norme internationale (ISO) ISO 8373 1994-12-01 Robots manipulateurs industriels. Présentation des caractéristiques. NF EN 775 5-1993 Robots manipulateurs industriels. Sécurité. NF EN 29283 3-1993 Robots manipulateurs industriels. Critères de performances et méthodes d’essai correspondantes. Manipulating industrial robots-Vocabulary. Normes françaises (AFNOR) NF EN 29787/ISO 9787 11-1992 NF EN 29946/ISO 9946 11-1992 Robots manipulateurs industriels. Systèmes de coordonnées et mouvements. Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite. − © Techniques de l’Ingénieur, traité Informatique industrielle Ce document a ete delivre pour le compte de 7200045072 - imt mines albi // 193.50.45.187 Doc. S 7 730 − 1 S A V O I R P L U S GAGNEZ DU TEMPS ET SÉCURISEZ VOS PROJETS EN UTILISANT UNE SOURCE ACTUALISÉE ET FIABLE Techniques de l’Ingénieur propose la plus importante collection documentaire technique et scientifique en français ! Grâce à vos droits d’accès, retrouvez l’ensemble des articles et fiches pratiques de votre offre, leurs compléments et mises à jour, et bénéficiez des services inclus. RÉDIGÉE ET VALIDÉE PAR DES EXPERTS MISE À JOUR PERMANENTE 100 % COMPATIBLE SUR TOUS SUPPORTS NUMÉRIQUES SERVICES INCLUS DANS CHAQUE OFFRE + de 350 000 utilisateurs + de 10 000 articles de référence + de 80 offres 15 domaines d’expertise Automatique - Robotique Biomédical - Pharma Construction et travaux publics Électronique - Photonique Énergies Environnement - Sécurité Génie industriel Ingénierie des transports Innovation Matériaux Mécanique Mesures - Analyses Procédés chimie - Bio - Agro Sciences fondamentales Technologies de l’information Pour des offres toujours plus adaptées à votre métier, découvrez les offres dédiées à votre secteur d’activité Depuis plus de 70 ans, Techniques de l’Ingénieur est la source d’informations de référence des bureaux d’études, de la R&D et de l’innovation. www.techniques-ingenieur.fr CONTACT : Tél. : + 33 (0)1 53 35 20 20 - Fax : +33 (0)1 53 26 79 18 - E-mail : [email protected] SERVICES ET OUTILS PRATIQUES ACCÈS LES AVANTAGES ET SERVICES compris dans les offres Techniques de l’Ingénieur Accès illimité aux articles en HTML Téléchargement des articles au format PDF Consultation sur tous les supports numériques Enrichis et mis à jour pendant toute la durée de la souscription Pour un usage en toute liberté Des contenus optimisés pour ordinateurs, tablettes et mobiles Questions aux experts* Articles Découverte Dictionnaire technique multilingue Les meilleurs experts techniques et scientifiques vous répondent La possibilité de consulter des articles en dehors de votre offre 45 000 termes en français, anglais, espagnol et allemand Archives Impression à la demande Alertes actualisations Technologies anciennes et versions antérieures des articles Commandez les éditions papier de vos ressources documentaires Recevez par email toutes les nouveautés de vos ressources documentaires *Questions aux experts est un service réservé aux entreprises, non proposé dans les offres écoles, universités ou pour tout autre organisme de formation. ILS NOUS FONT CONFIANCE www.techniques-ingenieur.fr CONTACT : Tél. : + 33 (0)1 53 35 20 20 - Fax : +33 (0)1 53 26 79 18 - E-mail : [email protected]