FR 3052861 A1 20171222 FR 1655741 A 20160620 1 DOMAINE TECHNIQUE AUQUEL SE RAPPORTE L'INVENTION La présente invention concerne de manière générale le domaine des systèmes de test notamment destinés à des équipements de mesure pouvant être soumis à des mouvements et qui sont testés en étant soumis à des mouvements contrôlés. Elle concerne plus particulièrement un procédé de compensation des couples de Coriolis, centrifuges et de gravité dans un simulateur de mouvement. Un système comportant un simulateur de mouvements adapté à réaliser cette compensation complète l'invention. ETAT DE L'ART Les simulateurs de mouvements sont des machines tournantes destinées à tester des équipements comportant en particulier des composants inertiels, par exemple des gyromètres, accéléromètres et centrales inertielles. En fonction des tests à effectuer sur ces composants, l'utilisateur peut avoir recours à des simulateurs constitués de 1, 2, 3 voire 4 articulations imbriquées les unes dans les autres, dans une structure mécanique s'apparentant à celle d'un cardan. Chacune des articulations dudit simulateur possède au moins un actionneur, qui en général est un moteur électrique dont on commande le couple. Ce moteur électrique peut être un moteur à courant continu, un moteur à courant alternatif, avec ou sans balai (brushless). L'actionneur peut parfois être de type hydraulique, la commande se faisant alors par l'intermédiaire d'un fluide dont les paramètres sont contrôlés (notamment la pression, le débit). Les positions angulaires des articulations sont mesurées au moyen de capteurs de position pouvant être en particulier des codeurs incrémentaux. Dans certains cas, des capteurs de vitesse angulaires sont également présents sur ces machines, par exemple avec un tachymètre. Les positions et/ou vitesses angulaires sont asservies grâce à une loi de commande avec correcteur implémenté dans un calculateur programmable, typiquement un micro-ordinateur et/ou un équipement informatique de traitement de signaux numériques (DSP). A partir des consignes de positions/vitesses fournies par l'utilisateur via un générateur de trajectoire, et à partir des mesures de positions ou vitesses angulaires, la loi de commande fournit une commande, en particulier de couple, qui est appliquée sur l'amplificateur du moteur de chacune des articulations. Les simulateurs de mouvements sont des machines de test, et pour cette raison, leurs axes asservis doivent suivre des consignes de position et de vitesse avec une grande précision. Si le simulateur de mouvements possède au moins deux articulations, des phénomènes mécaniques d'interaction entre les articulations surviennent. Ces phénomènes sont nommés couplages. Cela signifie que la position/vitesse d'une articulation n'est pas totalement indépendante des positions/vitesses des autres 3052861 2 articulations qui provoquent des couples perturbateurs sur ladite articulation. Dans le vocabulaire des automaticiens, un simulateur de mouvements est un système intrinsèquement multivariable. Ces couplages sont aisément modélisables, car ils correspondent à des phénomènes physiques bien connus. Ces couplages sont 5 non-linéaires et résultent des couples de Coriolis, centrifuges, et de gravité. Les simulateurs de mouvements classiques incorporent des lois de commande qui généralement sont dites monovariables : cela signifie que la commande de couple produite par l'asservissement d'une articulation n'est établie qu'à partir de la position ou vitesse de consigne et la position ou vitesse mesurée 10 de ladite articulation. En particulier, les positions et vitesses des autres articulations ne sont pas explicitement prises en compte dans ces lois de commande classiques. La figure 1 de l'état de la technique, qui sera décrite en détail plus loin, et qui représente un simulateur comprenant trois articulations avec sa commande utilisant des correcteurs, schématise cet état de fait. 15 Aussi, les lois de commande classiques des simulateurs ne compensent-t- elles les phénomènes non-linéaires de couplage qu'indirectement : les couplages sont perçus par le correcteur comme une perturbation sur le couple de l'articulation et cette perturbation est compensée - plus ou moins bien - par le correcteur, en fonction de sa réponse fréquentielle. 20 Dans certains modes de fonctionnement particuliers du simulateur de mouvements, en particulier si les vitesses de rotations de plusieurs articulations sont simultanément élevées, plusieurs centaines de °/s (degrés par seconde), les phénomènes de couplages peuvent compromettre gravement les performances en stabilité de vitesse de chacune des articulations du simulateur. Cela, même si 25 les lois de commandes monovariables ont des performances dynamiques optimales. Compte tenu des fortes exigences en termes de performance et de stabilité de position et vitesse des simulateurs de mouvements, il est donc indispensable de développer des lois de commande qui permettent de prendre en compte 30 explicitement toutes les articulations et leurs couplages. A cette fin, les lois de commande multivariables sont particulièrement indiquées. Grâce à ce type de loi de commande, la commande en couple d'une articulation issue du correcteur dépend non seulement de la position et/ou vitesse de ladite articulation, mais également des positions et/ou vitesses des autres 35 articulations. Une loi de commande multivariable, par définition, prend en compte de façon explicite ces phénomènes de couplage, afin de les compenser au mieux et d'en atténuer de façon significative les effets néfastes. 3052861 3 ARRIERE-PLAN TECHNOLOGIQUE Dans le domaine de la robotique, la question de la compensation des couples de Coriolis, centrifuges et de gravité a été abordée dans un certain nombre de publications. 5 On peut en particulier mentionner la méthode dite des couples calculés, les méthodes basées sur la théorie de la passivité, ou encore les méthodes basées sur les principes de Lyapounov d'analyse de la stabilité. Cependant, ces méthodes supposent qu'on dispose d'un modèle dynamique complet du robot, par exemple obtenu par identification. Dans les cas où les paramètres dudit modèle 10 ne sont pas connus, on est contraint d'avoir recours à des techniques adaptatives, permettant d'estimer en ligne/temps réel ces paramètres. Les techniques adaptatives les plus classiques sont celles qui reprennent des concepts adaptatifs développés pour les systèmes linéaires (par exemple Horowitz et al. : « Model referenced adaptive control of a two axes direct drive manipulator arm », Proc. 15 IEEE international conference on robotics and automation, Ralegh, 1987). D'autres méthodes utilisent des principes basés sur la formulation d'un découplage non-linéaire et une commande adaptative linéarisante (J. Craig : « Adaptive control of mechanical manipulators, Proc. IEEE, International conference on robotics and automation, 1986). On peut encore mentionner des techniques 20 basées sur la formulation d'une commande adaptative basée sur les propriétés de passivité des robots (Slotine et Li : « Applied non linear control, Prentice Hall, 1991). Toutes ces techniques sont développées dans le cadre général de la robotique, et elles sont donc basées sur les contraintes rencontrées en robotique. 25 Or dans le domaine des simulateurs de mouvements, les contraintes et spécificités sont différentes, en particulier la possibilité qu'il n'y ait aucune contrainte minimale ou maximale de position angulaire. Cette propriété permet en particulier de maintenir pendant un long intervalle de temps des mouvements axiaux à vitesse constante, et elle est exploitée dans la présente invention. Une 30 autre particularité d'un simulateur de mouvements est qu'il possède de nombreuses symétries et qu'en règle générale, les multiples axes de rotation sont concourants, ce qui simplifie le modèle et permet, la plupart du temps, de considérer la matrice d'inertie du modèle dynamique comme constante ou quasi constante. 35 OBJET DE L'INVENTION Afin de remédier à l'inconvénient précité de l'état de la technique, la présente invention propose un procédé de compensation de couples perturbateurs pour un simulateur de mouvements, ledit simulateur comportant des articulations 3052861 4 commandées par des organes effecteurs selon des axes j en fonction de consignes 05 de mouvements sur les axes, chaque organe effecteur d'un axe donné spécifique de l'organe effecteur recevant une commande U1 et un capteur de l'axe mesurant Oi l'action de l'organe effecteur selon ledit axe j, le simulateur 5 étant dans un système comportant pour chaque axe une loi de commande avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit bloc correcteur monovariable de fonction de transfert Corr(q-1) recevant en entrée un signal d'écart entre la consigne 05 et la mesure Oi pour l'axe correspondant et produisant en sortie la commande U1. 10 Selon l'invention, les couples perturbateurs sont des couples de Coriolis, centrifuges et de gravité et on met en oeuvre pour chaque axe, une loi de commande comportant, en outre du bloc correcteur monovariable par axe, une loi de compensation non-linéaire et multivariable combinée aux correcteurs monovariables, la loi de compensation calculant en fonction de la commande U1 15 une estimation Pj(t) des couples perturbateurs, ladite estimation Pj(t) étant injectée à la commande U1 envoyée à l'organe effecteur pour compenser les couples perturbateurs, et l'estimation Pj(t) des couples perturbateurs est calculée à partir de la valeur d'un signal d'erreur E1 (t) qui est une version filtrée de la commande (Ji par un filtre de transmittance H(q-1) destiné à éliminer au moins la 20 composante continue de la commande et on modélise préalablement le simulateur de mouvement afin d'obtenir un modèle dynamique exprimant les couples de façon affine par rapport à un ensemble de paramètres de base x suivant une relation matricielle du type : crif (0, B, tj)xi , l'indice j correspondant aux différents axes, on détermine suite à la modélisation préalable du simulateur un sous- 25 ensemble c des paramètres de base correspondant à des couples perturbateurs ayant un niveau supérieur à un seuil de perturbation déterminé, l'estimation Pj(t) des couples perturbateurs étant calculée par : Pj(t) = (9,61)a,, et on calcule en ligne les estimations du sous-ensemble des paramètres de base par une équation itérative : 30 ai (t + 1) = ai (t) + ,ujeij (t)Ej (t) avec PFJ(t) = H(cr1)T(q-1)01(t) les éléments des vecteurs OT(t) étant filtrés par HiCorriGi/(1+Ci.Hi) pour obtenir le vecteur eij(t), T étant défini par la relation (1 + Corr(q-1)1,(q-1)) - T(q-1) = 35 Corr(q-1)L(q-1) avec Lj(q-1) la transmittance discrète de la transformée du produit j -1 s -1 dans le cas d'un système échantillonné où J1 sont les inerties et /Li est une matrice carrée définie réelle positive servant de paramètre de réglage de la vitesse de convergence de l'estimation. 3052861 5 D'autres caractéristiques non limitatives et avantageuses du procédé conforme à l'invention, prises individuellement ou selon toutes les combinaisons techniquement possibles, sont les suivantes : - lors du calcul de l'estimation Pi(t) des couples perturbateurs, on néglige les 5 effets de la variation de la matrice d'inertie, - le filtre de transmittance H(q-1) destiné à éliminer la composante continue de la commande est un filtre passe haut, - le filtre de transmittance H(q-1) destiné à éliminer la composante continue de la commande est un filtre passe bande, 10 - on met en oeuvre une compensation adaptative en temps réel dans laquelle les estimations du sous-ensemble des paramètres de base sont calculées préalablement et stockées dans des tables, et dans lequel : - dans une phase préalable : - pour chaque effet non linéaire de chaque axe, on choisit un 15 mouvement sensibilisant sur un ou plusieurs autres axes à vitesse constante conduisant à une perturbation significative sur le couple dudit axe, - on calcule des estimations du sous-ensemble des paramètres de base par l'équation itérative eij(t + 1) = 'Mt) + ,ujei(t)Ej(t) 20 jusqu'à convergence, - dans une phase de mise en oeuvre en temps réel, on utilise directement les tables de paramètres de base pour calculer l'estimation Pi(t) des couples perturbateurs par : /5:i (t) = OT(9, - la convergence correspond à ce que la valeur du signal d'erreur Ej(t) tend vers 25 zéro, - on met en oeuvre un algorithme du gradient récursif, - le simulateur de mouvement est utilisé à vitesse constante ou à faible taux de variation de vitesse dans la phase d'estimation des estimées 61(t) , - on met en oeuvre un simulateur de mouvement à au moins deux axes 30 commandés et comportant pour chaque axe une loi de commande avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit correcteur recevant en entrée un signal d'écart entre la consigne 61-; et la mesure Oi pour l'axe correspondant et produisant en sortie la commande U1 destinée à un organe effecteur, et on rajoute entre la sortie du bloc correcteur et l'organe effecteur un 35 module matériel de calcul de loi de compensation et de compensation de la commande, ledit module étant soit un programme informatique chargé sur un support et destiné à compléter un programme informatique du bloc correcteur monovariable, soit un équipement électronique et programmable de capture de la 3052861 6 commande en sortie du bloc correcteur et de restitution au moteur d'une commande compensée par la loi de compensation, - on utilise un modèle d'articulation dans lequel les inerties des différentes articulations sont indépendantes les unes des autres, les tenseurs d'inertie des 5 articulations du simulateur de mouvement étant une matrice diagonale, L'invention concerne également un système à simulateur de mouvements comportant un simulateur de mouvements et des moyens de compensation de couples perturbateurs, ledit simulateur comportant des articulations commandées par des organes effecteurs selon des axes j en fonction de consignes d, de 10 mouvements sur les axes, chaque organe effecteur d'un axe donné spécifique de l'organe effecteur recevant une commande U1 et un capteur de l'axe mesurant O l'action de l'organe effecteur selon ledit axe j, le système comportant pour chaque axe une loi de commande avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit bloc correcteur recevant en entrée un signal d'écart entre la 15 consigne d, et la mesure O pour l'axe correspondant et produisant en sortie la commande U1, et dans lequel système, les moyens de compensation de couples perturbateurs sont un calculateur programmable spécialement configuré pour exécuter le procédé de l'invention. DESCRIPTION DETAILLEE D'UN EXEMPLE DE REALISATION 20 La description qui va suivre en regard des dessins annexés, donnés à titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée. Sur les dessins annexés : - la figure 1 représente un simulateur de mouvements commandé de l'état de la 25 technique avec pour chaque axe commandé sa propre loi de commande monovariable avec correcteur et à boucle de rétroaction, - la figure 2 représente un bloc diagramme simplifié du modèle dynamique d'une articulation prenant en compte, outre les frottements, les effets des couples de Coriolis, centrifuge et de gravité (parfois nommé balourd) 30 - la figure 3 représente un bloc diagramme simplifié d'une application du modèle dynamique de la figure 2 à une loi de commande monovariable avec correcteur et à boucle de rétroaction, dans le cas d'un asservissement en position, - la figure 4 représente un bloc diagramme simplifié du type de l'application de la figure 3 mais cette fois dans le cas d'un asservissement en vitesse, l'intégration 35 finale de la vitesse pour obtenir la position pouvant alors être omise, - la figure 5 représente un bloc diagramme simplifié du type de l'application de la figure 3 mais avec une réorganisation des blocs pour isoler les effets des couples de Coriolis, centrifuge et de gravité, 3052861 7 - la figure 6 représente un bloc diagramme simplifié sur la base de celui de la figure 5 avec introduction d'une loi de compensation des effets des couples de Coriolis, centrifuge et de gravité par injection dans la boucle d'une estimation de ces derniers effets à partir d'un signal d'erreur obtenu à partir du signal de couple 5 moteur produit par le correcteur, et - les figures 7 et 8 représentent deux blocs diagrammes simplifiés sur la base de celui de la figure 6 dans deux modes d'application de l'invention, un second mode, (Fig.7) adaptatif, pour des vitesses constantes avec calculs en ligne/temps réel d'un sous-ensemble vectoriel de paramètres de base pertinents et un premier 10 mode, (Fig.8) non adaptatif, avec utilisation du sous-ensemble vectoriel de paramètres de base pertinents calculés dans le second mode et alors mémorisés. En relation avec la figure 1 de l'état de la technique, on va commencer par décrire l'état de la technique afin de faciliter la présentation ultérieure de l'invention à partir d'éléments connus. Sur cette figure 1, un simulateur de 15 commande comportant trois articulations, qu'on assimilera par la suite à des axes, est commandé en fonction de consignes individuelles sur chacun des axes. Un axe correspond à un effecteur/moteur et à un capteur et dans le cas où une articulation du simulateur correspond à un effecteur/moteur et à un capteur, on peut assimiler l'articulation à un axe. Dans le cas où l'articulation est complexe, 20 par exemple avec plusieurs effecteurs et/ou plusieurs capteurs, on pourra la ramener à un ensemble d'axes qu'on pourra traiter comme décrit. Il en est de même dans le cas d'une articulation avec un effecteur/moteur et plusieurs capteurs ou plusieurs moteurs et un seul capteur. Un bloc correcteur monovariable est mis en oeuvre sur chaque axe avec 25 une boucle de rétroaction et mesure de la position angulaire sur l'axe correspondant. Dans cette description, le terme « correcteur » couvre un bloc correcteur monovariable tel qu'utilisé classiquement, c'est-à-dire sans prise en compte des interactions entre les axes, sans compensation des couples de Coriolis, centrifuges et de gravité. 30 Sur la figure 1, les variables : 01, 02, 93 correspondant aux positions angulaires des axes, Or, 9Z, 9r3 sont les consignes des positions angulaires desdits axes et U1, U2, U3 sont les commandes issues des correcteurs monovariables et attaquant les amplificateurs de puissance des moteurs du simulateur. Un correcteur est mis en oeuvre par axe commandé. 35 Les correcteurs peuvent posséder, comme sur la figure, un degré de liberté, et être par exemple de type PID, ou encore 2 degrés de liberté, par exemple RST, LQG, commande prédictive, H-infini... Ces correcteurs sont essentiellement linéaires. Les consignes 01, 9Z, 9r3 sont fournies par un générateur de consignes 3052861 8 qui lui-même agit en fonction des ordres fournis par l'utilisateur du simulateur de mouvements. Par ailleurs, en lui-même, un simulateur de mouvements est modélisable au moyen des outils traditionnels de la robotique. On peut en particulier, afin de 5 déterminer le modèle dynamique du simulateur de mouvements, utiliser les équations d'Euler-Lagrange : d (aL(9,11) aL(9,6) _ (1) dt aô ae - Avec : 9 : vecteur des positions angulaires de chaque axe, 10 Ô : vecteur des vitesses angulaires de chaque axe, I : vecteur des couples produits par les moteurs de chaque axe, et où L(9 , é) est le Lagrangien du système qui est par définition : L(9, à) = Ec(9, Ô) - Ep (9) (2) où : 15 Ec(9, Ô) est l'énergie cinétique totale du simulateur, Ep (0) son énergie potentielle. L'équation fondamentale de la dynamique des systèmes robotiques s'écrit alors : A(9)9 + m(e, ô)i- + G(9) + F(9) = r (3) 20 Avec : Ô vecteur des accélérations angulaires de chaque axe, A(9): est une matrice carrée qui est nommée matrice d'inertie, M ( 9, Ô): est la matrice carrée des couples centrifuges et Coriolis, G(9) : est le vecteur des couples de gravité, 25 F(9) : est le vecteur des couples de frottements. A(9), M(9, Ô), G(9) dépendent de la géométrie du simulateur de mouvements et en particulier des tenseurs d'inertie de chacune des articulations, des positions des centres de masse par rapport aux axes de rotation, etc... Le modèle dynamique du robot peut être obtenu en employant diverses conventions 30 utilisées en robotique, en particulier la convention de Denavit-Hartenberg ou, encore, la convention de Denavit-Hartenberg modifiée (décrite dans l'article : « A new geometric notation for open and closed-loop robots », in IEEE international conference on robotics and automation, San francisco, April 1986). En particulier, en utilisant la convention de Denavit-Hartenberg modifiée, on 35 montre qu'on obtient un modèle dynamique linéaire par rapport à un ensemble de paramètres x, dits paramètres de base, suivant une relation matricielle du type : r = cipT(e, Ô, i5.-)x (4) 3052861 9 Dans la matrice (13, les termes dépendant de Ô sont forcément reliés aux coefficients de la matrice d'inertie. Ainsi, le couple ride l'articulation j pour 1 j où N est le nombre d'articulations peut être réécrit : 5 5 = A1191 +A2j1j2 + A3193 EiNc BjikÔi Ôk Cil G1 Fj (5) où les A11, BJik, Cil, G1 dépendent des positions angulaires des axes (c'est-à-dire du vecteur 9) et des paramètres de base (c'est-à-dire de X). Alors que Fi dépend des vitesses angulaires des axes (c'est-à-dire du vecteur Ô). Le couple de frottement Fi est décomposable entre un couple de 10 frottements secs qui est considéré en première approximation, proportionnel au signe de Ô1, et un couple de frottement visqueux qui est considéré en première approximation, proportionnel à Ô1. Sous ces conditions de première approximation, on remarque qu'à vitesse constante d'une articulation, et donc sans accélération, le couple de frottement est constant et qu'il peut donc être éliminé par un filtrage 15 passe haut ou à tout le moins éliminant les composantes continues. Dans le cadre de la procédure de réglage de la loi de compensation des couples de Coriolis, centrifuges et de gravité, on fait les approximations suivantes : 1) que la matrice d'inertie du simulateur de mouvements a des termes 20 indépendants du vecteur 9 qui est le vecteur des positions angulaires. 2) que la matrice d'inertie du simulateur de mouvements est diagonale. La première approximation est assez bien justifiée en général, compte tenu de la géométrie des simulateurs de mouvements. La seconde se justifie par le fait que les tests réalisés dans le cadre du réglage de la loi de compensation se font à 25 vitesse constante et donc à accélération nulle, comme on le verra plus loin lors de la mise en oeuvre de la loi de commande multivariable de l'invention. Ces deux approximations reviennent à dire qu'on a pour la matrice d'inertie : r0 0 0 A;z-- 12 0 (6) 0 0 J3 30 Sous ces conditions d'approximation, il est possible de déterminer, pour chaque articulation du simulateur, un bloc diagramme décrivant le modèle dynamique du système et qui est schématisé sur la figure 2. Dans le cadre de l'application d'une loi de commande classique, c'est-à-dire monovariable, on peut utiliser un modèle dynamique linéarisé simplifié (c'est-à- 35 dire qui ignore les effets Coriolis, centrifuges de gravités, et les frottements secs) du système développé ci-dessus. La loi de commande classique monovariable avec correcteur obtenue est schématisée pour respectivement un asservissement 3052861 10 en position et en vitesse sur les figures 3 et 4. Le rôle du correcteur est d'assurer le suivi de consigne de position ou de vitesse et donc de compenser les couples perturbateurs. Suivant la dynamique de ce correcteur, les couples perturbateurs sont plus ou moins bien compensés. En 5 particulier, plus la dynamique du correcteur est élevée et mieux le rejet de la perturbation est assuré, et moins l'effet de la perturbation se manifeste sur la variable asservie, que ce soit la vitesse ou la position. Cependant, dans bien des cas, même si le correcteur est réglé de façon optimale afin d'avoir une dynamique importante, ces perturbations sont trop 10 imparfaitement compensées du fait qu'on met en oeuvre des correcteurs monovariables et donc que les interactions/couplages entre articulations/axes ne sont pas prises en compte globalement. C'est donc pour cela qu'il est proposé avec la présente invention un moyen assurant une compensation plus efficace des perturbations non-linéaires, en 15 particulier des couples de Coriolis, centrifuges, et de gravité, que celle que peuvent fournir les correcteurs classiques monovariables seuls vus précédemment, et de façon à minimiser l'impact desdites perturbations sur les grandeurs asservies. On va donc maintenant décrire la loi de compensation proposée qui est 20 non-linéaire et multivariable ainsi que sa méthode de réglage. Tout d'abord, on suppose connus les inerties Jj ainsi que les gains d'amplificateur Kat, et les constantes de couple Kmj des moteurs. En d'autres Km termes, on connaît directement ou indirectement le rapport Ka' Km'. Le terme « gains d'amplificateur » doit ici être entendu au sens large et 25 comme pouvant inclure des gains d'éventuels convertisseurs numériques-analogiques, convertisseurs analogiques-numériques et de réducteurs ou autres élément de la boucle. On pose Ki. le gain global entre la commande issue de la loi de commande et le couple produit par le ou les moteurs de l'axe j. 30 De même, on suppose connues les fonctions de transfert Corri(q-1) de chaque correcteur monovariable. Pour cela, on aura identifié le modèle dynamique linéarisé du système formé par le simulateur et réglé la loi de commande monovariable, c'est-à-dire le correcteur, telle que présentée précédemment afin de récupérer ces données. Les 35 constantes de couple moteur sont des données des constructeurs des moteurs. Les gains d'amplificateur sont des données mesurables ou calculables selon les cas. Les inerties sont obtenues par identification et sur cette question, on peut se référer à l'ouvrage de L.Ljung « identification, Theory for the user », Prentice Hall 3052 86 1 11 Dans une variante de mise en oeuvre, on peut faire des estimations ou hypothèses sur le modèle et notamment sur les inerties, voir les calculer à partir d'une analyse d'une représentation informatique modélisée du simulateur. La loi de commande à compensation multivariable et correcteur 5 monovariable proposée peut être déclinée en deux modes d'application de la loi de compensation : - un premier mode pour compensation non adaptative des couples perturbateurs en utilisant des paramètres prédéterminés préalablement, et - un second mode pour estimation et compensation en ligne/temps réel des 10 paramètres nécessaires à l'application du premier mode. Le second mode d'estimation en ligne, qu'on peut qualifier d'adaptatif, est utilisé dans une phase de réglage de la loi de compensation permettant de déterminer les paramètres utiles au premier mode. Dans une phase d'application fonctionnelle à des tests, on utilise de préférence le premier mode de 15 compensation des couples perturbateurs en utilisant les paramètres prédéterminés précédemment avec le second mode. On va dans, un premier temps, décrire le second mode d'estimation des paramètres utiles à la loi de compensation. Dans la phase de réglage, la loi adaptative est basée sur le fait que si un 20 axe j tourne à vitesse constante et si on considère que le couple de frottements secs est constant sur 360°, et dans l'hypothèse où il n'y a ni couples de Coriolis, centrifuge ou de gravité qui sont donc nuls, alors la sortie du correcteur Uj(t) est constante. Inversement, toujours à vitesse constante, mais dans l'hypothèse de la présence de couples de Coriolis, centrifuges, et de gravité, alors la commande 25 Uj(t) n'est plus constante du fait de la contre-réaction qu'entraîne la présence de la boucle. Comme on le verra, un filtrage permet de séparer les éléments non constants de ceux qui le sont. On va maintenant utiliser une représentation du système bouclé qui permet d'isoler les effets des couples de Coriolis, centrifuges et de gravité par rapport aux 30 autres effets mentionnés précédemment. Posons Pj(t) comme étant égal à la somme des couples de Coriolis, centrifuges et de gravité agissant sur l'axe j, le tout multiplié par l'inverse du gain de l'amplificateur Ka j et par l'inverse de la constante de couple du moteur Kmj, soit 35 Pj (t) = (riv BjikÔi Bk riV Cil Ô + G1(01)) (7) Avec ces conventions, un schéma simplifié de la boucle de contrôle propre à une articulation peut être modélisée suivant le schéma de la figure 5 dans le cas d'un asservissement en position. 3052861 12 Pour obtenir une compensation des effets des couples de Coriolis, centrifuges, et de gravité, il suffit alors d'injecter une compensation P1(t), qui est une estimation de Pj(t), en sortie du correcteur suivant le schéma de la figure 6. La loi de compensation adaptative du second mode s'utilise lorsque la 5 consigne de vitesse est constante. Cette loi consiste à minimiser le carré ou, dans une variante la somme des carrés, d'un signal d'erreur E (t), correspondant à la commande Uj(t) passée par un filtre passe-haut destiné à éliminer la composante continue de Uj(t) et dont la transmittance discrète est notée H (q-1), où cri- est l'opérateur retard dans ce système échantillonné. 10 Posons L1(z) la transformée en z du système f muni d'un échantillonneur bloqueur, et Li (q-1) la transmittance discrète associée. Compte tenu de la représentation de la figure 6, on a : Corr j(q-1)Lj(q-1) f U>.(t) - 1)(t)) (8) 1Ej(t) = H (q- 1) + Corr (q-1)L (q-1) Mais compte tenu de la relation (4) qui exprime les couples perturbateurs 15 de façon affine par rapport aux paramètres de bases, on peut déduire les relations (9), (10), (11) où les composantes des vecteurs a./ forment un sous-ensemble de x tel qu'il est défini par la relation (4). En d'autres termes, on gardera les composantes de a./ qui sont les éléments de x qui ont un impact sur les couples de Coriolis, centrifuges, et de gravité de l'axe j : 20 25 Ce sous-ensemble comporte donc les composantes des a./ les plus significatives, c'est-à-dire les paramètres de base pour lesquels les couples perturbateurs associés sont les plus élevés, en pratique supérieurs à un seuil qu'on aura déterminé. On comprend donc qu'en fonction du seuil et donc du niveau de significativité choisi, la compensation sera plus ou moins précise. Par 30 exemple, à partir d'une modélisation théorique on déterminera préalablement les paramètres de base qui produisent le couple perturbateur le plus élevé La dépendance de Oj en Ô est omise compte tenu du fait que la loi adaptative est destinée à fonctionner à des vitesses constantes ou quasi-constantes, correspondant à des accélérations nulles ou quasi-nulles. 35 En effet, le simulateur de mouvement est ici utilisé à vitesse de mouvement constante et s'il y a variation de vitesse, celle-ci doit être la plus faible possible, par exemple inférieure à 1 %. P1(t) = ( 9 , d)a (9) P2 (t) = ( 9 , é) a2 (10) P3 (t) = ( 9 , é) a3 (11) Il y a donc une relation générique du type (12): P1(t) = OT (9, d)aj (12) 3052861 13 Soit eij(t) l'estimée de a1. L'estimée de Pi (t), notée Pj(t) s'écrit : /si (t) = or (9, 9)a, (13) Ainsi le signal E(t) peut s'exprimer suivant : corri(cri)Li(cri) (cir(t) - ai-(t)) 01(t) (14) Ei(t) = H (q-1) 1+Corri(q-1-)L1(q-1) \ 5 La relation précédente (14) conduit à proposer la formule d'estimation suivante : ai (t + 1) = (t) + /Li Or (t)Ej (t) (15) où pi est une matrice carrée définie réelle positive, qui sert de paramètre de réglage de la vitesse de convergence de l'estimation. Cette formule résulte de 10 l'application de l'algorithme du gradient récursif. Selon la théorie de la passivité, une condition suffisante de convergence de la formule de convergence (15) est donnée par la condition suivante : Re(H (z) c(z)L(z) > 0 V z (16) 1+ c (z)L (z) Cette condition de convergence peut parfois se révéler contraignante, aussi 15 est-il préférable de s'en affranchir par un filtrage approprié de 01(t). Ce filtrage consiste à filtrer les composantes de la matrice OT(t) par HiCorriGi/(1+Cilli) pour obtenir la matrice OF./ (t) . Définissons T (q-1) tel que : (1 + Corr(q-1)1,(q-1)) - T (q-1) = Corr(q-1)L(q-1) (17) 20 On propose finalement la loi de compensation : ai(t + 1) = â1 (t) + /Li 1(t)Ej(t) (18) Avec OF./ (t) = H (cri)T (q-1)0 (t) (19) Si le vecteur PFJ(t) est décorrélé du bruit de la boucle j, alors l'estimation du vecteur eij est non biaisée. 25 La figure 7 représente l'ensemble de la loi de commande mettant en oeuvre cette loi de compensation avec d'estimation en ligne des eijet qui correspond au second mode d'estimation en ligne qui permet de calculer les paramètres utiles à la compensation. Dans ce second mode, la loi de commande de la figure 7 peut être utilisée 30 en tant que telle pour obtenir la compensation lors de l'utilisation du simulateur de mouvements pour effectuer des tests sur des équipements de mesure. Toutefois, la compensation n'est efficace/obtenue que pour des mouvements à vitesse constante et lorsqu'on modifie une ou des vitesses de mouvement dans le simulateur, il peut se produire des transitoires nuisibles à la 35 compensation, mais aussi à la qualité de l'estimation. En conséquence, il est préféré le premier mode représenté sur la figure 8 pour la compensation lors des tests sur simulateur de mouvements, 3052861 14 correspondant à une phase d'utilisation fonctionnelle du simulateur de mouvements et qui utilise les résultats de la loi de commande de la figure 7, les résultats (paramètres de base) étant stockés pour une utilisation ultérieure avec la loi de commande correspondant à la figure 8. 5 Pour pouvoir pleinement utiliser ce premier mode de la figure 8, la démarche suivante qui passe par le second mode est utilisée : - pour chaque effet non linéaire de chaque axe, on choisit un mouvement sensibilisant à vitesse constante conduisant à une perturbation significative sur un ou plusieurs autres axes. On répète donc ce processus pour traiter tous les axes. 10 - on applique la loi adaptative du second mode, c'est-à-dire selon la loi de commande de la figure 7 jusqu'à la convergence, c'est-à-dire que le signal c(t) tend vers 0 et donc que les paramètres de base deviennent constants à la précision souhaitée. - après convergence, les paramètres de base estimés a(t) deviennent/sont 15 constants et on les mémorise dans des tables. Les tables sont donc constituées des paramètres de base estimés 'à , une table pour chaque axe, le nombre de paramètres à stocker n'excédant pas une dizaine pour chaque axe. - une fois les tables obtenues, on peut utiliser la loi de commande du premier mode de compensation telle que représentée figure 8, c'est-à-dire qu'on réutilise 20 les valeurs de ei mémorisées dans les tables dans une loi du type : /s (t) = or 09, fj)ei; Il devient ainsi possible dans le premier mode d'utiliser la compensation pour des mouvements autres que des mouvements à vitesse constante. L'invention a été appliquée à un simulateur de mouvement de la société IXBLUE, une machine Evo-30 en l'espèce, à trois axes commandés et il a été 25 possible d'obtenir des atténuations des perturbations de couplage de 17 dB et 22 dB selon les axes et le type de perturbation, Coriolis, centrifuges, et/ou de gravité. REVENDICATIONS1. Procédé de compensation de couples perturbateurs pour un simulateur de mouvements, ledit simulateur comportant des articulations commandées par des organes effecteurs selon des axes j en fonction de consignes d, de mouvements sur les axes, chaque organe effecteur d'un axe donné spécifique de l'organe effecteur recevant une commande U1 et un capteur de l'axe mesurant O l'action de l'organe effecteur selon ledit axe j, le simulateur étant dans un système comportant pour chaque axe une loi de commande avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit bloc correcteur monovariable de fonction de transfert Corr(q-1) recevant en entrée un signal d'écart entre la consigne d, et la mesure O pour l'axe correspondant et produisant en sortie la commande U1, caractérisé en ce que les couples perturbateurs sont des couples de Coriolis, centrifuges et de gravité et en ce qu'on met en oeuvre pour chaque axe, une loi de commande comportant, en outre du bloc correcteur monovariable par axe, une loi de compensation non-linéaire et multivariable combinée aux correcteurs monovariables, la loi de compensation calculant en fonction de la commande U1 une estimation /5:i (t) des couples perturbateurs, ladite estimation /5:i (t) étant injectée à la commande U1 envoyée à l'organe effecteur pour compenser les couples perturbateurs, et en ce que l'estimation /5:i (0 des couples perturbateurs est calculée à partir de la valeur d'un signal d'erreur Ej(t) qui est une version filtrée de la commande (Ji par un filtre de transmittance H(q-1) destiné à éliminer au moins la composante continue de la commande et qu'on modélise préalablement le simulateur de mouvement afin d'obtenir un modèle dynamique exprimant les couples de façon affine par rapport à un ensemble de paramètres de base x suivant une relation matricielle du type : EPT(0, Ô, t.5.1)xi , l'indice j correspondant aux différents axes, qu'on détermine suite à la modélisation préalable du simulateur un sous-ensemble des paramètres de base correspondant à des couples perturbateurs ayant un niveau supérieur à un seuil de perturbation déterminé, l'estimation /5:i (t) des couples perturbateurs étant calculée par : /5:i (t) = Or (0, à) , et en ce qu'on calcule en ligne les estimations du sous-ensemble des paramètres de base par une équation itérative : ai + 1) = ai (t) + /Li (t))Ej (t) avec PFJ(t) = H(cr1)T(q-1)01(t) les éléments des vecteurs OT(t) étant filtrés par HiCorriGi/(1+Ci.Hi) pour 3052861 16 obtenir le vecteur g./ (0, T étant défini par la relation (1 + Corr(q-1)L(q-1)) - T(q-1) = Corr(q-1)L(q-1) avec Li(q-1) la transmittance discrète de la transformée du produit j -1 s -1 dans le cas d'un système échantillonné où J1 sont les inerties et /Li est 5 une matrice carrée définie réelle positive servant de paramètre de réglage de la vitesse de convergence de l'estimation. 2. Procédé selon la revendication 1, caractérisé en ce que lors du calcul de l'estimation Pj(t) des couples perturbateurs, on néglige les effets de la variation 10 de la matrice d'inertie. 3. Procédé selon la revendication 1 ou la revendication 2, caractérisé en ce que le filtre de transmittance H(q-1) destiné à éliminer la composante continue de la commande est un filtre passe haut. 15 4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on met en oeuvre une compensation adaptative en temps réel dans laquelle les estimations du sous-ensemble des paramètres de base sont calculées préalablement et stockées dans des tables, dans lequel procédé, 20 - dans une phase préalable : - pour chaque effet non linéaire de chaque axe, on choisit un mouvement sensibilisant sur un ou plusieurs autres axes à vitesse constante conduisant à une perturbation significative sur le couple dudit axe, - on calcule des estimations du sous-ensemble des paramètres de base par 25 l'équation itérative eij (t + 1) = (t) + g./ (t)E, (t) jusqu'à convergence, - dans une phase de mise en oeuvre en temps réel, on utilise directement les tables de paramètres de base pour calculer l'estimation Pj(t) des couples perturbateurs par : Pj(t) = (9, d)âj. 30 5. Procédé selon la revendication 4, caractérisé en ce que la convergence correspond à ce que la valeur du signal d'erreur Ej(t) tend vers zéro. 6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on met en oeuvre un algorithme du gradient récursif. 35 7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que le simulateur de mouvement est utilisé à vitesse constante ou à faible taux de variation de vitesse dans la phase d'estimation des estimées 3052861 17 8. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on met en oeuvre un simulateur de mouvement à au moins 5 deux axes commandés et comportant pour chaque axe une loi de commande avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit correcteur recevant en entrée un signal d'écart entre la consigne 61-; et la mesure O pour l'axe correspondant et produisant en sortie la commande U1 destinée à un organe effecteur, et en ce qu'on rajoute entre la sortie du bloc correcteur et 10 l'organe effecteur un module matériel de calcul de loi de compensation et de compensation de la commande, ledit module étant soit un programme informatique chargé sur un support et destiné à compléter un programme informatique du bloc correcteur monovariable, soit un équipement électronique et programmable de capture de la commande en sortie du bloc correcteur et de 15 restitution au moteur d'une commande compensée par la loi de compensation. 9. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on utilise un modèle d'articulation dans lequel les inerties des différentes articulations sont indépendantes les unes des autres, les tenseurs 20 d'inertie des articulations du simulateur de mouvement étant une matrice diagonale. 10. Système à simulateur de mouvements comportant un simulateur de mouvements et des moyens de compensation de couples perturbateurs, ledit 25 simulateur comportant des articulations commandées par des organes effecteurs selon des axes j en fonction de consignes eide mouvements sur les axes, chaque organe effecteur d'un axe donné spécifique de l'organe effecteur recevant une commande U1 et un capteur de l'axe mesurant O l'action de l'organe effecteur selon ledit axe j, le système comportant pour chaque axe une loi de commande 30 avec un bloc correcteur monovariable dans une boucle de rétroaction, ledit bloc correcteur recevant en entrée un signal d'écart entre la consigne 61-; et la mesure O pour l'axe correspondant et produisant en sortie la commande U1, caractérisé en ce que les moyens de compensation de couples perturbateurs sont un calculateur programmable spécialement configuré pour exécuter le procédé de l'une 35 quelconque des revendications précédentes.