Théorie et pratique des Logiciels de simulation des mécanismes "Systèmes multicorps" Jean-Luc DION 01 49 45 29 12 Jean-luc.dion@supmeca.fr 2012 SUPMECA - 3, rue Fernand Hainaut 93407 SAIN OUEN Cedex http://www.supmeca.fr/ Merci au professeur Fayet pour m'avoir autorisé à reprendre de larges extraits de son cours et pour ses précieux conseils 1 Sommaire 1 – Introduction 3 2 – Forme générale des équations de mouvement 2.1 - Les équations de liaison 2.2 - Système algébro-différentiel 2.3 - Aperçu sur la résolution 5 5 6 7 3 – Géométrie & cinématique 3.1 - La topologie 3.2 – Coordonnées cartésiennes et angles d’Euler 3.3 – Quaternions 3.4 - La géométrie de Denavit – Hartenberg (D-H) 3.5 - La formulation cinématique récurrente 9 9 11 15 25 35 4 – Equations de liaison 4.1 – Démarche générale 4.2 – Mise en œuvre 44 44 48 5 – Equations et cordonnées généralisées indépendantes–Actions de liaison 5.1 Démarche générale 5.2 Degré de liberté, liberté composée et mobilité 5.3 Torseur statiquement admissible et mouvements incompatibles 5.4 Détermination des actions de liaison 59 59 60 83 84 6 – Equation de la dynamique 85 7 – Résolution des équations 7.1 – Mise en forme du système algébro-différentiel 7.2 – Résolution numérique du système algébro-différentiel 86 86 98 8 – Conclusion 99 2 1 - Introduction 1.1 avant-propos L'étude des mécanismes réels reste souvent délicate lors de leur modélisation. Les équations résultantes qui permettent d'accéder à la connaissance des mouvements et des efforts sont souvent complexes et non linéaires dans le cas de systèmes industriels et même pour des systèmes aussi simples qu'un pendule. La résolution analytique de ces équations est dans la plupart des cas impossible, la solution ne peut alors être déterminée que par des méthodes numériques. Depuis les années 70, des logiciels dédiés à la résolution des problèmes propres à la mécanique se sont développés. Si la démarche de ces logiciels multicorps reste entièrement orientée vers la mécanique, leurs domaines d'applications sont divers et nombreux : par exemple ; ils sont utilisé en bio-mécanique pour l'étude du corps humain qui est traité comme un mécanisme formé de nombreux solides et d'actionneurs (muscles). Ils servent également de simulateur pour des processus dont on ne peut aisément reproduire les conditions réelles d'utilisation, comme le déploiement d'une antenne à bord d'un satellite. Le plus souvent, ils sont intégrés dans les différentes phases de conception d'un produit industriel. 1.2 problématique Les logiciels auxquels nous nous référons concernent donc des ensembles de solides rigides connectés par différentes liaisons (contacts entre surfaces), comportant certains éléments déformables simples comme des ressorts ou des amortisseurs ou complexe comme des poutres flexibles ou, moins classiquement, des bases modales préalablement définies dans des logiciels de type Eléments Finis. Ces logiciels apporte une aide à la compréhension des mécanismes et réduisent sensiblement le nombre de prototypes et études expérimentales avant l'industrialisation ou la réalisation finale du produit. De par leur approche sous forme de modèles, ces logiciels ne sauraient supprimer la phase ultime du prototype et des mesures qui resteront toujours indispensables pour s'assurer du bon recalage des modèles utilisés à des fins prédictives. Les logiciels de simulation n'apportent qu'un résultat issu d'une part des modèles simplifiés de la réalité et d'autre part de l'identification numérique plus ou moins pertinente de ces modèles par l'utilisateur. Les produits les plus récents permettent d'obtenir les équations sous leur forme littérale, de les linéariser autour d'un point de fonctionnement et de précéder à une analyse de 3 sensibilité, c'est à dire étudier l'influence des paramètres géométriques ou inertiels sur les performances. La forme littérale du modèle obtenu avant la mise en œuvre de méthodes numériques apparaît d'ailleurs comme le moyen le plus efficace pour réduire les temps de calcul. Prenons simplement le problème de la transformation de l'expression d'un vecteur entre deux bases liées à deux solides. Si l'on considère dans ce but la matrice de passage le plus générale, utilisant par exemple trois angle d'Euler, elle sera évidemment bien plus complexe que la matrice dont on a effectivement besoin si par exemple les deux bases ont un vecteur commun. D'une manière générale l'établissement du modèle dynamique sous forme littérale permet d'éviter tout calcul qui d'avance doit conduire à un résultat nul non utile à la suite. Notons que la robotique a joué un rôle important dans l'amélioration des logiciels multicorps. Ce domaine en effet nécessite des temps de calcul en temps réel pour la commande et donc des algorithmes les plus compacts. Les principes les plus efficaces seront ceux capables en quelques sortes, de fabriquer automatiquement un programme particulier pour chaque mécanisme avant le traitement numérique. Il semble à priori supérieurs à ceux qui utilisent une seule et même suite d'opérations pour les cas envisagés. Il existe deux grandes classes de logiciels : ceux les plus anciens qui utilisent le paramétrage de la position de chaque solide par rapport au repère galiléen (paramétrage absolu) et ceux, plus récents, qui définissent la position de chaque solide par rapport à son antécédent (paramétrage relatif). La première catégorie est une application informatique de la mécanique générale telle qu'elle est actuellement enseignée à SUPMECA. Ce cours se propose de développer plus particulièrement les méthodes employées dans la deuxième classe de logiciels. 4 2 – Forme générale des équations du mouvement 2.1 Les équations de liaison Les équations de liaison dans un mécanisme dépendent du paramétrage retenu. Deux classes de paramétrage existent dans les logiciels de simulation mécanique : - Le paramétrage absolu qui défini la position de chaque solide au moyen de 6 coordonnées au moins. Toute liaison entre solide engendre donc des équations de liaison. - Le paramétrage relatif ou la position de chaque solide est définie par rapport à un solide voisin. Seule les boucles du mécanisme engendrent des équations de liaison. Dans tous les cas les équations de liaison sont de deux types : ( ) Algébrique : C q ,..., q , t 1 1 n . . . C q ,..., q , t ( L 1 n =0 (1) ) =0 Elles portent exclusivement sur les paramètres de position q1,…qn et le temps t. Différentiel : c qɺ + ... + c qɺ 11 1 1n n . . . ɺ c q + ... + c qɺ L1 1 Ln n ( = d q ,..., q , t 1 1 n ) (2) ( d q ,..., q , t L 1 n ) Certaines des équations (2) peuvent être obtenues directement ( cas du non glissement), d'autres sont obtenues par dérivation des équations de (1). A l'inverse, les équations différentielles peuvent être intégrées pour avoir une forme algébrique. Lorsqu'il n'existe pas de forme intégrée, ces équations sont dites non-holonomes. Lorsque les équations de liaison sont de type algébrique (non différentiel) est sont holonomes. Si le temps figure explicitement dans une équation holonome elle est aussi rhéonome sinon elle est skléronome. Les équations non holonome possèdent une forme matricielle du type : [C].[qɺ ] = [d( [q ] , t )] (3) 5 2.2 Système algébro-différentiel des équations du mouvement Les équations de Lagrange s'écrivent : L g d ∂T − ∂T = Q + c λ di ∑ ij j dt ∂qɺ ∂q j=1 i (4) i avec … t Tg qi Qdi : temps : énergie cinétique : ième degré de liberté : force généralisé donnée associée à qi telle que : → ∂ OM Q = ∫ f (M). dv di d ∂q S f (M) d λj i : densité volumique de force donnée (ex : pesanteur, fem …) : multiplicateur de Lagrange relatif à la jème équation de liaison de (2) : coefficient de qɺ dans la jème équation de liaison de (2) cji Or (5) i Tg n s'exprime toujours T = 1 ∑ a qɺ qɺ 2 i, j=1 ij i j g (6) Les équations de Lagrange (4) s'exprime donc : ∑ aijɺqɺ j = Qdi + B(qi, qɺ i, t )+ ∑ cijλ j n j=1 n (7) j=1 Notons que cette formulation des équations de Lagrange est ramenée ici au Principe Fondamental de la Dynamique. La fonction vectorielle B regroupe classiquement les actions extérieures au système dont l'expression non holonome peut être non linéaire. Ces n équations portent sur n degrés cinématique qi et sur L liaisons λj. En ajoutant les L équations de liaison (supposées pour l'instant indépendantes), le problème a théoriquement une solution. 6 2.3 Aperçu sur la résolution Nous verrons par la suite que l'intégration numérique nécessite de résoudre d'abord en [ɺqɺ] et [λ ] le système constitué de (3) et (7). Mais (3) ne fait pas apparaître [ɺqɺ] et [λ ], nous allons donc dériver (3) par rapport au temps : ɺ ) [C ] qɺɺ = D ( q,q,t (8) Les équations matricielles (7) et (8) possèdent alors la notation tensorielle suivante : A C CT 0 ɺqɺ − λ Q +B = d D(q, qɺ , t ) (9) avec n degrés de liberté cinématique et L liaisons le système est défini par : A[n,n] ; C[L,n] ; q[n,1] ; λ[L,1] ; Qd[n,1] ; B[n,1] ; D[L,1]. Comme nous le verrons avec plus de rigueur par la suite cette forme différentielle du second ordre avec n+L équations répond à la problématique classique de la mécanique, elle est particulièrement adaptée aux méthodes de résolution pas à pas, même s'il reste à dédoubler en 2n+L le système pour ramener le système différentiel à un ordre 1 requis pour la résolution numérique. Réduit à l'ordre 1 le système différentiel s'exprime : I 0 0 0 A C 0 T C 0 qɺ xɺ − λ x = Qd + B D (10) Nous aborderons plus tard sa résolution … 7 Exemple : le pendule Le pendule est composé d'une masse M ponctuelle au bout d'un bras de levier sans masse de longueur L. O x Xo L α M z Zo Z1 Question : Ecrire les équations de la dynamique du système sous la forme proposée en (9) : A C CT 0 ɺqɺ − λ Q +B = d . D(q, qɺ , t ) Identifier les différents éléments. [ Solution : A= M 0 C = [2x 0 M 2z] ] −λ = [ ] [] 0 Qd = mg T 2L D = −2 ( xɺ 2 + zɺ 2 ) ɺqɺ = ɺɺxzɺɺ [] B = 00 8 3 – Géométrie & cinématique 3.1 La topologie On peut classer les mécanismes en 3 catégories : - les mécanismes en chaîne simple dont le robots-série constituent un exemple classique, - les mécanisme en chaîne ouverte complexe, ou arborescente comme le corps humain ou un satellite artificiel, - les mécanismes en chaîne fermée complexe, telle qu'une suspension d'automobile ou un système bielle-manivelle. Remarque : Pour une chaîne ouverte simple ou complexe, le nombre de liaisons est égal au nombre de solides. La numérotation du système est réalisé comme suit : - l'indice 0 est affecté au bâti (So), - les indices affectés aux solides croissent de 1 à N (N=nombre de solides) en allant de la base vers un corps terminal ; la numérotation est alors dite régulière, - la liaison Li entre le solide Si et son prédécesseur porte l'indice i. La topologie du système est alors entièrement définie par le vecteur a des antécédents tels que : ai = j si le solide Sj est le solide antécédent du solide Si. De la même façon la matrice D des successeurs directes est telles que : Dij=1 si Sj est un successeur directe de Si. Dij=0 sinon. La matrice P des successeur absolu (Path Matrix) est définie par : Pij=1 si Sj est un successeur absolu de Si (rattaché directement ou indirectement) 9 Exercice : trouver a, D et P du système suivant : S5 L5 S4 L4 S2 L2 L3 S3 S1 L1 S0 10 3.2 Paramétrage absolu : les angles d’Euler 3.2.1 Définitions Le paramétrage absolu fixe à tout instant la position de chaque solide par rapport à un repère de référence. Au moins 6 coordonnées sont alors nécessaires : xi,yi,zi pour les coordonnées cartésiennes d’un point Oi du solide Si et 3 angles d’Euler Ψi, θi et Φi qui fixent l’orientation du solide Si. Les coordonnées généralisées sont regroupée dans les variables dynamiques qi avec : q=(x1,y1,z1,Ψ1,θ1,Φ1,… ,xn,yn,zn,Ψn,θn,Φn) Cette représentation est celle retenue dans le logiciel ADAMS. Malgré un grand nombre de variables cette représentation reste toutefois insuffisante car les angles d’Euler possèdent des singularités et la résolution du problème inverse est parfois impossible et possède plusieurs infinités de solutions. Ce point est développé par la suite dans ce chapitre. Afin d’éviter les singularités propres à la représentation avec les angles d’Euler, une solution (celle retenu par ADAMS) consiste à décrire les orientations des solides par deux représentations à priori redondantes : les angles d’Euler de type 1 et les angles d’Euler de type 2. Le choix final entre ces deux solutions est guidés par la proximité des orientations avec les singularités. Angles d’Euler de Type I : rotation ZXZ (313) Angles d’Euler de Type II : rotation ZYX (321) Z0= ZI’ ZI ‘’=Zi Z0= ZII’ ΨI ΨI φI Yi φI Zi YI‘’ Yi ZII’’ θII XII’’ θII = θI θI φII φII Xi YI’ ΨI ΨI X0 XI’= XI’' YII’= YII’’ ΨI Y0 φI θI φII Y0 θII Xi ΨI X0 XII’ Pour de ces deux types, les angles d’Euler représentent les amplitudes de rotation autour des axes successivement perpendiculaires à Z0,XI’,ZI’’ pour le premier type et Z0,YII’,XII’’ pour le second. 11 Les matrices de passage associées écrites avec la convention sα=sin(α) et cα=cos(α), qui sera assez systématiquement utilise pour rendre les expressions plus courtes, sont respectivement : cθ I cψ I − sφ I cθ I sψ I R0i = sψ I cφ I + cψ I cθ I sφ I sθ I sφ I cψ II cθ II R0i = sψ II cθ II − sθ II − cψ I sφ I − sψ I cθ I cφ I − sφ I sψ I + cψ I cθ I cφ I sθ I cφ I cψ II sθ II sφ II − sψ II cφ II sψ II sθ II sφ II + cψ II cφ II cθ II sφ II sθ I sψ I − sθ I cψ I cθ I cψ II sθ II cφ II + sψ II sφ II sψ II sθ II cφ II − cψ II sφ II cθ II cφ II Remarque : La matrice Roi peut être vue comme : - la matrice de passage de i vers 0 : les coordonnées d’un point M exprimée dans i s’exprime dans 0 par : Oi M i ( 0) = [R0i ].Oi M i (1) - ou la matrice de rotation de 0 vers i : le point Mi est l’image du point Mo par rotation O0 M 0 ( 0) = Oi M i (1) alors : Oi M i ( 0) = [R0i ].O0 M 0 ( 0) Attention : Cette double utilisation possible des matrices Roi est souvent à l’origine d’erreurs d’interprétation et de calcul (signe des rotations et ordre des opérations matricielles dans le cas de rotation multiples). 12 3.2.2 Linéarisation des angles d’Euler de type II Si les angles de rotation sont petits la matrice de rotation devient : 1 R0i ≈ ψ II −θ II − ψ II 1 θ II − φ II 1 φII la rotation est alors décrite par : Oi M i ( 0) 1 ≈ ψ II −θ II − ψ II 1 φ II θ II − φ II .O0 M 0 ( 0) 1 ou encore : φ II Oi M i (0) − O0 M 0 (0) = ∆O0 M 0 (0) = ϕ ∧ O0 M 0 (0) avec ϕ = θ II ψ II 0 En dynamique du véhicule (ferroviaire, automobile, naval, aéronautique et spatial) ces angles sont associés au lacet (ΦII), au tangage (ΘII) et au roulis (ΨII). La direction d’évolution naturelle du véhicule (vecteur vitesse) défini l’axe portant le roulis. Le lacet est portée par l’axe de la gravité. 13 3.2.3 Problème inverse Pour une orientation de Si donnée nous obtenons la matrice Roi dont les composantes sont rkl. Nous obtenons alors les angles d’Euler de type I et II en fonction des composantes rkl. r11 R0i = r21 r 31 r12 r22 r32 r13 r23 r33 Pour les angles d’Euler de Type I … θ I = ± Arc cos(r33 ) + 2kπ r32 + 2kπ φ I = Signe(r31 sθ I ). Arc cos sθ I Si θ I ≠ 0 + kπ alors ψ = Signe(r sθ ). Arc cos − r23 + 2kπ 13 I sθ I I Pour les angles d’Euler de Type II … θ II = Arc sin(−r31 ) + 2kπ ou θ II′ = π − θ II + 2kπ r33 + 2kπ φ θ = Signe ( r c ). Arc cos II 32 II c θ π II Si θ II ≠ ± + kπ alors 2 ψ = Signe(r cθ ). Arc cos − r11 + 2kπ 21 II cθ II II Dans les deux cas il y a une double infinité de solutions Dans les logiciels de simulation une seule solution est gardée : le choix est fait arbitrairement à l’origine puis par continuité d’un pas de calcul à l’autre. De plus lorsque θ I ≠ 0 + kπ ou θ II ≠ ± π 2 + kπ il y a indétermination sur Ψ et Φ dont on ne peut connaître que la somme ou la différence. A l’approche de ces valeurs particulières de θ I et θ II , une imprécision de plus en plus grande se manifeste sur les deux autres angles Ψ et Φ. Les singularités n’intervenants pas dans les mêmes conditions pour les angles d’Euler de type I et II, la méthode retenue consiste alors à basculer le calcul dans la représentation d’Euler la plus éloignée de sa singularité. 14 3.3 Paramétrage absolu : les quaternions 3.3.1 Définitions et propriétés des quaternions Un quaternion est composé d’une partie scalaire et d’une partie vectorielle rapportée à une base orthonormée directe (i , j , k ) Q = s + V = s + pi + qj + rk Les quatre composantes s, p, q et r forment le quaternion. Le quaternion peut être vu comme la généralisation des nombres complexes. Pour les nombres complexes, la combinaison des parties réelle et imaginaire permet de décrire des rotations du plan. Les quaternions permettent de décrire les rotations de l’espace. Multiplication externe : αQ = α s + V = αs + α V ( ) Addition : Q1 + Q2 = s1 + V1 + s 2 + V2 = s1 + s 2 + V1 + V2 ( Multiplication : ) ( ) Q1 Q2 = s1 + V1 s2 + V2 = s1.s2 − V1.V2 + s1.V2 + s2 .V1 + V1 ∧ V2 ( )( ) Le produit n’est pas commutatif : Q1 Q2 ≠ Q2 Q1 Associativité : Q1 ( Q2 Q3 ) = ( Q1 Q2 ) Q3 Distributivité par rapport à l’addition : Q1 ( Q2 + Q3 ) = Q1 Q2 + Q1 Q3 Conjugué : Q = s +V ⇒ Q = s −V 2 Q Q = Q Q = s2 + V = s2 + p2 + q2 + r 2 Norme : Q = Q Q = Q Q = s2 + p2 + q2 + r 2 Inverse : Q −1 = Si Q Q 2 Q Q −1 = 1 Q =1 Alors Q −1 = Q 15 3.3.2 Rotations & quaternions 3.3.2.1 Vecteur orthogonal à l’axe de rotation Soit R = Rot ( n , θ ) la rotation autour d’un axe de vecteur directeur unitaire n et u d’angle θ et soit 1 un vecteur unitaire orthogonal à n dont l’image par rotation R est le vecteur u2 . Cherchons Q1 tel que : u2 = Q1 ⊙ u1 u1 et u2 sont ici des quaternions purement vectoriels (ternions) et unitaires : leurs inverses sont égaux à leurs opposés : −1 −1 u2 = −u2 , u1 = −u1 D’où : −1 Q1 = u2 u1 = −u2 u1 = u2 .u1 − u2 ∧ u1 = cos (θ ) + sin (θ ) .n cos (θ ) Avec u2 = sin (θ ) 0 u1 ,v1 ,n De même : u2 = u1 Q2 avec Q2 = −u1 u2 = cos (θ ) − sin (θ ) .n = Q1 Q1 u1 Q1 est donc l’image de u1 par une rotation autour de n d’un angle 2θ ou encore : θ θ u2 = Q u1 Q avec : Q = cos + sin n 2 2 Remarque : n ≠ Q1 n = ( cos (θ ) + sin (θ ) n ) ⊙ n = − sin (θ ) + cos (θ ) n C’est à dire que Q1 n n’est pas l’image de n par R. Mais nous avons toutefois : θ θ θ θ Q n Q = ( Q n ) Q = − sin + cos n cos − sin n = n 2 2 2 2 Par cette opération n reste donc bien inchangé (rotation double de θ/2). 16 3.3.2.2 Cas général V = λ . u + µ . n nous obtenons son image : Pour un vecteur quelconque 1 1 V2 = Q V1 Q = Q λ.u1 + µ.n Q = Q λ.u1 Q + Q µ.n Q = λ.u2 + µ.n ( ) θ θ Q = cos + sin n = s + p.i + q. j + r.k 2 2 Avec Si on pose θ θ s = cos et p.i + q. j + r.k = sin n 2 2 Alors Q permet, au travers de la relation V2 = Q V1 Q , de rendre compte de toute rotation ou tout déplacement à point fixe ou encore tout changement d’orientation. Les 4 composantes de Q (s,p,q,r) permettent donc de décrire cette rotation. Ce 2 2 2 2 sont les paramètres d’Euler qui vérifie la relation s + p + q + r = 1 . Il convient de préciser que tous les vecteurs doivent être exprimés dans la même base orthonormée directe. On a donc par exemple : (V ) = (Q ) (V ) (Q ) 2 1 1 1 1 1 () θ θ Avec : (Q )1 = cos + sin n 1 2 2 L’analogie entre matrice de rotation et matrice de changement de base développée précédemment permet d’écrire : Nous obtenons alors : V2 1 = (Q )1 V2 2 (Q )1 Q apparaît donc comme un opérateur servant aussi bien pour les rotations que les changements de base et peut se représenter par la matrice R12 qui traduit aussi bien les rotations de 1 vers 2 que le changement de base de 2 vers 1. ( ) ( ) Notons que : - (Q )1 = (Q )2 puisque le vecteur directeur n de l’axe de rotation est invariant. - Q21 = Q12 Avec Q12 le quaternion associé à la rotation qui fait passer d’une position 1 à une position 2. (Q12 est associé à R12) 17 3.3.2.3 Composition des rotations Soit une deuxième θ' θ' Q ' = cos + sin n 2 2 rotation ( ) R' = Rot n', θ ' dont le quaternion est : L’image par R"= R' R de V1 est V2 = Q'Q V1 Q Q' Sachant que Q'Q = Q Q' le quaternion associé à la rotation R"= R' R est Q"= Q 'Q C’est l’intérêt majeur des quaternions : la loi de composition est plus économe en opération que celle des matrices de passage. Le deuxième intérêt des quaternions est qu’ils ne présentent pas de singularité par rapport aux représentations avec les angles d’Euler. 18 Exercice : 3 1 x0,1 α 2 x*0,2 y2,3 z1,3 z0 y*0 y0 z2 z*0 x*0 y02 α ψ2 y*0 x0 x2 x3 z3 θ2 z2 z0 y3 y1 z1 x3 y1 θ1 x1 ψ1 y0 A un instant donné de la simulation du joint de cardan, les coordonnées absolues des solides 1 et 3 (par rapport au référentiel galiléen 0) sont données par : S1 : s1=0,9239 p1=0,3827 q1=0 r1=0 S3 : s3=0.9066 p3=0,3755 q3=-0.0737 r3=0,1914 Trouver les paramètres relatifs ψ1 entre S0 et S1 et θ1 entre S1 et S3. (ψ1=45° et θ1=22°) 19 3.3.3 Matrice de rotation & paramètres d’Euler Dans les matrices de rotation chaque colonne représente les composantes des vecteurs de la nouvelle base dans l’ancienne, ce qui rend leur lecture immédiate contrairement aux paramètres et aux angles d’Euler. Nous avons vu précédemment que V2 = Q V1 Q Avec : θ θ Q = cos + sin n = s + V 2 2 ( )( ) = (V .V )V + s V + 2 sV ∧ V + V ∧ (V ∧ V ) V2 = s + V V .V1 + s.V1 − V1 ∧ V V2 2 1 1 Or : s = 1 − V 2 Donc : ( ) 1 1 2 ( ) = V + V ∧ (V ∧ V ) 2 s 2V1 + V .V1 V = V1 − V V1 + V .V1 V 1 Car… A ∧ B ∧ C ( ) 1 ( A.C ) B−( A.B )C = et ( V2 = V1 + 2sV ∧ V1 + 2V ∧ V ∧ V1 ) C’est la formule de Rodrigues pour les rotations qui peut aussi s’écrire sous forme matricielle : V2 = I 3 + 2 sVˆ + 2Vˆ .Vˆ Vˆ1 Avec I3 la matrice identité d’ordre 3 et 0 −r q Vˆ = r 0 − p − q p 0 … La matrice antisymétrique associée au vecteur V. La matrice de rotation s’exprime donc [I 3 + 2sVˆ + 2Vˆ .Vˆ Soit … ( ] 1 − 2 q 2 + r 2 R = 2 pq + 2 sr 2 pr − 2 sq ) 2 pq − 2 sr ( 1− 2 r + p 2qr + 2 sp 2 2 ) 2 pr + 2 sq r11 2qr − 2 sp = r21 1 − 2 p 2 + q 2 r31 ( ) r12 r22 r32 r13 r23 r33 20 Par identification avec la matrice de rotation nous pouvons déterminer les 4 paramètres du quaternion correspondant à la rotation R : 1 r11 + r22 + r33 + 1 2 1 p = signe(r32 − r23 ) r11 − r22 − r33 + 1 2 1 q = signe(r13 − r31 ) r22 − r11 − r33 + 1 2 1 r = signe(r21 − r12 ) r33 − r22 − r11 + 1 2 s= Le choix arbitraire de s positif ne nuit pas à la généralité de la description puisque : θ s = cos ∈ [0,1] , 2 θ peut donc prendre toute valeur. On peut donc constater qu’aucune singularité de description n’apparaît ici (contrairement aux représentations avec les angles d’Euler). C’est à dire qu’à une orientation d’un repère par rapport à un autre correspond un quadruplet (s,p,q,r) et un seul. Exercice : Soit R une matrice de rotation dont l’expression par rapport à une base d’origine orthonormée directe est : 0 0 1 R = 1 0 0 0 1 0 Trouver les paramètres d’Euler p,q,r,s et définir son amplitude et son axe. Représenter graphiquement le résultat. 21 3.3.4 Cinématique au premier ordre La cinématique au premier ordre se propose d’exprimer le taux de rotation Ω en fonction des dérivés des paramètres d’Euler (sɺ pɺ qɺ rɺ ) exprimé sous forme d’un quaternion. Nous avions établis précédemment que Vi = Q V0 Q avec Q = s + V le quaternion associé à la rotation Ro. En cinématique « classique » (mécanique du solide) on a : d 0 Vi = Ω i0 ∧ Vi dt Dans le cas d’un paramétrage avec les quaternions Nikravesh & Haug (concepteurs du logiciels DADS), démontrent que le taux de rotation du solide i par rapport à 0 (référentiel galiléen)exprimé dans 0 est défini par : (Ω ) 0 i 0 − p s − r = 2 − q r s − r − q p sɺ s q p pɺ − p . = 2[G ].ϕɺ E Avec ϕ E = qɺ q s rɺ r D’autre par ils établissent que le taux de rotation du solide i par rapport à 0 (référentiel galiléen) exprimé dans i du solide est défini par : (Ω ) 0 i i − p s = 2 − q − r − r q sɺ r − q pɺ s p . = 2[L ].ϕɺ E qɺ − p s rɺ L’inversion de ces systèmes permet alors d’exprimer les grandeurs caractéristiques du quaternion dérivé représenté par ϕɺ E en fonction des rotations représentées par Ωi0 dans le repère 0 : sɺ − p − q − r pɺ s ω x − r q 1 = .ω y ⇒ ϕɺ E = 1 [G ]T Ωi0 qɺ 2 − r s p 2 ω z rɺ q −p s ( ) 0 On constate qu’aucune singularité de description cinématique n’apparaît : quel que ω x soit Ω = ω y , il est toujours possible de trouver les paramètres d’Euler ω z (sɺ pɺ qɺ rɺ ) ce qui n’est pas le cas lorsque l’on utilise les angles d’Euler. ( ) 0 i 0 22 3.3.5 Cinématique au second ordre Le même type de démarche que celle conduite pour la cinématique du premier ordre permet d’établir : − p s − r q d0 0 Ωi = 2[G ].ϕɺɺE Avec G = − q r s − p dt 0 − r − q p s ainsi que : − p s d0 0 Ωi = 2[L].ϕɺɺE Avec L = − q − r dt i − r q − q s p − p s r 23 Exercice : 1 – A partir de la position du dessin, on réalise la rotation instantanée de Ri représentée 1 0 par le vecteur : Ωi = 1 (remarque : ce vecteur rotation ne peut être décrit par les angles 1 0 d’Euler de type I pour cause de singularité) Z0,i Yi Y0 30° X0 Xi Déterminer les dérivées par rapport au temps des paramètres d’Euler décrivant cette rotation instantanée. sɺ = −0,1294 pɺ = 0, 6124 qɺ = 0, 3536 rɺ = 0, 483 2 – La nouvelle orientation de Ri est défini par rapport à R0 est définie par p=q=r=1/3, s= 6 3 La variation instantanée de Ri par rapport à R0dans cette position est décrite par : pɺ = qɺ = rɺ = 1 Déterminer : sɺ , {Ωi0 }1 , {Ωi0 }0 24 3.4 La géométrie : méthode de DENAVIT – HARTENBERG (D-H) La méthode DH est une méthode de description de la géométrie des systèmes mécaniques qui décrit la position et l'orientation de chaque solide qui compose le mécanisme. 3.4.1 Règle générale pour un mécanisme en chaîne ouverte simple Toute liaison de type surfacique peut être décomposée par n assemblage en série de liaisons de type rotoïde (R) ou prismatique (P). Le cas de la liaison hélicoïdale pouvant être inclus dans ce procédé à condition de considérer les paramètres qui décrivent les liaisons R et P de même axe comme liés par le pas. Il suffit donc d'utiliser un indicateur permettant d'identifier la liaison R et P. Il s'agit du paramétrage booléen εi tel que : εi = 1, εi = 0 si Li est une liaison rotoïde (R) εi = 0, εi = 1 si Li est une liaison prismatique (P) Définition des repères - Le repère Ri ={Oi,Xi,Yi,Zi} est lié au solide Si. - Le vecteur unitaire Zi du repère Ri est porté par l'axe de la liaison Li. - Le point Oi est le pied de la perpendiculaire commune aux axes des liaisons Li et Li+1, situé sur l'axe de la liaison Li … voir la figure. - Le vecteur unitaire Xi du repère Ri est sur cette perpendiculaire commune, orienté vers Li+1. Zi+1 Xi+1 Oi+1 Zi Oi ri+1 Xi αi+1 θi+1 di+1 O'i 25 Remarques : R 0 ={O0,X0,Y0,Z0} est fixe par rapport au bâti So, Z0 est choisi selon la verticale ascendante. La liberté laissée pour le choix du point Oi ou de l'axe Xi dans certains cas (liaisons prismatiques, liaisons rotoïdes d'axes parallèles …) peut être mise à profit pour simplifier le modèle géométrique, en faisant un choix qui conduit au plus grand nombre de paramètres DH non nuls. Définition des coordonnées généralisées La variable de l'articulation de la liaison Li est notée qi conformément à la notation de Lagrange. Lorsque εi=1, Li est rotoïde et qi s'identifie à la valeur de l'angle de rotation autour de Zi, Lorsque εi=0, Li est prismatique et qi s'identifie à la valeur de l'abscisse qui décrit la translation le long de Zi. La variable articulaire s'écrit donc : qi =εi(xi−1,xi )+εiOi−1Oi.zi Les 4 paramètres DH (di, αi, ri, θi) définissent entièrement le repère Ri en fonction du repère Ri-1. Le point O'i est le pied de la perpendiculaire commune aux axes de liaisons Li et Li+1, situé sur l'axe de la liaison Li+1, (O'i est fixe par rapport au solide Si) Convention générale : Les paramètres qui permettent de définir Si+1 par rapport à Si ont i+1 comme indice. Paramètres DH Définition di+1 Remarques di+1=OiOi+1.xi αi+1 ri+1 θi+1 αi+1=angle(zi,zi+1) sens positif sur xi ri +1 =OiOi +1.zi +1 θi+1=angle(xi,xi+1) sens positif sur zi +1 Distance entre les axes Li et Li+1. Paramètre de construction et fixe sur Si. Paramètre de construction et fixe de Si. ri+1≡qi+1 si Li+1 est prismatique. Constant si Li+1 est rotoïde OiOi+1=di+1.xi +ri+1.zi+1 θi+1≡qi+1 si Li+1 est rotoïde. Constant si Li+1 est prismatique. 26 Exercice : Définir les paramètres DH du robot manipulateur ACMA-H80 et justifier le choix des repères : Z3 Z4 Z0,1,2 O3 X5 X3 X4 O2 X2 O4 Z6 O5,6 Z5 27 Définir repères et les paramètres DH du robot manipulateur AID-V5 : 28 3.4.2 Les chaînes arborescentes La généralisation aux chaînes arborescentes est immédiate : Dans le cas ou le corps Si ne porte qu'un seul successeur directe Sj (aj=i), Rj est défini à partir de Ri comme dans le cas des chaînes ouvertes simples. Dans le cas ou Si supporte plus d'un successeur direct (par exemple Sj,Sk) il y a plusieurs perpendiculaires communes entre l'axe de la liaison Li et celui des liaison Lj et Lk. La démarche consiste donc a construire autant de repères que de successeurs j directes. Ces repères sont notés R i pour aj=i. Définition des repères : { Rij= Oij,Xij,Yij,Zij=Zi } j où Xi est le vecteur unitaire de la perpendiculaire commune des axes de Li et Lj. k Le Repère principal Ri est choisi confondu avec le repère Ri associé à la plus longue chaîne de l'arborescence. Pour ce repère particulier les 4 paramètres classiques de la méthode DH suffisent à identifier la géométrie du repère k (αk,dk,θk,rk) Si Ri ≠ Ri la localisation de R i par rapport à Ri nécessite 2 paramètres supplémentaires : j j Définition rij θij Remarques j j rij=OiOi.zi distance entre les origines de Ri et R i j θij= xi,xij orientation de R i par rapport à Ri ( ) Zi Oi Zk Xi rij O ij θij Xij O'i Zj O’ij Ces couples de nouveaux paramètres (2 par branche arborescente j ) sont à reporter en paramètres complémentaires dans la ligne d’indice i (et non j). 29 Définir les repères et les paramètres DH du satellite Japonais Akebono : Remarque : Le satellite possède un corps principal qui supporte un pivot central solidaire d’un plateau inférieur supportant 4 panneaux solaires eux mêmes en liaison pivot avec le plateau. En position repliées, les antennes se positionnent le long du corps principal. Le corps principal sera considéré comme le repère galiléen. 30 3.4.3 Les chaînes fermées Les chaînes fermées sont préalablement traitées en ouvrant les boucles indépendantes au niveau d'une liaison. Le système ainsi obtenu est nommé SAE : Structure Arborescente Equivalente. La SAE est numérotée comme une structure arborescente classique qui possède n solides et n liaisons. Les liaisons coupées sont numérotées de n+1 à L, L étant le nombre total de liaisons. L-n est le nombre de boucles indépendantes. Dans une représentation topologique graphique, L-n défini également le nombre de faces topologiques finies. Exemple : S4 S5 S2 S3 S1 S0 Représentation topologique graphique : Surface III Surface I S0 S4 S2 S1 Surface II S3 S5 Ce mécanisme présente 3 boucles {S0,S1,S2,S3} ; {S2,S3,S5,S4} ; {S0,S1,S2,S4,S5,S3}. Seulement 2 de ces boucles sont indépendantes. La représentation topologique graphique permet d'identifier 2 faces finies (surface I et II). La troisième boucle est représentée par la surface III qui est une surface infinie. Les règles topologiques et géométriques définies dans ce chapitre sont particulièrement bien adaptées à un processus algorithmique. L'étape suivante consiste à définir (sur ces mêmes bases) un modèle cinématique au premier ordre (vitesses) et au second ordre (accélérations). 31 Définir les repères et les paramètres DH de l’ensemble mobile (piston - bielle – vilebrequin) du compresseur pneumatique ERVOR suivant : Remarque : le bâtis du compresseur n’est pas représenté. 32 3.4.4 Les matrices de transformation homogène La figure représente deux repères Ri et Rj et un point P tel que OiP=OiO j+O jP P yj xj Oj zj zi Oi yi xi Les matrices de passage homogène ont pour but de donner une forme "agréable" à ce type de relation à l'aide d'un opérateur tensoriel générique et homogène. La matrice de passage Rij permet d'écrire : (OiP)i =(OiO j)i +[Rij](O jP)j ( ) ( ) ( ) ( ( ( ) ) ) soit : ( ) ( ) ( ) OiP x(i) OiO j x(i) O jP x(j) OiP y(i) = OiO j y(i) + R ij O jP y(j) OiP OiO j O jP z(i) z(i) i z(j) Il est possible d'obtenir une relation plus compacte rassemblant la translation et la rotation : ( ) ( ) ( ) OiP x(i) OiP y(i) = OiP z(i) 1 [Rij] 0 0 0 (OiO j)x(i) (O jP)x(j) (OiO j)y(i) (O jP)y(j) (OiO j)z(i) (O jP)z(j) 1 1 Cette matrice est appelée matrice de transformation homogène. Les coordonnées du point P exprimée avec une 4ème composante à 1 sont les coordonnées homogènes. 33 Tij= (OiO j)x(i) (OiO j)y(i) (OiO j)z(i) [Rij] 0 0 0 1 La relation entre les coordonnées d'un point exprimé dans une base i sont alors simplement obtenu à partir de ses coordonnées dans la base j. hOiP =Tij. hO jP i j La matrice Tij contient à la fois la rotation et la translation entre les repères Rj et Ri : Tij= Rotation 0 0 0 Translation 1 Lors du changement de base, des coordonnées homogènes deviennent également des coordonnées homogène : l'opération peut être reproduite de proche en proche de tel sorte que : Tik=Tij.Tjk Exercice : Dans le cas du paramétrage DH, trouver les MTH (matrices de transformation homogènes) Tj-1,j et Tj,j-1 entre deux solides(j-1 et j) relié par une liaison j. T j −1, j cos θ j cos α .sin θ j j = sin α j .sin θ j 0 cos θ j − sin θ j T j , j −1 = 0 0 − sin θ j 0 cos α j .cos θ j sin α j .cos θ j − sin α j cos α j 0 0 cos α j .sin θ j cos α j .cos θ j sin α j .sin θ j sin α j .cos θ j − sin α j 0 cos α j 0 − rj .sin α j rj .cos α j 1 ( j −1) dj − d j .cos θ j d j .sin θ j − rj 1 ( j) 34 3.3 La formulation cinématique récurrente Le but de ce chapitre est d'établir les formules de récurrences pour obtenir : d0 V0(M),J 0(M)∀M∈Si,Ωi0,αi0 = Ωi0 dt 0 ˆ 0.Ω ˆ 0 ˆ0 ainsi que le tenseur Ai =Ω i i +α i 3.3.1 Quelques bons souvenirs des cours de Méca. Géné. Lois de distribution des vitesses et accélérations … V i ( P2 ) = V i ( P1 ) + Ωij ∧ P1 P2 ( ( P2 ∈ S j ) ) ( ) i i i i di i J ( P2 ) = J ( P1 ) + Ω j ∧ Ω j ∧ P1 P2 + Ω j ∧ P1 P2 dt i J i ( P2 ) = A j .P1 P2 + J i ( P1 ) i ˆ i .Ω ˆi + Aj = Ω j j ˆ ) ( Ω dt di i j i A j est le tenseur distributeur des accélérations dans Sj observé à partir de Si. γ1 Ωij= γ2 γ 3 0 −γ γ 3 2 ˆ i = γ 0 −γ Ω j 3 1 −γ γ 0 2 1 di γ dt 1 i d di Ωi = γ dt j dt 2 di γ dt 3 2 2 −γ 2 −γ3 γ1.γ2 γ1.γ3 ˆ i.Ω ˆ i = γ .γ −γ 2 −γ2 γ .γ Ω j j 2 1 3 1 2 3 γ .γ γ .γ −γ 2 −γ2 3 1 3 2 1 2 di di 0 − γ γ dt 3 dt 2 i di d di ˆ i = γ Ω 0 − γ dt 3 dt 1 dt j di di − γ γ1 0 2 dt dt ( ) 35 Composition des mouvements … Vi(P)=V j(P)+Vi(P) j i J (P)=J j(P)+ Ji(P)+2Ωi ∧V j(P) j j Dérivée d'un vecteur dans deux bases … ( ) ( ) i j i d vecteur = d vecteur +Ω ∧vecteur j dt dt 3.3.2 Mouvements entre deux solidesSi-1 et Si. Grandeurs cinématiques Vitesse angulaire Accélération angulaire Vitesse de translation Accélération de translation Liaison prismatique (P) Liaison rotoïde (R) i−1 Ωi =0 i−1 Ωi =qɺ i.zi i−1 αi−1= d Ωi−1=0 i dt i i−1 Vi (M)=qɺ i.zi i−1 Ji (M)=ɺqɺi.zi i−1 αi−1= d Ωi−1=ɺqɺ .z i i i dt i i−1 Vi (M)=qɺ i.zi ∧OiM ( ) i−1 2 Ji (M)=qɺ1.zi ∧ zi ∧OiM +ɺqɺi.zi ∧OiM Ces relations de récurrence permettent de mettre en place un algorithme structuré en boucle sur l'indice de solide i. Les résultats peuvent être projetés dans une base quelconque (en général les expressions les plus simples sont obtenues en projetant dans la base de l'indice inférieur. Cet algorithme est particulièrement performant car d'ordre N. Classiquement, les algorithmes sont d'ordre Nk, N étant le nombre de solides du système. Le nombre d'opérations requises est alors une fonction polynomiale de degré k. Dans l'algorithme présenté k=1. Description de l'algorithme Initialisation de la boucle sur le référentiel galiléen (ground) 36 Ω00 =α00 =J 0(O0)=0 Pour i=1 à N ; i−1 Composition des vitesses ε .qɺ .z =Ω i i i 0 0 Ωi =Ωi−1+εi.qɺ i.zi i Formule de la base mobile : ( ) ( ) ( ) i 0 εi ɺqɺi.zi +Ωi0−1∧qɺ i.zi = d Ωii−1 +Ωi0−1∧Ωii−1= d Ωii−1 dt dt 0 0 0 α =α +ε ɺqɺ .z +Ω ∧qɺ .z ( i i−1 i i i 0 0 ˆ0 ˆ0 Ai =αˆ +Ω .Ω i i i i−1 i i ) Composition des vitesses 0 0 0 Vi−1(Oi)=V (Oi−1)+Ωi−1∧Oi−1Oi 0 0 0 V (O )=V (O )+ε .qɺ .z i i i−1 i i i i 0 0 0 J (O )=J (O )+Ai .O O i−1 i i −1 i−1 i 0 0 0 J (O )=J (O )+ ε .ɺqɺ .z +2Ω ∧ ε .qɺ .z i i i−1 i i i i i −1 (i i i Composition des accélérations ) Fin pour 37 Exercice Appliquer l'algorithme précédent au double pendule orthogonal suivant : S0 O1 x1 q1 x0 x2 q2 x1 Z0,1 O2 z2 S2 M 38 3.3.3 Matrice jacobienne 0 N Il s'agit de déterminer le torseur V (M) en fonction des vitesses généraliser qɺ . i Ω0 qɺ1 0 N = J ⋮ VN(M) qɺ N La matrice Jacobienne J(q,M) représente une application liénaire de LN dans L6.Elle 0 N exprime le torseurV (M) comme fonction linéaire des vitesses généralisées. La matrice Jacobienne peut être partitionnée en deux matrices, l'une relative à la partie vitesse de rotation, l'autre relative à la vitesse de M. J J =Jsup inf Conformément à la formule de composition des vitesses de rotation et au paramétrage DH le taux de rotation de l'élément N dans le repère galiléen est défini par : Ω0 =Ω0 +Ω1 +…+Ω N−2 +Ω N−1 N 1 2 N−1 N =ε qɺ Z +ε qɺ Z +…+ε qɺ 1 1 1 [ =ε Z J sup 1 1 2 2 donc... =ε Z ε Z [ 1 1 2 2 +ε qɺ Z N−1 N −1 N −1 2 2 2 ε Z Z ⋯ ⋯ ε ε N N N Z qɺ1 qɺ 2 ε Z ⋮ N N qɺ N−1 qɺ N Z ε Z N−1 N −1 N−1 N −1 ] N N ] 39 Pour la vitesse de M : OM=OM(q ,⋯,q ) 1 N par conséquent : 0 V (M) = ∂OM qɺ + ∂OM qɺ +…+ ∂OM qɺ + ∂OM qɺ N N −1 ∂q N ∂q 1 ∂q 2 ∂q 1 N −1 12 = ∂OM ∂q 1 ∂OM ∂q 12 ⋯ N ∂OM ∂q N −1 qɺ1 qɺ 2 ∂OM ⋮ ∂q N qɺ N−1 qɺ N ∂OM qɺ est la vitesse qu'aurait M si qi variait seul. ∂q i i Cette formulation n'étant pas algébrique, elle ne présente pas d'intérêt particulier pour les techniques algorithmiques. Le Champ des ∂OM qɺ est un champ de vitesses d'un solide. Considérons toutes les ∂q i i variables bloquées sauf qi : → ∂ OM qɺ i = z i qɺ i ∂q i Pour M ∈S j tel que Pij = 1 … si Li est une liaison Prismatique (P), (translation suivant zi). → → ∂ OM qɺ i = z i ∧ OM qɺ i ∂q i Pour M ∈S j tel que Pij = 1 … si Li est une liaison rotoïde (R) (rotation autour de zi). 40 Ces deux relations peuvent être regroupées : → → ∂ OM = ε i z i + ε i z i ∧ OM ∂q i Cette relation permet de définir la dérivation partielle avec une expression algébrique. La Partie inférieure de la matrice Jacobienne devient : → → ∂ OM ∂ OM J inf = ⋯ ∂q 1 ∂q 2 ε 2 z2 ε 1 z1 + = → ε z ∧ O M ε z 1 2 2 1 1 → → ∂ OM ∂q N + ε N −1 z N −1 + ε N zN + ⋯ → → → ∧ O2M ε N −1 z N −1 ∧ O N −1 M ε N z N ∧ O N M ∂ OM ∂q N −1 Sous forme algébrique, la matrice Jacobienne complète devient : Ω 0N 0 = VN ( M ) J {ε 1 z1 } J = ε 1 z1 + → ε 1 z1 ∧ O1 M qɺ 1 ⋮ qɺ N {ε 2 z 2 } ⋯ {ε N −1z N −1} ε 2 z 2 + ε N −1 z N −1 + → → ε 2 z 2 ∧ O 2 M ⋯ ε N −1 z N −1 ∧ O N −1 M {ε N z N } ε N z N + → ε N z N ∧ O N M Si les éléments de J sont projetés dans un repère quelconque, la matrice Jacobienne est scalaire. Cette matrice est souvent utilisée pour résoudre numériquement le problème géométrique inverse. Elle permet de déterminer le vecteur q des coordonnées articulaires (coordonnées réduites généralisées) pour une position du corps terminal donnée. Exemple de problème : comment piloter les axes d'un robot de peinture pour imposer une trajectoire donnée au pistolet. Cette matrice est donc déterminante dans la synthèse de la commande dynamique en robotique. 41 Lorsqu'il y a des arborescences, la démarche est similaire ; chaque chaîne est traitée séparément avec un torseur géométrique complémentaire : ε i z i G i ( M) = → ε z + ε z ∧ O M i i i i i Ce torseur permet de séparer, dans le torseur cinématique, la partie géométrique (nature de la liaison et localisation de la partie intensité : Vii−1 = qɺ iG i Exercice : Trouver la matrice jacobienne du robot AOIP / Cincinnati suivant : O5,6 S5 z5 S6 S4 z6 O4 S3 O3 z4 S2 z3 O1,2 z2 S1 S0 a) sous forme intrinsèque (point de réduction en O5) b) sous forme extrinsèque dans R tel que : { R = O5 , X = Z 2,3, 4 , Y , Z = Z 5 } 0 0 α 6 → O5 Oi = y i Z 1 = β 1 Z 6 = β 6 z γ 0 i R 1 R R 42 3.3.4 Dérivée du torseur cinématique sous forme semi-explicite Dans le but d'écrire les équations de la dynamique sous la forme : A C CT 0 Q +B = d D(q, qɺ , t ) ɺqɺ − λ Nous devons établir une méthode qui permet de séparer les vitesses des accélérations des variables articulaires (qi). Par dérivation de la relation algébrique de la matrice Jacobienne, nous obtenons : d0 dt 0 Ω 0N α 0 ≡ 0 N = VN ( M ) J N ( M ) J q1 ɺɺ ⋮ + γ ɺɺ q N En d'autre terme, le problème revient à déterminer : γ = γ ( q , qɺ ) En considérant provisoirement les accélérations des variables articulaires nulles : α N0 = 0 J ( M ) N qɺɺ=0 J 0 γ sup ⋮ + γ = γ = 0 γ inf La partie supérieure de γ est l’accélération angulaire qu’aurait SN si : γ sup = α N0 qɺ ≡ 0 La partie inférieure de γ est l’accélération qu’aurait M ∈ S N dans Ro si {qɺɺ1 ,⋯ , qɺɺN } ≡ {0,⋯, 0} γ inf = J N0 ( M ) ɺ q≡0 Or nous avons établi précédemment un algorithme pour déterminer α N0 et J N0 ( M ) à partir de la connaissance des grandeurs articulaires et leurs deux premières dérivées (vitesse et accélération). En appliquant cet algorithme pour le cas {qɺɺ1 ,⋯ , qɺɺN } ≡ {0,⋯ , 0} nous obtenons directement γ . Exercice : Déterminer γ pour le pendule orthogonal en 3.3.2. 43 4 – Equations de liaison 4.1 démarche générale Nous avons vu précédemment qu’à coté des équations de la dynamique il était nécessaire de connaître les équations de liaison. Les équations de liaison traitées dans ce chapitre n’aborde pas les liaisons motorisées dont la cinématique est décrite en fonction du temps ou défini par un asservissement : elles ne présentent pas véritablement difficulté de traitement analytique ou numérique lors de la résolution. Ce chapitre traite des équations de liaisons issues des contacts entre solides. Dans le cas du paramétrage absolu, chaque liaison Lij entre les solides Si et Sj de degré de liberté lij donne lieu à 6-lij équations de liaisons scalaires indépendantes. Chaque type de liaison fait donc appel à un traitement particulier, le logiciel a recours à une bibliothèque. Dans le cas du paramétrage relatif, les équations de liaison ne concernent plus toutes les liaisons, mais une seule dans chaque boucle indépendante du système mécanique. Dans le cas d’une chaîne ouverte (exemple : robot série), les paramètres relatifs ne sont pas liés alors que les paramètres absolus le sont. C’est un des avantages du paramétrage relatif : il réduit fortement le nombre d’équations de liaison. 44 Dans le cas de mécanisme à boucle, le système est ouvert « virtuellement » de façon à conduire à un mécanisme non bouclé. Les liaisons Lij ouvertes sont traitées par 6-lij équations de liaisons en utilisant une bibliothèque comme dans le cas du paramétrage absolu. Le choix de la liaison à ouvrir se portera sur celle dont le degré de liberté est le plus élevé (minimisation du nombre d’équation de liaison). A défaut, la coupure s’opère à la première bifurcation rencontrée en descendant vers la racine de l’arbre. (voir 3.2.4 Chaînes fermées) Exemple : S4 S5 S2 S3 S1 S0 Représentation topologique graphique : Surface III S1 Surface I S0 S4 S2 Surface II S3 S5 Dans le cas du paramétrage absolu les boucles ne nécessitent pas d’être repérées pour procéder à la résolution. 45 Les équations de liaisons sous leur forme première portent exclusivement sur les coordonnées sauf si elles traduisent le non glissement dans un couple supérieur (linéique ou ponctuel) où leurs dérivées interviennent. Comme nous l’avons vu précédemment, pour traiter les systèmes algébro-différentiels il est nécessaire de connaître toutes les équations de liaison sous forme d’équations différentielles du premier ordre puis du second ordre. ∑c qɺ =c (t) ij j i au premier ordre j ∑c qɺɺ =cɺ (t)−∑ ∂∂qc ij j ij i j j, k k qɺ j qɺk au second ordre Pour 2 solides Si et Sj ayant pour liaison Lij de degré de liberté lij, le torseur cinématique et le torseur d’efforts (de liaison) s’expriment : Ωij Vi (O j )= j Vi (O j ) Fij (O j )= Sij ( ) M ij O j j Les torseurs compatibles avec une liaison peuvent s’exprimer dans une base de torseurs géométriques Gk sous la forme : Vi =∑qɺk Gk j k Ils forment un sous-espace vectoriel V de dimension lij Si la liaison est parfaite, la puissance dissipée est nulle pour tout mouvement compatible avec la liaison et tout torseur d’action transmissible : { } j j j P{Lij }=c Fij,Vi = Sij.Vi (O j )+Ωi .M ij(O j )=0 Le comoment est une forme bilinéaire symétrique. L’ensemble des Fij vérifiant l’équations précédente forme un sous espace vectoriel de dimension 6-lij comme s’il était orthogonal de V. Chaque élément de cet espace s’écrit : 6 − lij Fij = ∑ f k Gk * k =1 Les composantes fk sont les inconnues dynamiques dans la liaison et les Gk* sont les torseurs géométriques de base pour les torseurs des efforts. 46 vi Sj Si Oi M ui wi Par exemple, pour la liaison cylindrique, une base possible pour exprimer les torseurs transmissibles est : * * * * G1 (Oi )=vi G2(Oi )=wi G3 (Oi )= 0 G4(Oi )= 0 0 0 vi wi Tout torseur transmissible par cette liaison cylindrique parfaite s’écrit : Fij = f1G1 + f 2G2 + f3G3 + f 4G4 * * * * Pour tous les torseurs Gk* constituant la base des torseurs transmissible par Lij la puissance est nulle quelque soit fk : c{Gk*,Vi j }=0 Ces relations portent des informations purement géométriques et cinématiques et ne dépendent pas des efforts. Elles restent vérifiées lorsque la liaison n’est pas parfaite. Cette méthode conduit donc à des équations de liaison sous forme différentielle du premier ordre. Les équations différentielles du second ordre sont obtenues par dérivation. 47 4.2 Mise en œuvre 4.2.1 Couples inférieurs (contact surfacique) 4.2.1.1 Liaison hélicoïdale yj uj xj Oj ui Mj zj vj vi vi ⊥ui et v j ⊥u j - wi et wj tels que (ui,vi,wi ) et (u j,v j,w j ) vi Mi - Les vecteurs ui et u j sont les vecteurs directeurs unitaires de l’axe de la liaison Lij - yi et v j tels que forment des bases orthonormées directes - Mi et Mj des points de l’axe zi Oi xi Ainsi, sur chaque solide sont défini de nouveaux repères : (M i,ui,vi,wi ) et (M j,u j,v j,wj ) servant à préciser la géométrie de la liaison. (Ce sont les markers de liaison i et j dans ADAMS) Les équations de liaisons s’exprime sous forme algébrique : ui = u j ( ) M i M j = λij vi , v j .ui p λij est le pas réduit de la liaison : λij = 2π ou p est le pas de la surface hélicoïdale. Les vecteurs ui et u j étant normé, la première équation vectoriel traduit 3 équations scalaires dont seules 2 sont indépendantes. Les 5 conditions scalaires indépendantes définissent cette liaison à 1 ddl. La première écriture peut être remplacée par ui.v j =0 et ui.wj =0 afin d’obtenir des équations indépendantes à priori. 48 ( ) L’angle vi , v j ne fait pas partie des coordonnées généralisées retenues. Il faudra donc le déterminer à partir des relations : sinψ ij =wi.v j =(ui ∧vi).v j =(ui,vi,v j ) cosψ ij =vi.v j Les données constantes à fournir pour que le logiciel établisse ces équations de liaison sont : - Les coordonnées de Mi dans Ri et de Mj dans Rj : Xi X j Oi M i = Yi O j M j = Yj Zi Zj Ri Rj - Les composantes de ui et vi dans Ri et v j dans Rj : uxk vxk uk = uyk vk = vyk uzk vzk pour k=i,j Rk Rk avec : uxk.vxk +uyk.vyk +uzk.vzk =0 uxk2 +uyk2 +uzk2 =1 Dans de nombreux cas on peut choisir des coordonnées présentant des particularités : Par exemple : ui = zi , vi = xi , M i =Oi 49 A partir de ces coordonnées, la traduction sous forme extrinsèque des relations doit se faire en limitant le nombre d’opérations. Les vecteurs qui interviennent s’expriment le plus simplement soit dans Bi soit dans Bj. La base qui conduira aux calculs en chaîne les moins long est donc dans la base Bo : ui =u j [R0i ][ui ]i =[R0j ][u j ]j ⇔ M i M j =λij∠(vi,v j ).ui M iOi +OiO+OOj +O j M j −λij∠(vi,v j ).ui =0 [R0i ][ui ]i =[R0j ][u j ]j ⇔ OOj 0 − OOi 0 +[R0j ]O j M j j −[R0i ] Oi M i i +[λij∠(vi,v j ).ui ]i =0 [ ][ ] [ ] ([ ] ) Nous devons ensuite exprimer ces équations de liaisons algébriques sous une forme différentielle du premier ordre. L’espace des torseurs transmissibles par une liaison hélicoïdale supposée parfaite est défini par : X Y Z * Gk (M j )= L M N (ui ,vi, w j ) Or les torseurs cinématiques compatibles sont caractérisés par : Ωij =ωui et V ji(M j )=λijωui . Les torseurs Gk* doivent être tels que : X λijω L ω Y . 0 + M . 0 =0⇔ Xλijω + Lω =0 Z 0 N 0 Xλij =−L X ≡ui ⇒ L≡−λijui 50 Les 5 torseurs de base Gk* 0 * 0 ui * vi * wi * G (M j )= G2(M j )= G3 (M j )= G4(M j )= G5 (M j )= −λijui 0 0 vi wi * 1 Les comoments du type c{Gk*,T ji }=0 s’expriment : ( ) i i ui. V j (M j )− λij Ω j = 0 i vi.V j (M j ) = 0 i wi.V j (M j ) =0 i vi.Ω j = 0 i wi.Ω j = 0 Les formes extrinsèques sont obtenues par les expressions dans la base Bo. Notamment : ( )( i 0 0 0 0 0 0 V j (M j )=V j (M j)−Vi (M j)= V (O j)+Ω j ∧O j M j − V (Oi)+Ωi ∧Oi M j ) 51 4.2.1.2 Liaison Rotoïde (Pivot) yj Oj xj ui ;u j zj Mi zi Mj vi Oi yi xi Il s’agit d’une liaison hélicoïdale de pas nul. Les équations algébriques sont définies par : ui.v j =0 ui =u j ou ui.wj =0 M i M j =0 Les équations différentielles s ‘expriment dans : 0 * 0 ui * vi * wi * G (M j )= G2(M j )= G3 (M j )= G4(M j )= G5 (M j )= 0 0 0 vi wi * 1 Les comoments du type c{Gk*,T ji }=0 s’expriment : i ui.V j (M j)=0 i vi.V j (M j )=0 i wi.V j (M j )=0 i vi.Ω j =0 i wi.Ω j =0 52 4.2.1.3 Liaison Prismatique (Glissière) uj yj Oj ui xj Mj vj zj Mi vi zi yi Oi xi C’est une liaison hélicoïdale de pas infini Les équations algébriques sont définies par : ui.v j =0 ui =u j ou ui.w j =0 M i M j.vj =0 M i M j.w j =0 Pour éviter que Sj ne tourne par rapport à Si autour de l’axe de la liaison il faut ajouter par exemple : vi.wj =0 M i M j ∧ui =0 ou 53 Les équations différentielles s ‘expriment dans : v i w i 0 0 0 * * * * * G1 (M j )= G2(M j )= G3 (M j )= G4(M j )= G5 (M j )= 0 0 ui vi wi Les comoments du type c{Gk*,T ji }=0 s’expriment : i ui.Ω j =0 i vi.V j (M j )=0 i wi.V j (M j )=0 i vi.Ω j =0 i wi.Ω j =0 54 4.2.1.4 Liaison cylindrique (Pivot-Glissant) uj yj Oj ui xj Mj vj zj Mi vi zi Oi yi xi Les équations algébriques sont définies par : ui =u j ou ui.v j =0 ui.w j =0 M i M j ∧ui =0 ou M i M j.vj =0 M i M j.w j =0 Les équations différentielles s ‘expriment dans : 0 * 0 vi * wi * G (M j )= G2(M j )= G3 (M j )= G4(M j )= 0 0 vi wi * 1 Les comoments du type c{Gk*,T ji }=0 s’expriment : i vi.V j (M j ) = 0 i wi.V j (M j ) = 0 i vi.Ω j = 0 i wi.Ω j = 0 55 yj 4.2.1.5 Liaison Sphérique (Rotule) ui Oj xj zj Mi Mj vi yi zi xi Oi Les équations algébriques sont définies par : MiM j = 0 Les équations différentielles s ‘expriment dans : ui G (M j ) = 0 * 1 vi G (M j ) = 0 * 2 wi G (M j ) = 0i * 3 Les comoments du type c{Gk*,T ji }=0 s’expriment : i ui .V j ( M j ) = 0 vi .V ji ( M j ) = 0 wi .V ji ( M j ) = 0 56 4.2.1.6 Liaisons composées La plupart des logiciels proposent des liaisons qui associent plusieurs des liaisons vues précédemment tels que le joint de cardan (hook) en négligeant la masse de certains composant du mécanisme (croisillon dans le cas du joint de cardan). Ces liaisons composées conduisent à des équations de liaison entre les paramètres cinématiques. Cette méthode peut également être utilisée pour simuler des mécanismes composés de solides dont la masse doit être négligée. 57 4.2.2 Couples supérieurs (contact ponctuel ou linéique) Les couples sont dits supérieurs lorsque le nombre de degré de liberté est plus grand que le nombre des torseurs transmissibles. Bien que le contact ait lieu en un point ou le long d'une courbe la nature des surfaces régit le comportement cinématique de ces couples. Actuellement, aucun logiciel ne traite correctement ce type de liaison. Seuls les cas particuliers sont disponibles au sien des logiciels (cames, roulement sans glissement …). 58 5 – Equations et coordonnées généralisées indépendantes Actions de liaison 5.1 Démarche générale 59 5.2 Degré de liberté, liberté composée et mobilité Nous avons déjà eu l'occasion d'utiliser les expressions degré de mobilité et degré de liberté. On les rencontre fréquemment dans les ouvrages de Mécanique, sans qu'elles soient toujours précisément définies. En particulier, on ne sait pas toujours si elles concernent l'ensemble du mécanisme ou certaines de ses liaisons. L'éclaircissement de ces notions est particulièrement important pour l'utilisation des logiciels de simulation des mécanismes, pour certains joints et mécanismes, le nombre de ces libertés ou mobilités peut évoluer au cours du fonctionnement. En l'occurrence, il peut augmenter transitoirement dans une position donnée. Dans le cas de chaînes ouvertes dans certaines positions, il peut diminuer. Ces positions sont dites singulières et elles peuvent occasionner quelques problèmes dans la simulation. L'hyperstatisme est étroitement lié à la cinématique et les logiciels de simulation des mécanismes sélectionnent un certain nombre d'équations de liaison indépendantes et, par conséquent, un jeu d'inconnues dynamiques principales et un jeu d'inconnues hyperstatiques prises arbitrairement égales à 0. Cette sélection résulte du choix fait dans ces logiciels d'une méthode automatique (Gauss, pivot...) et l'utilisateur n'a pas la possibilité d'influer sur ce choix. Il peut se faire que ce choix ne corresponde pas à celui qu'on aurait souhaité. Pour que l'utilisateur impose sa volonté dans ce domaine, il n'a qu'un recours : celui de rendre le mécanisme isostatique selon ses propres critères. Certains logiciels nécessitent d'ailleurs, pour fonctionner, que le mécanisme soit rendu isostatique. Nous allons donc indiquer des méthodes qui permettent d'y parvenir. 60 5.2.1. DEGRE DE LIBERTE, DE LIBERTE COMPOSE ET DE MOBILITE 5.2.1.1 Définitions Degré de liberté Il est caractéristique d'une liaison (liaison simple, entre deux solides uniquement) prise seule. C'est le nombre de paramètres libres permettant de définir un solide par rapport à l'autre . Il est invariant. Exemple Le degré de liberté de la liaison cylindrique de la figure 1 est deux, puisque le mouvement de Sj par rapport à Si peut être décrit par le déplacement de Oj le long de et par l'angle de rotation entre les solides. Nous n'insisterons pas plus sur ce point. Figure 1 - Liaison cylindrique 61 Degré de liberté composé Comme ce degré de liberté composé peut connaître des variations transitoires dans certaines configurations, il est défini à l'aide des torseurs cinématiques, caractéristiques du mouvement instantané. Ce degré de liberté composé est la dimension de l'espace des torseurs cinématiques entre deux solides non contigus dans une chaîne ouverte ou entre deux solides quelconques d'une chaîne fermée. Ø Figure 1 - Liaison cylindrique Nous utilisons l'adjectif « composé » du fait que le degré de liberté résulte d'un assemblage de plusieurs liaisons. Exemples • Dans la chaîne ouverte de la figure 2 , le degré de liberté composé entre S3 et S2 est en général 3 : , car on peut écrire le torseur cinématique entre ces deux solides comme la composition linéaire de trois torseurs géométriques généralement indépendants : Figure 2 - Assemblage de trois liaisons de révolution avec où sont successivement perpendiculaires. 62 Donc, en général, cet assemblage de trois liaisons de révolution se comporte comme une liaison sphérique dont le degré de liberté est 3. Mais les vecteurs et peuvent se trouver alignés, et les trois vecteurs coplanaires. Dans ce cas, la dimension de l'espace des 3 torseurs géométriques devient égale à 2, et . Le degré de liberté composé transitoire tombe localement à 2. Dans cette configuration, le comportement n'est plus du tout le même que dans une liaison sphérique. Plus précisément, le vecteur rotation ne peut être hors du plan défini par les trois vecteurs . Ø Figure 2 - Assemblage de trois liaisons de révolution Dans la suite, on écrira l'espace des torseurs cinématiques entre deux solides Sj et Si : (V en écriture droite), alors que le torseur est désigné par cursive). en écriture 63 Ø Figure 3 - Chaîne fermée Figure 3 - Chaîne fermée Figure 4 - Système quatre barres à deux liaisons de révolution et deux liaisons sphériques Figure 4 - Système quatre barres à deux liaisons de révolution et deux liaisons sphériques • Dans le système de la figure 3 de la chaîne fermée , composée des seuls solides S0 et S1 reliés par deux liaisons sphériques, il est clair que le degré de liberté composé entre S1 et S0 est égal à et ne peut changer. À la vérité, ici, on peut considérer que la liaison entre les deux solides est une liaison de révolution. Cet exemple élémentaire permet surtout de bien distinguer degré de liberté et degré de liberté composé : pour chacune des liaisons sphériques, le degré de liberté est égal à 3, tandis que leur composition dans cet ensemble conduit à un degré de liberté composé égal à 1. 64 Degré de mobilité Le degré de mobilité m ne concerne plus, comme précédemment, deux solides, mais un mécanisme dans son ensemble. Il s'agit du nombre maximal de vitesses généralisées qui, dans ce mécanisme, peuvent êtres choisies de façon arbitraire dans une configuration donnée. Comme le degré de liberté composé, il peut varier avec les positions. Exemples • Pour le mécanisme de la figure 4 , sans aucune démonstration, on peut comprendre que le degré de mobilité est en général égal à 2 (m = 2), alors qu'on peut faire l'inventaire des degrés de liberté composés suivants : Et, par ailleurs, le degré de liberté dans L12 et L23 reste égal à 3. Ø Figure 5 - Robot à sept liaisons de révolution Figure 5 - Robot à sept liaisons de révolution 65 Pour une chaîne ouverte , le degré de mobilité sera toujours la somme des degrés de liberté de chacune des liaisons. Pour le robot à sept liaisons de révolution de la figure 5 , le degré de mobilité est 7, alors que le degré de liberté composé entre S7 et S0 est au plus égal à 6, puisque la dimension de l'espace des torseurs est au plus égale à 6. Les exemples précédents n'ont nécessité aucun outil particulier. Mais, pour aller plus loin, nous allons présenter quelques règles précises. 66 5.2.1.2 Détermination des degrés de mobilité et de liberté composé Chaîne ouverte Comme nous l'avons déjà vu, le degré de mobilité pour une chaîne ouverte est : . Pour déterminer le degré de liberté composé, intéressons-nous au mécanisme plan de la figure 6 . Ø Figure 6 - Mécanisme plan à trois liaisons de révolution d'axes parallèles Figure 6 - Mécanisme plan à trois liaisons de révolution d'axes parallèles Dans cet exemple, le torseur cinématique s'écrit : avec Exprimons les vecteurs dans la base : 67 Alors Dans ces conditions, la dimension de l'espace est égale au rang de la plus , c'est-à-dire : grande matrice non nulle extraite des colonnes représentant Donc, en général, alignés. Alors , sauf si y 2 x 3 – x 2 y 3 = 0, c'est-à-dire si O1 , O2 , O3 sont . Mais ce degré de liberté est transitoire. On vérifie que le degré de liberté composé dépend de la configuration. On dit que lorsque O1 , O2 , O3 sont alignés, le mécanisme est dans une configuration singulière. Notons que, en revanche, cette configuration singulière n'affecte pas le degré de mobilité qui reste égal à 3. Une conséquence pour les logiciels de simulation est que, dans le cas du paramétrage relatif, les trois coordonnées qu'on choisirait, q 1 , q 2 , q 3 , resteraient toujours libres, y compris dans la configuration singulière, tandis qu'avec le paramétrage absolu, en plus des contraintes imposées aux paramètres du fait des liaisons, dans la configuration singulière, les paramètres seraient encore plus contraints. Corrélativement, les équations de liaison que le logiciel retiendra pour la résolution du problème du mouvement changeront au cours de la simulation. 68 Ø Figure 7 - Robot à six liaisons de révolution Figure 7 - Robot à six liaisons de révolution Autre exemple : robot à six liaisons de révolution (figure 7 ) Le degré de liberté composé du dernier solide par rapport à la base peut être évalué à partir du rang de la matrice J des torseurs géométriques associés à tous les degrés de liberté et réduits en O5 . On notera que et sont égaux : Or, cette matrice se présente sous la forme : et, dans un tel cas, Det J = – DetB x DetC Le robot étudié rencontrera donc des configurations singulières chaque fois que DetB=0 ou DetC=0. Or . Il y a donc singularité quand les trois vecteurs du produit mixte précédent sont coplanaires, ou encore lorsque et sont colinéaires. 69 Par ailleurs : Le robot rencontre donc de nouvelles configurations singulières pour : • , c'est-à-dire pour O5 sur l'axe ; , c'est-à-dire pour O5 , O3 , O1 alignés. • Ø Figure 8 - Chaîne fermée Figure 8 - Chaîne fermée Si, par exemple, et sont colinéaires en même temps que O5 est sur l'axe et O5 , O3 , O1 sont alignés, le degré de liberté composé transitoire de S6 par rapport à S0 sera 3. On comprend d'ailleurs intuitivement que les deux nouvelles configurations singulières trouvées introduisent des limitations du mouvement du dernier solide : si O5 est sur l'axe , lorsqu'il y a rotation dans la première liaison de révolution, O5 ne bouge pas alors que ce n'est pas le cas dans toute autre position. Et si O5 , O3 , O1 sont alignés, O5 ne peut plus avoir une vitesse de composante non nulle sur la droite qui joint ces points. 70 Chaîne fermée Les équations de liaison s'écriront, pour la configuration de la figure 8 , sous forme torsorielle : où les sont les torseurs géométriques associés aux vitesses généralisées dans toutes les liaisons. qui, eux-mêmes, sont les ; alors, parmi les , seuls les Posons d'autres termes, le degré de mobilité du mécanisme est : sont libres, ou, en (1) Alors que, pour une chaîne ouverte, le degré de mobilité est invariant, pour les chaînes fermées, celui-ci peut évoluer selon les configurations. Il peut garder la même valeur pour des valeurs des coordonnées généralisées quelconques dans un domaine large et augmenter pour des valeurs particulières de celles-ci. On parle, dans ce dernier cas, de degré de mobilité transitoire, bien que l'expression puisse être contestée dans la mesure où théoriquement, dès que le mécanisme quitte la configuration singulière, le degré de mobilité rechute. Nous reviendrons sur ce point. Ø Figure 9 - Chaîne fermée dont le total des degrés de liberté de toutes les liaisons est égal à 8 Figure 9 - Chaîne fermée dont le total des degrés de liberté de toutes les liaisons est égal à 8 71 Ø Figure 10 - Système bielle-manivelle Figure 10 - Système bielle-manivelle De la relation (1) on peut déduire que, si , le degré de mobilité est au moins égal à et donc . Pour cet 1. C'est le cas du mécanisme de la figure 9 pour lequel exemple, on comprend rapidement que m = 2 (les rotations de S2 et S3 autour de leurs axes sont libres). Mais peut être inférieur à 6 sans que le degré de mobilité soit nul. C'est le cas de tous les mécanismes plans comme le système bielle-manivelle de la figure 10 . Réduits en O, les torseurs géométriques de tous les degrés de liberté forment la matrice J : avec x 1 , y 1 , et x 2 , y 2 coordonnées dans de O1 et O2 respectivement. Le rang de J est en général 3, sauf si y 1 ou x 2 sont nuls. Le degré de mobilité est en général, comme on pouvait le penser. On voit, sur cet exemple simple de mécanisme plan, que la géométrie des mécanismes peut présenter des particularités qui expliquent son comportement. Ces particularités se traduiront dans la dépendance des équations de liaison. 72 Ø Figure 11 - Joint de Koenigs Figure 11 - Joint de Koenigs La dépendance constante entre les torseurs géométriques associés aux degrés de liberté apparaît aussi de façon évidente dans les mécanismes à point central (un point commun est lié à tous les solides). Elle apparaît aussi de façon assez claire dans d'autres combinaisons de liaison mises en évidence par la théorie des groupes de Lie explorée de façon détaillée par J. Hervé [1] . Mais il existe aussi des mécanismes pour lesquels cette dépendance continue ne peut être expliquée par des raisonnements élémentaires. Ils échappent à la théorie des groupes de Lie. Il s'agit des mécanismes dits paradoxaux, comme le mécanisme de Bennett à quatre liaisons de révolution d'axes ni parallèles ni concourants, mais dont les paramètres de Denavit-Hartenberg de chacun des solides sont liés par une relation que le simple examen visuel du mécanisme ne peut laisser entrevoir. Cette dernière catégorie comprend un assez grand nombre d'exemplaires, mais ils constituent plus des curiosités et leur application industrielle est limitée. 73 Exemples • Joint de Koenigs Reprenons l'exemple (figure 11 ) du joint de Koenigs de [AF 5 051]. La matrice des torseurs géométriques associés à tous les degrés de liberté, réduits en O, est la suivante : Les colonnes 2 et 3 correspondent respectivement aux paramètres décrivant la rotation et la translation dans la liaison cylindrique L12 . Il en est de même pour les colonnes 5 et 4 relativement à la liaison L23 . Le rang de cette matrice est au plus égal à 5 puisque seuls deux vecteurs non nuls apparaissent dans la partie supérieure. Il est en général exactement 5, car on peut montrer rapidement que les cinq premières colonnes sont indépendantes. Comme , le degré de mobilité, en général, est 1. Mais si P est sur l'axe , les quatre vecteurs non nuls de la partie inférieure de J sont dans un même plan et le rang de cette matrice tombe à 4. Le degré de mobilité transitoire est alors 2. 74 Ø Figure 12 - Configuration singulière : P en P0 sur Figure 12 - Configuration singulière : P en P0 sur Insistons particulièrement, dans cet exemple, sur l'adjectif « transitoire ». En effet, dans cette configuration singulière, la mobilité supplémentaire n'existe réellement que pour une position. Ce qui est contradictoire avec l'idée de mobilité. Et l'on pourrait, de ce fait, récuser l'idée de cette mobilité supplémentaire. Néanmoins, assortie de l'adjectif « transitoire », on peut l'accepter, d'autant plus que dans la pratique, en raison des jeux, le domaine de variation que ceux-ci permettent aux paramètres, autour de leurs valeurs exactes, est très fortement amplifié dans une configuration singulière comme celle-ci et précisément pour les mobilités supplémentaires. Par ailleurs, du point de vue de la statique, son comportement est le même que s'il y avait cette mobilité additionnelle. On pourrait montrer, en effet, en isolant tous les solides successivement que, dans cette position, quel que soit le couple exercé à l'une des sorties, aucun couple ne peut équilibrer l'autre, comme s'il y avait bien deux degrés de mobilité. On comprend, en tout cas, que dans cette position et même dès avant d'y être, pour éviter les erreurs de troncature, les logiciels devront changer de jeux d'équations et de coordonnées généralisées libres. 75 Si, de plus, dans une simulation, ce mécanisme est mis en position initiale de repos dans la configuration singulière trouvée, la plupart des logiciels ne pourront pas commencer les calculs. En effet, une analyse au-delà du premier ordre, comme celle qui vient d'être faite, montrerait que le mécanisme peut évoluer selon deux modes. Ces deux modes apparaissent en s'intéressant à la trajectoire du point P (figure 12 ). Cette trajectoire est l'intersection de deux cylindres d'axes et et de même rayon R , la longueur commune des bras de S1 et S3 . Or l'intersection de ces cylindres est composée de deux ellipses 1 et 2 situées dans les deux plans bissecteurs – orthogonaux – , qui se coupent en P0 sur Ø Figure 13 - Joint de Hooke et du dièdre . Figure 13 - Joint de Hooke Cette intersection correspond précisément à la position de P lorsque le mécanisme est dans sa configuration singulière. Dans cette configuration, le logiciel analyse les premiers membres des équations de liaison au second ordre qui sont les mêmes que ceux des équations de liaison au premier ordre. Il retiendra donc la conclusion d'un mécanisme à deux degrés de mobilité ; or le degré de mobilité large (par opposition à transitoire) est un : P peut évoluer sur l'une des ellipses ou sur l'autre. Il sera donc confronté rapidement à une impossibilité. 76 • Joint de Hooke Le joint de Hooke de la figure 13 est un mécanisme à point central puisque le point O est fixe dans tous les solides S0 , S1 , S2 , S3 . Comme tous les mécanismes de ce type, la matrice de ses torseurs géométriques, réduits en O et associés à tous ses degrés de liberté, prend la forme très simple : Toutes les parties inférieures (les moments) sont nulles. On n'a plus à raisonner que sur des vecteurs de l'espace à trois dimensions. Le rang des torseurs géométriques est donc au plus 3, comme pour le mécanisme plan. Dans le cas présent, en général les quatre vecteurs ne sont pas coplanaires et sont donc de rang 3. Le degré de mobilité est donc 1 en général. Cependant, si = , le mécanisme peut se trouver dans une position telle que soit confondu avec et que se trouve dans le plan . Alors les quatre vecteurs sont coplanaires et le degré de mobilité transitoire est 2. Comme pour l'exemple du joint de Koenigs, ces deux degrés de mobilité transitoire correspondent à deux modes de fonctionnement possibles. 1.2.2.2 Degré de liberté composé Revenons à la figure 8 représentant un mécanisme quelconque en chaîne fermée ne présentant qu'une seule boucle. Le degré de liberté composé entre les solides Sj et Si est la dimension de l'espace des torseurs cinématiques entre ces deux solides compatibles avec toutes les liaisons. Or ces solides sont les extrémités de la chaîne a : Ø Figure 14 - Système bielle-manivelle en un point mort Figure 14 - Système bielle-manivelle en un point mort 77 À ce titre, les torseurs entre Sj et Si appartiennent à l'espace des torseurs cinématiques compatibles avec les liaisons de cette chaîne ouverte : Mais ces solides sont aussi les extrémités de la chaîne b : et l'on a aussi : En conséquence, l'espace des torseurs compatibles avec toutes les liaisons du mécanisme, qu'on écrira , est l'intersection des deux espaces précédents : Dans ces conditions, le degré de liberté composé entre Sj et Si est : Mais est l'espace des torseurs compatibles avec a et b mises bout à bout sans être refermées. Sa dimension n'est autre que r utilisé précédemment pour déterminer m . D'où : Dans l'expression précédente, il faut comprendre le degré de liberté composé de la façon suivante : et sont les degrés de liberté composés entre les solides Sj et Si considérés comme extrémités des chaînes simples a et b extraites du mécanisme à boucle. est le degré de liberté composé entre les mêmes solides inclus dans le mécanisme à boucle initial. Dans la suite, cette désignation sera systématiquement reprise. 78 Exemples • Système bielle-manivelle en un point mort (figure 14 ) Le point mort est caractérisé par l'alignement des points O1 , O2 , O3 . Les torseurs géométriques associés aux degrés de liberté, réduits en O1 sont : Les trois premiers sont dépendants, leur rang est 2. Mais c'est aussi le rang de deux quelconques d'entre eux. Par ailleurs, et deux des trois premiers torseurs géométriques sont toujours de rang 3. Dans ces conditions, on peut trouver les degrés de liberté composé suivants : l avec Or d'où l avec Or d'où Ces résultats sont conformes à l'idée intuitive qu'on a de ce mécanisme dans cette position. Ils montrent aussi que, si le degré de mobilité est 1, celui-ci ne peut être choisi arbitrairement. Par analyse de la dépendance des équations de liaison, le logiciel de simulation fera automatiquement ce choix. 79 • (figure 15 ) Joint de Hooke quand Procédons à la même analyse pour le joint de Hooke dans le cas où mais hors du plan , . Figure 15 - Joint de Hooke pour Ø Figure 15 - Joint de Hooke pour l avec Or 80 d'où l avec Or d'où l avec Or d'où On peut en déduire que, dans ce cas, l'ensemble solide. se comporte comme un l avec Or d'où 81 La seule mobilité est la rotation de l'ensemble . Dans le cas où les quatre axes sont dans un même plan, m = 2. Si l'on reprenait l'analyse des degrés de liberté composés, on aurait : . En fait, il y a deux modes, comme il a été indiqué : rotation de l'ensemble ou fonctionnement normal, c'est-à-dire transmission de la rotation de S3 jusqu'à S1 . Comme on le voit, ces méthodes d'analyse permettent d'éclairer les résultats d'une simulation et les problèmes qu'on peut y rencontrer. 82 5.3 Torseur statiquement admissible et mouvements incompatibles 83 5.4 Détermination des actions de liaison 84 6 – Equations de la dynamique 85 7 – Résolution des équations 7.1 Mise en forme du système algébro – différentiel 7.1.1 réduction du système différentiel au premier ordre Les chapitres précédents ont permis de mettre le système mécanique sous la forme : A C CT 0 ɺqɺ − λ Q +B = d D(q, qɺ , t ) Les méthodes résolution numériques nécessite de réduire le système différentiel à un système du premier ordre en augmentant la taille du système à traiter : le système initial possède [ n (ddl) + L (liaisons)] équations ; l'introduction des vitesses articulaires en variables intermédiaire conduit à un système à 2n+L équations. [ x ] = [ qɺ ] I 0 0 0 A C 0 T C 0 qɺ xɺ − λ x = Qd + B D Le système est donc composé d'équations différentielles (2 premières lignes) et d'équations algébrique qui ne font pas intervenir la dérivée des inconnues (multiplicateurs de Lagrange λ). La forme obtenue est implicite : les lignes 1 et 2 ne permettent pas d'exprimer [ qɺ ] et [ xɺ ] en fonction de [q] , [x] et [λ]. Le système différentiel peut être transformé en explicite de la forme : Qɺ = F ( Q, λ , t ) en inversant la matrice A : qɺ I n xɺ = 0 x 0 . A−1 Qd + B + C T .λ La tâche essentielle d'un solveur reste l'intégration numérique du modèle de simulation sous sa forme implicite ou explicite. Cette tache consiste en une discrétisation dans le temps des équations du modèle de simulation. L'intégration correspond alors au calcul de proche en proche à partir des conditions initiales, des valeurs de la solution des équations discrétisées. 86 Les méthodes numériques repose essentiellement sur l'approximation des dérivées des variables à intégrer. Cette approximation permet de calculer numériquement les variables à intégrer [yi+1] à l'instant ti+1 à partir des variables [yi+1] à l'instant ti. Le pas d'intégration h est défini par ti+1 - ti . Les méthodes qui permettent la résolution numérique sont abordées en 7.2. Ces méthodes génèrent une erreur due à l'approximation et une erreur due à l'arrondi machine. Ces erreurs sont à l'origine des divergences éventuelles par rapport à la solution exacte. 87 7.1.2 Formulation différentielle des systèmes algébro - différentiels 7.1.2.1 Méthodes analytiques spécifiques Le système est dit ordinaire lorsqu'il ne comporte que des équations différentielles ordinaires. Une première méthode consiste en un traitement analytique des équations de départ. Cette démarche est classiquement utilisée en mécanique générale et conduit à ne retenir que des variables différentielles indépendantes et des inconnues de liaison indépendantes. Dans le cas du pendule la résolution numérique pas à pas est entièrement déterminée par une seule équation différentielle du second ordre qui peut être mise sous la forme de 2 équations différentielles du 2ème ordre : g αɺɺ = − sin(α ) L αɺ = β ⇔ g ɺ β = − L sin(α ) Bien que satisfaisante, cette méthode ne peut que difficilement être généralisé pour tout mécanisme, chaque mécanisme faisant l'objet de traitements analytiques spécifiques. Les développements actuels des logiciels multicorps portent sur cette automatisation du traitement analytique des équations initiales et se base sur des moteurs symboliques qui réalisent le traitement analytique à partir de bibliothèques. 88 7.1.2.2 Formulation différentielle des équations de liaison La partie algébrique des systèmes algébro-différentiels provient des équations de liaisons. La dérivation des équations de liaison conduit à une formulation différentielle qui conduit à l'expression des inconnues de liaison (multiplicateurs de Lagrange λ) en fonction des variables cinématique non dérivées (au sens du système différentiel d'ordre 1). Le système différentiel est défini par : x 0 . A−1 Qd + B + C T .λ qɺ I n xɺ = 0 La 3ème ligne s'exprime sous forme différentielle : [C ][ xɺ ] = [ D ] La deuxième ligne conduit à : [ xɺ ] = A−1 [Qd ] + [ B ] + C T [λ ] les deux équations précédentes permettent d'établir : [C ] A−1 [Qd ] + [C ] A−1 [ B ] + [C ] A−1 C T [λ ] = [ D] λ est donc défini par : [λ ] = [C ] A −1 −1 C [ D ] − [C ] A−1 [Qd ] − [C ] A−1 [ B ] T En introduisant les multiplicateurs de Lagrange dans le système différentiel, il suit : [ xɺ ] = A−1 [Qd ] + [ B ] + C T [C ] A−1 C T [ D ] − [C ] A−1 [Qd ] − [C ] A−1 [ B ] −1 Le système complété de [C ][ xɺ ] = [ D ] constitue une système différentiel ordinaire explicite du premier ordre dont la résolution numérique permet dans un deuxième temps le calcul des inconnue de liaisons : −1 [λ ] = [C ] A−1 C T [ D ] − [C ] A−1 [Qd ] − [C ] A−1 [ B ] Cette méthode simple reste très sensible aux perturbations numériques et conduit à la perte d'informations géométriques constitutives du système. Exercice : Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du premier ordre par la méthode la formulation différentielle des équations de liaison 89 7.1.3 Reformulation analytique des systèmes algébro - différentiels Quatre méthodes sont présentées : les deux premières (partition des coordonnées et méthode de projection) visent une formulation en coordonnées indépendantes avec élimination des multiplicateurs de Lagrange. Les deux dernières, dons une formulation en coordonnées indépendantes mettent en œuvre un relâchement des contraintes cinématique pour la "stabilisation de Baumgarte", dynamique pour la méthode des pénalités". 7.1.3.1 partition des coordonnées Les coordonnées généralisée [q] sont partitionnées en coordonnées indépendantes [v] et en cordonnées dépendantes [u] (dépendante de [v]) Le système algébro-différentiel est résolu numériquement sur les coordonnées indépendantes. Les coordonnées dépendantes sont obtenue algébriquement à partir des cordonnées indépendantes. u q = [ ] v Les équations de liaison aux différents ordres s'expriment : c ( u, v, t ) = [ 0] [Cu ][uɺ ] + [Cv ][vɺ] = [ d ] [Cu ][uɺɺ] + [Cv ][vɺɺ] = [ D] Dans l'hypothèse ou la matrice Jacobienne [Cu] est non singulière sur un domaine de l'espace vectoriel des variables indépendantes le système peut être exprimé par : [u ] = h ( v, t ) −1 −1 [uɺ ] = [Cu ] [ d ] − [Cu ] [Cv ][vɺ] −1 −1 [uɺɺ] = [Cu ] [ D ] − [Cu ] [Cv ][vɺɺ] 90 La formulation implicite de Jacobie devient alors : Auu Avu Cu Auv Avv Cv CuT uɺɺ Qdu + Bu CvT vɺɺ = Qdv + Bv 0 λ D La première ligne conduit à une formulation explicite des multiplicateurs de Lagrange ([Cu] est supposée non singulière) : [λ ] = CuT −1 ([Q ] + [ B ] − [ A ][uɺɺ] − [ A ][vɺɺ]) du u uu uv En introduisant cette équation dans la deuxième ligne et en utilisant la relation de dépendance entre [u] et [v] nous obtenons un système différentiel ordinaire du second ordre en terme de cordonnées généralisées indépendantes [v] : Aˆ [ vɺɺ] = Qˆ avec ... −1 Aˆ = [ Avv ] − [ Avu ][Cu ]−1 [Cv ] + CvT CuT [ Auu ][Cu ]−1 [Cv ] + [ Auv ] ( ( ) −1 Qˆ = [Qdv ] + [ Bv ] − [ Avu ][Cu ]−1 [ D ] − CvT CuT [Qdu ] + [ Bu ] − [ Auu ][Cu ]−1 [ D ] La réduction du système différentiel du second ordre en un système du premier ordre conduit à : [ vɺ ] = [ w] Aˆ [ vɺɺ] = Qˆ ⇔ −1 ˆ Qˆ ɺ w = A [ ] Le conditionnement de la Jacobienne peut conduire à des singularités locales. La solution consiste à réaliser d’autres partitions des variables indépendantes et de répartir les domaines de simulation afin de disposer en toute configuration d’une matrice Jacobienne non singulière. La résolution numérique impose alors de basculer d’un système à un autre selon les domaines de simulation parcourus par le mécanisme. Exercice : Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du premier ordre par partition des coordonnées 91 ) 7.1.3.2 méthode de projection Cette méthode est très proche de la précédente. Les coordonnées dépendantes [q] sont liées par une relation d’algèbre linéaire aux coordonnées indépendantes [z] : [ qɺ ] = [ R][ zɺ ] [R] est la matrice de projection Les équations de liaison au premier ordre sont définies par : [C ][ qɺ ] = [0] ⇔ [C ][ R][ zɺ ] = [0] ⇔ [C ][ R] = [0] Le rang de [R] est la dimension de l’espace des solutions du système d’équations linéaires [C ][ qɺ ] = [ 0] : les équations de liaison sont une application linéaire engendrée par les vecteurs colonnes de la matrice [R]. L’objectif est alors de déterminer [R]. Pour cela, nous introduisons la matrice booléenne d’extraction [IB] définie comme la juxtaposition d’une matrice nulle (non nécessairement carrée) et d’une matrice identité (de la taille (Ni) du nombre de coordonnées indépendante) : 0 ⋯ [ I B ] = ⋮ ⋱ 0 ⋯ 0 ⋮ 0 1 ⋯ ⋮ ⋱ 0 ⋯ 0 ⋮ [Ni x N] 1 En distinguant les coordonnées indépendantes des coordonnées dépendantes nous obtenons : qɺ qind [ I B ] ɺdép = [ qɺind ] = [ zɺ ] de plus : qɺ qind [C ] ɺdép = [C ][ qɺ ] = [ 0] Les deux équations précédentes peuvent donc se regrouper sous une même forme : C 0 ɺ q = [ ] I zɺ B C : [(N-Ni) x N] En inversant cette relation et en utilisant la définition de la matrice R nous obtenons : −1 C 0 [ qɺ ] = ɺ = [ S ][0] + [ R][ zɺ ] = [ S ] IB z 0 z [ R] ɺ 92 C L’inversion de la matrice I B permet de déterminer la matrice [ S ] [ R ] qui est utilisée pour exprimer le système d’équations par la méthode de projection. C L’inversibilité de la matrice I B ne dépend que de la matrice bloc diagonale supérieure [Cdép]. C Cdép = IB 0 Cind I Cette condition sur [Cdép] est tout à fait équivalente à la condition de régularité de la Jacobienne [Cu] de la méthode précédente. C C 0 D Par dérivation de [ qɺ ] = il suit : [ qɺɺ] = z zɺ ɺɺ IB IB −1 C D ɺɺ q = [ ] Par inversion : I ɺɺ = [ S ] B z D z [ R] ɺɺ Par multiplication des équations différentielles par la matrice [R]T et en introduisant l’équation précédente : [ R] [ A][ qɺɺ] − [ R] [C ] [λ ] = [ R] ([Qd ] + [ B]) T T z ]) − [ 0][ λ ] = [ R ] ([Qd ] + [ B ]) ⇔ [ R ] [ A] ([ S ].[ D ] + [ R ][ ɺɺ T T T ⇔ [ R ] [ A][ R ][ ɺɺ z ] = [ R ] ([Qd ] + [ B ]) − [ R ] [ A][ S ].[ D ] T T T T Nous disposons donc d'un système différentiel ordinaire du second ordre explicite, la résolution se conduit de façon similaire à la méthode précédente. A chaque instant, à partir des coordonnées indépendantes les coordonnées dépendantes sont calculée grâce aux équations de liaison à l'ordre 0 et 1. La matrice C étant déterminée, les matrices [R] et [S] peuvent être calculées à partir de l'inversion de C I B . Les équations différentielle sont alors actualisées puis intégrée pour obtenir les coordonnées indépendantes et leur vitesse à l'instant suivant. Exercice : Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du premier ordre par partition des coordonnées Exercice : Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du second ordre par la méthode de projection. Rappels : déterminant et inversion de matrice en Annexe 1 93 7.1.3.3 stabilisation de Baumgarte L'idée de Baumgarte est de réintroduire les information sur les contraintes géomètriques et cinématique dans le système en remplaçant les équations de liaison au second ordre par le schéma de contrôle suivant : [ cɺɺ] + 2 [α ][cɺ] + [ β ] [ c] = 0 2 Rappel : [c] représente les équations de liaison. Dans cette expression correspondant à des équations différentielles du second ordre en termes des variables [c], les matrices [α ] et [ β ] diagonale définie positives. Leurs éléments α k et β k représente respectivement les coefficients d'amortissement et les pulsations naturelles des réponses impulsionnelles. Le choix de ces coefficients détermine l'effet stabilisateur sur les réponses. Un bon compromis consiste à retenir les régimes apériodiques critiques obtenus pour α k = β k ce qui évite des réponses avec oscillation tout en préservant le temps de réponse. Classiquement, les valeurs sont choisies entre 1 et 20. Par principe le schéma de stabilisation tend à respecter les équations c et leurs 2 dérivées successives. Toutefois ces équations ne sont pas strictement respectées : leur égalité à 0 n’est donc plus vraie contrairement aux méthodes précédentes. En conséquence les coefficients multiplicateurs scalaires résultants des dérivations successives ne doivent plus être simplifiés. Par exemple : c = x 2 + z 2 − L2 (c → 0) Devient après dérivation : cɺ = 2 xxɺ + 2 zzɺ avec (cɺ → 0) … cɺ ≠ xxɺ + zzɺ Le système de Jacobie devient donc : A C T qɺɺ Qd + B = 2 D − 2α cɺ − β c C 0 λ Soit : A.qɺɺ + C T .λ = Qd + B 2 C.qɺɺ = D − 2α cɺ − β c D’où : qɺɺ = A−1 ( Qd + B ) − C T .λ C. A−1 ( Qd + B ) − C. A−1C T .λ = D − 2α cɺ − β 2c Donc : −λ = ( C. A−1.C T ) ( D − 2α cɺ − β 2c ) − C. A−1 ( Qd + B ) −1 qɺɺ = A−1 Qd + B + C T . ( C. A−1.C T ) ( D − 2α cɺ − β 2 c ) − C. A−1 ( Qd + B ) −1 Exercice : Dans le cas du pendule simple, définir le système implicite du second ordre par stabilisation de Baumgarte 94 7.1.3.4 Méthode des pénalités Le principe de la méthode est de relâcher physiquement les contraintes en leur associant des degrés de liberté. Des termes cinétiques, potentiel et dissipatifs sont alors ajoutés au Lagrangien pour prendre en compte ces ddl supplémentaires. Il en résulte un système différentiel ordinaire dû à la disparition des contraintes. Les équations de liaisons nous ont permis d'établir : c ( q, t ) = 0 cɺ ( qɺ , q, t ) = 0 ⇔ [C ][ qɺ ] − [ d ] = [ 0] cɺɺ( qɺɺ, qɺ , q, t ) = 0 ⇔ [C ][ qɺɺ] − [ D ] = [ 0] La méthode des pénalités considère des fonction fictives (virtuelles) en terme des variables [ c ] et [ cɺ ] . Ainsi, des termes fictifs d'énergie cinétique Tɶ , d'énergie ɶ sont ajoutés au lagrangien. potentielle Vɶ et de fonction de Rayleigh (dissipation) Φ a Si nous considérons des systèmes masse, ressort et amortisseur associés à ces fonctions fictives et installés sur les contraintes, [ Ω ] et [ µ ] sont des matrices diagonales positives représentant respectivement les pulsations naturelles et amortissements de ces systèmes. [α ] est une matrice diagonale à très grande valeurs réelles : ce sont les pénalités. Ce point de vue correspond à une non idéalisation des contraintes entre les coordonnées généralisées. Les pénalités sont choisies pour conserver le caractère réaliste entre les amplitudes dynamiques observées et celles des dynamiques introduites par les fonctions fictives. Paramètres [Ω] [α] [αΩ2] [αΩµ] Valeur initiale conseillée ε =1 ε =1 µ=1 (à ajuster) Rad.s-1 kg.m2 N.m N.m.s Rad.s-1 kg N.m-1 N.m-1.s Ω =1 (à ajuster) α =107(à ajuster) Définition Pulsation Masse généralisée Rigidité généralisée Amortissement Généralisé 95 L'introduction des termes fictifs précédents amène à évaluer un terme contribuant au lagrangien total du système : Lɶ = Tɶ − Vɶ Les équations de Lagrange conduisent alors à : T ∂L~ = ∂cɺ [α ][cɺ] ∂qɺ ∂qɺ [] T T d ∂L~ = d ∂cɺ [α ][cɺ]+ ∂cɺ [α ][cɺɺ]= Cɺ T [α ][cɺ]+[C ]T [α ][cɺɺ] dt ∂qɺ dt ∂qɺ ∂qɺ [] T T ∂L~ = ∂cɺ [α ][cɺ]− ∂c [α ][Ω]2[α ]= Cɺ T [α ][cɺ]−[C ]T [α ][Ω]2[c] ∂q ∂q ∂q en utilisant les propriétés suivantes : ∂cɺ = ∂c =[C ] ∂qɺ ∂q [] ∂cɺ = ∂ dc = d ∂c = Cɺ ∂q ∂q dt dt ∂q La fonction dissipative de Rayleigh intervient au niveau des forces généralisées. Ces termes sont évalués par la puissance virtuelle développée par ces actions. [] ~ T T T T ~ P *=−2[cɺ*] [α ][Ω][µ ][cɺ]=−2[qɺ*] [C ] [α ][Ω][µ ][cɺ]=[qɺ*] Q [Q~]=−2[C ] [α ][Ω][µ ][cɺ] T 96 Dans le cas d’une résolution par la méthode des pénalités, les équations de Lagrange deviennent : [A][qɺɺ]+[C ]T [α ][( cɺɺ]+2[Ω][µ ][cɺ]+[Ω]2[c])=([Qd ]+[B]) Or, c ( q, t ) = 0 cɺ ( qɺ , q, t ) = 0 ⇔ [C ][ qɺ ] − [ d ] = [ 0] cɺɺ( qɺɺ, qɺ , q, t ) = 0 ⇔ [C ][ qɺɺ] − [ D ] = [ 0] Comme dans le cas de la stabilisation de Baumgart, par principe le schéma de résolution tend à respecter les équations c et leurs 2 dérivées successives. Toutefois ces équations ne sont pas strictement respectées : leur égalité à 0 n’est donc plus vraie contrairement aux méthodes de partition et de projection. En conséquence les coefficients multiplicateurs scalaires résultants des dérivations successives ne doivent plus être simplifiés. Par exemple : c = x 2 + z 2 − L2 (c → 0) Devient après dérivation : cɺ = 2 xxɺ + 2 zzɺ avec (cɺ → 0) … cɺ ≠ xxɺ + zzɺ Le système peut lors se présenter sous une forme différentielle ordinaire : les contraintes ont été relâchées : ([A]+[C ] [α ][C ])[qɺɺ]=[Qd ]+[B]+[Q~]+[B~] T Avec... [B~]=[C ] [α ][D]−[C ] [α ][Ω] [c] [Q~]=−2[C ] [α ][Ω][µ ][cɺ] T T 2 T Finalement … [ qɺɺ] = ([ A] + [C ] [α ][C ]) ([Qd ] + [ B ] + Qɶ + Bɶ ) T −1 soit qɺ = p pɺ = ([ A] + [C ] [α ][C ]) ([Qd ] + [ B] + Qɶ + Bɶ ) = [ AA] .[ BB ] T −1 −1 [Ω] et [µ ] correspondent respectivement aux pulsations naturelles et amortissement. Ces coefficients sont choisis de sorte à limiter les transitoires qui leurs sont inhérents. [α ] est choisi de l’ordre de 107 fois plus grand que le plus grand des terme de [A]. Exercice : Appliquer la méthode des pénalités au cas du pendule pour obtenir un système différentiel ordinaire du second ordre 97 7.2 Résolution numérique du système algébro – différentiel 98 8 – Conclusion 99 Annexe 1 Déterminant et inversion d'une matrice carrée Pour une matrice 2 × 2, on montre que la matrice inverse est donnée par : Le nombre ad - bc est appelé déterminant de la matrice A, noté : La matrice inverse A-1 n'existe donc que si det A est différent de zéro. La matrice A est singulière si det A = 0, régulière dans le cas contraire. Ce résultat se généralise à une matrice de dimension quelconque. Le déterminant peut se calculer de manière récursive. Par exemple, pour n = 3, on a , en développant par rapport à la première ligne : Dans ce développement, chaque déterminant d'ordre 2 est appelé mineur du terme qui le précède. Par exemple, le mineur de a est : On peut développer le déterminant par rapport à n'importe quelle ligne ou colonne. Pour chaque élément aij de la ligne ou colonne choisie : • le mineur est le déterminant de la sous-matrice obtenue en supprimant la ligne i et la colonne j • le signe du produit est donné par le tableau : +-+ -++-+ Cette méthode est valable pour un déterminant de taille quelconque. En fait pour n > 3, il vaut mieux utiliser un algorithme spécifique tel que l'algorithme de décomposition LU. 100 Propriétés des déterminants : • det(AT) = det(A) • det(AB) = det(A) × det(B) • Le déterminant d'une matrice triangulaire ou diagonale est égal au produit des éléments diagonaux. En particulier, det(I) = 1 (si I est la matrice unité) • Si A est régulière, det(A-1) = 1 / det(A) puisque det(AA-1) = det(A) × det(A-1) = det(I) = 1 • Si A est orthogonale, det(A) = ±1 puisque det(AAT) = [det(A)]2 = det(I) = 1 101