SEPRO R O B O T I Q U E COMMANDE PAR RETOUR ACCELEROMETRIQUE APPLICATION A UN ROBOTS CARTESIENS 3 AXES Frédéric Colas ERT CEMODYNE (int. 1022) - ENSAM 8, Bd Louis XIV 59046 Lille Cedex barre@lille.ensam.fr 1
SEPRO R O B O T I Q U E PLANIFICATION ET SUIVI DE TRAJECTOIRES DE SYSTEMES MECANIQUES PAR L APPROCHE L DES SYSTEMES PLATS APPLICATION AUX ROBOTS CARTESIENS 3 AXES Thèse CIFRE Encadrement scientifique Encadrement industriel - Laboratoire : LAGIS - Équipe : ERT Cemodyne - Directeur de thèse : P. BORNE - Co-directeurs : P.J. BARRE J.Y. DIEULOT ZONE DEPOSE CONVOYAGE X Y Z - Entreprise : SEPRO Robotique - Correspondant industriel : H. DAVID - Responsable hiérarchique : J.C. AUGER ZONE PRESSE 2
SEPRO R O B O T I Q U E COMMANDE PAR RETOUR ACCELEROMETRIQUE APPLICATION A UN ROBOTS CARTESIENS 3 AXES 1. Contexte 2. Commande optimale linéaire quadratique d un d robot cartésien 3. Application à un modèle 2 masses-1 ressort : commande par Retour accéléromètrique 4. Validation expérimentales sur un robot cartésien 3
Contexte Industriel 6 ) m m ( n o i t i s o P 5 4 3 2 1 X Y Z 0-1 0 0.2 0.4 0.6 0.8 1 1.2 Temps (s ec) Vibrations de la charge en bout de bras pour un déplacement horizontal de 500mm But de la commande par retour accéléromètrique : Améliorer les performances globales du robot en ne changeant que très peu la structure mécanique du robot 4
Contraintes Industrielles Z X Y Moteur Y Chariot Y Moteur Z (lié au bras Z fixe) Bras Z fixe (lié au chariot Y) Poulie-courroie Principales contraintes: Comportement du robot très variable selon la position du bras (la flexion du bras et donc sa rigidité varie selon la position du robot) Bras Z Pas de retour d informations sur la charge (la position et la vitesse de la charge ne sont pas mesurées) 5
Modélisation mécanique : Éléments finis - résultats 1 er Mode de déformation du robot Torsion du cadre Y dans le plan X / Z Basculement du bras Z 6
Modélisation mécanique : Modélisation des axes ZONE DEPOSE CONVOYAGE X Y Z ZONE PRESSE x 1 x 2 U m1 k a m2 ( 1) && ( ) ( & & 1 1 2 1 2 1) ( 2) m && y = k ( y! y ) + a( y&! y& ) m y = k y! y + a y! y + u 2 2 1 2 2 1 7
Commande optimale LQ : Modèle d éd état d un d robot cartésien à n degrés de liberté [Luo et Saridis 85] LQ M x && x + NL x, x& = u t ( ) ( ) ( ) n où: x! R représente les déplacements des n degrés de liberté n u! R représente la commande envoyée par les actionneurs n n! n M ( x): R " R est la matrice d ' inertie n n n NL x, x& : R! R " R est le vecteur représentant le reste ( ) On introduit l erreur de trajectoire : ( non - linéarités, flexibilités, frottements,... ) ( ) e t ( )# ( ) ( )# &( ) ( ) ( )! x t x t "! e t " d 1 = $ % = $ % & x& d t x t ' & e2 t ' avec : x d x& d!! n R vecteur position de références n R vecteur vitesse de références 8
Commande optimale LQ : Critère de performance [Luo et Saridis 85] LQ Prise en compte de l erreur l en position, vitesse et accélération dans le critère à minimiser : t f! 1 T 1 T " J ( x, u) = ' # e ( t) Q( t) e( t) + e& ( t) R( t) e& ( t) $ dt % & 0 2 2 2 2 t Principe du maximum de Pontriaguine : 0 1 1 Lagrangien: L x, u, p, t e t Q t e t e2 t R t e2 t p e t 2 2 T T T ( ) = ( ) ( ) ( ) + & ( ) ( )& ( ) + &( ) La commande optimale minimisant le critère de performance vérifie :! L = 0! u! L = " p&! x T Position et Vitesse Accélération 9
Commande optimale LQ : Critère de performance [Luo et Saridis 85] LQ Prise en compte de l erreur l en position, vitesse et accélération dans le critère à minimiser : t f! 1 T 1 T " J ( x, u) = ' # e ( t) Q( t) e( t) + e& ( t) R( t) e& ( t) $ dt % & 0 2 2 2 2 t Principe du maximum de Pontriaguine : 0 1 1 Lagrangien: L x, u, p, t e t Q t e t e2 t R t e2 t p e t 2 2 T T T ( ) = ( ) ( ) ( ) + & ( ) ( )& ( ) + &( ) Dans ces conditions, pour Q et R matrice constantes et dans le cas stationnaire, la commande optimale recherchée s és écrit : ( ) ( ) ( ) ( ) ( ) ( ) ( ( ) ( )) ( ) u * t = M x!&& x t + K x t # x t + K x& t # x& t " + NL x, x& $ d 1 d 2 d % 10
Retour accéléromètrique : Commande optimale LQ appliquée au contrôle du moteur y 1 y 2 U m1 k m2 ( 1) && ( ) ( & & 1 1 2 1 2 1) ( 2) m && y = k ( y! y ) + a( y&! y& ) m y = k y! y + a y! y + u 2 2 1 2 2 1 a D après (1), on a : Avec : Or d après d (2) : (, & ) m && y + NL y y = u 1 1 1 1 (, & ) = (! ) + ( &! & ) NL y y k y y a y y 1 1 1 2 1 2 (, & ) NL y y = m && y 1 1 2 2 Algorithme de commande : ( ) ( ) ( ) ( ) ( ) ( ( ) ( )) ( ) u t m && y t K y t y t K y& t y& t m && y t * = 1 1d + 1 1d! 1 + 2 1d! 1 + 2 2 11
Retour accéléromètrique : Trajectoires de référence Loi à accélération limitée Loi à jerk limité Loi à quark limité Vitesse Accélération Jerk Quark 12
Retour accéléromètrique : Contrôle des vibrations de la charge Hypothèses : La position moteur est parfaitement contrôlée y&& 1,ref =1 & y& 1 1 s y& 1 1 s y 1 Inversion du modèle en dérivant la relation (2) : ( ) ( ) (2) m && y = k y! y + a y&! y& " && y = g( k, a, y, y&, y, y&, && y,&&& y ) d dt 2 2 1 2 1 2 1 1 1 2 2 2 2 L algorithme de commande est donné par : y&& 1,ref = g( k, a, y, y&, y, y&, && y,&&& y ) 1 1 2 2 2 2 =1 & 1 y& 1 1 s y& 1 s y 1 13
Retour accéléromètrique : Robustesse Si on suppose que le système subit des bruit η 1 et η 2 ( 1) && ( ) ( & & 1 1 2 1 2 1) ( 2) m && y k ( y y ) + a( y& " y& ) m y = k y " y + a y " y + u +! = " +! 2 2 1 2 2 1 2 La dynamique de l erreur l de position devient : ( ) + & ( ) + ( ) =! ( ) +! ( ) m e&& t K e t K e t t t 1 1 2 1 1 1 1 2 Filtre passe-bas, fonction de transfert : ( ) = 2 H s 1 m s + K s + K 1 2 1 Filtrage naturelle des bruits K 1 et K 2 réglés pour que ce filtre naturel coupe les bruits η 1 et η 2 1 14
Validations Expérimentales : Matériel disponible Dspace Robot cartésien 3 axes Armoire existante Matlab Caractéristiques de l axe l X : Vitesse max. : 4 m/s Accélération max. : 4 m/s² 15
Validations Expérimentales Déplacement Horizontal de 900mm 16
Validations Expérimentales 1000 800 Référence de position Commande industrielle avec Jerk Retour Accéléro (Contrôle de la charge) Retour Accéléro (Contrôle Moteur) Commande industrielle sans Jerk Évolution de la position du moteur pour différentes stratégies de commande 600 m m 400 200 0-200 0 1 2 3 4 5 6 7 Temps en s 17
Validations Expérimentales Évolution de la position du moteur pour différentes stratégies de commande 900.1 900 Référence de position Commande industrielle avec Jerk Commande industrielle sans Jerk Retour Accéléro (Contrôle Moteur) Retour Accéléro (Contrôle de la charge) 899.9 m m 899.8 899.7 899.6 899.5 7,6% (88 ms) 899.4 1.2 1.4 1.6 1.8 2 2.2 2.4 Temps en s 18
Validations Expérimentales Vibrations de la charge (mesure relative avec capteur laser) 2 Commande Industrielle sans Jerk Retour Acéléro (Contrôle de la charge) 2,4 mm 1 0 m m -1-2 -3-4 1 1.5 2 2.5 3 3.5 4 Temps en s 19
AVEZ-VOUS DES QUESTIONS? 20
COMMANDE PAR RETOUR ACCELEROMETRIQUE APPLICATION A UN ROBOTS CARTESIENS 3 AXES 1. Contexte 2. Commande optimale linéaire quadratique d un d robot cartésien 3. Commande par retour accéléromètrique 4. Validation expérimentales sur un robot cartésien 21
COMMANDE PAR RETOUR ACCELEROMETRIQUE APPLICATION A UN ROBOTS CARTESIENS 3 AXES 1. Contexte 2. Commande optimale linéaire quadratique d un d robot cartésien 3. Commande par retour accéléromètrique 4. Validation expérimentales sur un robot cartésien 22
COMMANDE PAR RETOUR ACCELEROMETRIQUE APPLICATION A UN ROBOTS CARTESIENS 3 AXES 1. Contexte 2. Commande optimale linéaire quadratique d un d robot cartésien 3. Commande par retour accéléromètrique 4. Validation expérimentales sur un robot cartésien 23
Retour accéléromètrique : modèle utilisé pour chaque axes Z Y Moteur Y Bras Z fixe (lié au chariot Y) X Chariot Y Poulie-courroie y 1 y 2 Moteur Z (lié au bras Z fixe) Raideur équivalente (1er mode de flexion poutre Z) Bras Z k U m1 m2 a ( 1) && ( ) ( & & 1 1 2 1 2 1) ( 2) m && y = k ( y! y ) + a( y&! y& ) m y = k y! y + a y! y + u 2 2 1 2 2 1 24
Commande optimale LQ : Modèle d éd état d un d robot cartésien à n degrés de liberté (Luo et Saridis 85) LQ Le système se réécrit en : 25