Brevet FR2855282A1 — publié le 20041126

DISPOSITIF ET PROCEDE DE COMMANDE D'UN RETOUR DE FORCE A APPLIQUER A AU MOINS UNE MANETTE D'UNE INTERFACE MOTORISEE La présente invention concerne un dispositif et un procédé de 5 commande d'un retour de force à appliquer à au moins une manette d'une interface motorisée notamment destinée à la manipulation d'un objet virtuel. L'invention est particulièrement prévue pour la commande d'un retour de force sur des interfaces permettant la manipulation d'objets l0 virtuels, ladite interface étant utilisée comme périphérique informatique d'un ordinateur ou équivalent, et permet à un utilisateur d'interagir avec un environnement virtuel et notamment de permettre la manipulation d'au moins une partie de cet environnement. Cela étant, bien que plus particulièrement prévue pour de telles 15 applications, I'invention pourra également être utilisée pour la commande d'un retour de force sur des interfaces destinées à la manipulation d'objets réels et notamment la manipulation à distance de tout type de machine tel que des robots ou bras manipulateurs. Il existe différents types de fonctionnements pour les interfaces 20 et notamment des modes de fonctionnement isotonique ou isométrique. A ce sujet, on désigne par isotonique un mode de fonctionnement dans lequel à une position d'une manette correspond une position de l'objet à manipuler et permettant ainsi la commande en position d'un objet. Par ailleurs, on désigne par isométrique un 25 mode de fonctionnement dans lequel à une force exercée sur une manette correspond une vitesse de déplacement de l'objet à manipuler et permettant ainsi la commande en vitesse de l'objet. Pour le mode de fonctionnement isotonique, on connaît des procédés permettant d'appliquer des retours de force. Cela étant, 30 entre ces deux modes de fonctionnement isotonique et isométrique, il existe également un mode de fonctionnement dit élastique. Dans ce mode de fonctionnement la manette est placée, suite à l'action exercée par un utilisateur, dans une position donnée qui correspond une vitesse de déplacement de l'objet à manipuler. On connaît du brevet US 5 513 100 un procédé de commande de retour de force 5 permettant de placer un levier de commande dans un mode de fonctionnement élastique à retour de force. Dans ce document, le calcul de retour de force s'effectue en fonction du déplacement du levier et en faisant varier la constante de raideur du levier en fonction d'une force mesurée sur l'objet manipulé. Cela étant, le procédé décrit dans ce document présente différents inconvénients parmi lesquels l'impossibilité du procédé de rendre compte de la force relative à l'environnement lorsque la manette est dans une position neutre. De plus, le dosage dans le calcul de la force de retour entre les composantes relatives au levier et celles 15 relatives à l'impact de l'environnement sur l'objet manipulé est difficilement réalisable. Ce procédé n'est en outre pas prévu pour la manipulation d'un objet virtuel. La présente invention a pour but de pallier aux inconvénients précités et de proposer un procédé de commande d'au moins une 20 manette d'une interface motorisée permettant de passer ladite interface dans un mode de fonctionnement élastique à retour de force. Un autre objet de la présente invention est de proposer un procédé de commande dans lequel le retour de force est adapté en 25 fonction de l'objet à manipuler et de son environnement. Un autre objet de la présente invention est de proposer un procédé de commande permettant d'appliquer un retour de force différencié en fonction du ou des degrés de liberté des manettes de l'interface. Un autre but de la présente invention est de proposer un dispositif de commande pour la mise en oeuvre du procédé, ledit dispositif pouvant être connecté ou intégré à ladite interface. L'invention a ainsi pour objet un procédé de commande d'un retour de force à appliquer à au moins une manette d'une interface motorisée destiné à la manipulation d'un objet réel ou virtuel. Selon I'invention, le procédé consiste à réaliser: - une première étape de détermination pour chaque manette d'une première composante Fi de la force de retour F à appliquer correspondant à l'action exercée par un utilisateur sur chaque manette, une seconde étape de détermination pour chaque manette d'une seconde composante Fe de la force de retour F à appliquer correspondant à l'action exercée par l'environnement de l'objet manipulé sur ledit objet suivant le ou les axes de déplacement commandé par 15 chaque manette, - une étape de traitement pour calculer et commander à partir des première et seconde composantes Fi et Fe la force de retour à appliquer pour chaque manette de manière à placer ladite interface motorisée dans un 2 0 mode de fonctionnement élastique à retour de force. L'invention vise en outre un dispositif de commande pour la mise en oeuvre du procédé tel que précité. Selon l'invention, ledit dispositif comprend: - des premiers moyens de détermination pour obtenir, pour chaque manette, une première composante Fi de la force de retour correspondant à l'action exercée par un utilisateur sur chaque manette de ladite interface, - des seconds moyens de détermination pour obtenir pour chaque manette, une seconde composante Fe 30o correspondant à l'action exercée par l'environnement sur ledit au moins un objet et suivant le ou les degrés de liberté commandé par chaque manette, - des moyens de traitement pour calculer et commander à partir des première et seconde composantes la force de retour F à appliquer à chaque manette de manière à 5 placer ladite interface motorisée dans un mode de fonctionnement élastique à retour de force. D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description qui va suivre d'un exemple préféré de réalisation, dans lequel la description n'est 10 donnée qu'à titre d'exemple non limitatif et en référence aux dessins annexés parmi lesquels: - la figure 1 représente de manière schématique un exemple de réalisation du dispositif conforme à l'invention, - la figure 2 illustre en perspective une interface comportant trois manettes à effecteur rotatif, En se reportant à la figure 2, on voit représentée une interface 1 du type ground-based, c'est-à-dire de manière générale une interface 20 destinée reposer sur une surface et qui est conçue pour être manipulée d'une seule main. Cette interface 1 comprend trois manettes 2a, 2b et 2c découplées et permettant la manipulation d'objets réels ou virtuels. Cela étant, il est important de souligner que l'interface 1 qui va 25 être utilisée dans la suite n'est donnée qu'à titre d'exemple non limitatif. Selon l'invention, le procédé de commande est adapté pour appliquer un retour de force à tout type d'interface motorisée dont les manettes sont ou non découplées. Par manette, il faut entendre dans ce texte tout type de moyen 30 permettant le déplacement de l'objet à manipuler suivant au moins un degré de liberté, il pourra notamment s'agir de levier de commande. En se reportant cette fois à la figure 1, on voit que le dispositif de commande 3 comprend des premiers moyens de détermination 4. Ces premiers moyens de détermination 4 permettent d'obtenir pour 5 chaque manette 2a, 2b, 2c une première composante Fi de la force de retour F correspondant à l'action de déplacement exercée sur chaque manette 2a, 2b, 2c de ladite interface 1 par un utilisateur. Ledit dispositif de commande 3 comporte également des seconds moyens de détermination 5 pour obtenir pour chaque 10 manette 2a, 2b, 2c, une seconde composante Fe correspondant aux forces exercées par l'environnement sur ledit au moins un objet 6 et suivant le ou les degrés de liberté commandés par chaque manette 2a, 2b, 2c. Le dispositif de commande 3 comprend en outre des moyens de 15 traitement 7 pour calculer et commander à partir des composantes Fe et Fi la force de retour F à appliquer à chaque manette 2a, 2b, 2c. Selon le procédé, on réalise dans la première étape de détermination la mesure du déplacement A de chaque manette. Cette mesure est réalisée par les premiers moyens de détermination 4 qui 20 comprennent des moyens pour délivrer une information relative au déplacement de chaque manette. Dans un mode préféré de réalisation, la mesure du déplacement est une mesure de l'angle entre la position de repos d'une manette 2a, 2b, 2c et sa position effective. A cet effet les moyens de mesure 25 pourront comprendre par exemple un capteur à effet hall, un capteur optique ou un potentiomètre. Cela étant, dans d'autres modes de réalisation on pourra mesurer le déplacement linéaire de la manette pour déterminer la composante Fi. Selon le procédé on effectue ensuite la transformée de la valeur 30 A par une fonction Z que l'on multiplie par une constante de raideur Kr afin d'obtenir une valeur ou ladite composante Fi. Différentes fonctions peuvent être utilisées pour la fonction Z, chaque fonction retenue devant toutefois à une valeur 0 faire correspondre la valeur 0 et être croissante et continue sur l'intervalle considéré. On pourra notamment utiliser une fonction Z telle que: Z(A) = (sign (A))(lAI + a In (IAI+1)) avec a coefficient de préférence voisin de 0,2. On pourra utiliser également la fonction Z telle que Z(A) = A. Dans cette dernière hypothèse, et avec A correspondant à une valeur angulaire, on a Fi = Kr x A avec Kr exprimé en Newton par degrés et A l0 exprimé en degrés. La valeur du coefficient de raideur Kr dépend principalement des caractéristiques de l'interface 1 et notamment des positions angulaires des différentes manettes et de la force de retour que l'on peut distribuer aux différentes manettes. Dans l'exemple de la figure 2, le débattement de chaque manette est de 60 avec une position angulaire extrême de 30 et l'interface 1 peut en outre recevoir une force de retour F de 2 Newton. Dans ce cas, on choisit un coefficient de raideur voisin de 0,017 Newton par degrés, ce qui pour un angle de 30 donne une force Fi = 20 0,5 Newton de manière à pouvoir appliquer en plus la force de retour Fe correspondant à l'action de l'environnement sur l'objet à manipuler. Toutefois, ces données ne sont fournies qu'à titre indicatif et il est notamment, dans des applications o l'on utilise une interface de 25 type man-based, possible d'envisager des forces de retour nettement supérieures. Le procédé consiste à réaliser également une seconde étape de détermination pour chaque manette 2a, 2b, 2c, d'une seconde composante Fe de la force de retour F à appliquer. Dans le cas d'un objet virtuel comme représenté à la figure 1, l'action exercée par l'environnement est calculée selon différentes "7 méthode connues de l'homme du métier notamment dans le domaine de 1' haptique et par exemple la méthode dite méthode God Object, cette méthode est connue de l'homme de l'art notamment dans le domaine de l'haptique et à donnée lieu notamment à une publication 5 de C.B.Zilles et J.K.Salisbury A contraint-based God-object method for haptic display, Massachusetts Institute of Technology, Cambridge, MA. Dans une variante l'action exercée par l'environnement pourra être calculée selon la méthode dite méthode par pénalité. Dans les cas o ladite interface motorisée 1 est destinée à la manipulation d'objets réels, on utilisera des moyens de mesure du type capteur mécanique pour mesurer l'action exercée par l'environnement sur l'objet à manipuler. Selon le procédé, on réalise en outre une étape de traitement pour calculer et commander à partir des composantes Fi et Fe la force de retour F à appliquer pour chaque manette 2a, 2b, 2c. Les moyens de traitement 7 permettent ensuite le calcul et la commande de la force de retour F. Pour cela, les dits moyens de traitement 7 effectuent un calcul selon la formule F = K1 x Fi + K2 x Fe. Dans cette formule, F représente la force à appliquer à une 20 manette, Fi et Fe représentent respectivement les première et seconde composante à appliquer pour chaque manette. K1 et K2 quant à eux représentent deux coefficients de réglage. Ces coefficients de réglage permettent notamment d'équilibrer le rapport des forces entre les composantes Fi et Fe. Selon une variante de réalisation, on réalise dans le procédé le réglage de la sensibilité de chaque manette en ajustant la valeur du coefficient K1. A cette fin, on prévoit au niveau dudit dispositif de commande 3 des moyens de réglage automatiques ou manuels du coefficient Klpermettant le réglage individuel ou collectif des 30 manettes. Selon le procédé, le coefficient K2 est un coefficient de réglage permettant de calibrer la force de réaction de l'environnement. En effet, dans le cas de manipulation d'objets virtuels, la force de l'environnement pourra être très variable d'une application à une autre, en effet elle sera considérable s'il s'agit par exemple de 5 manipuler des avions ou au contraire très minime s'il s'agit de manipuler des molécules. Le coefficient de réglage K2 permet de calibrer la réaction de l'environnement en fonction de la force F pouvant être appliquée à ladite interface 1. Selon un mode de réalisation préféré, les dits moyens de 10 traitement 7 comprennent des moyens pour ajuster automatiquement la valeur du coefficient K2. Il faut également noter que les valeurs des coefficients K1 et K2 à appliquer aux composantes Fi et Fe peuvent être soit identiques soit différentes pour chaque manette 2a, 2b, 2c. On peut enfin également prévoir dans le procédé de commande une étape permettant de créer une zone morte. A cet effet, on considère qu'un déplacement inférieur à une valeur X déterminée par rapport à la position de repos d'une manette est considéré comme un déplacement de valeur nulle. Cette étape permet de prendre en compte les contraintes mécaniques au niveau de l'interface qui peuvent contrarier le retour des manettes à leur position exacte de repos, elle permet également de supprimer les petits déplacements effectués par un opérateur et dus à des imprécisions. Bien entendu, d'autres modes de réalisation à la portée de l'homme de l'art auraient pu être envisagées sans pour autant sortir du cadre de l'invention telle que définie dans les revendications ciaprès. REVENDICATIONS 1. Procédé de commande d'un retour de force F à appliquer à au moins un manette d'une interface motorisée destinée à la manipulation d'un objet virtuel caractérisé en ce que l'on réalise: - une première étape de détermination pour chaque manette d'une première composante Fi de la force de retour F à appliquer correspondant à l'action exercée par un utilisateur sur chaque manette 2a, 2b, 2c, - une seconde étape de détermination pour chaque manette 2a, 2b, 2c d'une seconde composante Fe de la force de retour F à appliquer correspondant à l'action exercée par l'environnement de l'objet 6 manipulé sur ledit objet suivant le ou les degré de liberté commandé par chaque manette 2a, 2b, 2c, - une étape de traitement pour calculer et commander à partir des première et seconde composantes Fi et Fe la force de retour F à appliquer pour chaque manette 2a, 2b, 2c de manière à placer ladite interface motorisée 1 dans un mode de fonctionnement élastique à retour de force. 2. Procédé de commande selon la revendication 1 dans lequel on réalise dans ladite première étape de détermination la mesure du déplacement A de chaque manette et dans laquelle on calcule pour obtenir la composante Fi la transformée de A par une fonction Z que l'on multiplie par une constante de raideur Kr. 3. Procédé de commande selon la revendication 2 dans lequel la fonction Zest telle que: Z(A) = (sign (A)) ( A + a In ( A 1 +1)) 4. Procédé de commande selon l'une quelconque des revendications 2 et 3 dans lequel la mesure du déplacement est une mesure de l'angle entre la position de repos d'une manette 2a, 2b, 2c 30 et sa position effective. 5. Procédé de commande selon l'une quelconque des Demande n o02855282 revendications précédentes selon lequel on réalise dans l'étape de traitement, pour chaque manette, le calcul de la force à appliquer F selon la formule F = (K1 x Fi) + (K2 x Fe), avec K1 et K2 deux coefficients de réglage. 6. Procédé de commande selon la revendication 5 dans lequel on réalise le réglage de la sensibilité de chaque manette en ajustant la valeur du coefficient KM. 7. Procédé de commande selon l'une ou l'autre des revendications 5 et 6 dans lequel on réalise le calibrage de la force de réaction de 10 I'environnement en ajustant la valeur du coefficient K2. 8. Procédé de commande selon l'une quelconque des revendications 5 à 7 précédentes dans lequel les coefficients K1 et K2 à appliquer respectivement aux composantes Fi et Fe sont les mêmes pour chaque manette 2a, 2b, 2c. 9. Procédé de commande selon l'une quelconque des revendications 2 à 8 précédentes dans lequel on considère qu'un déplacement inférieur à une valeur X déterminée par rapport à la position de repos d'une manette est considéré comme un déplacement de valeur nulle. 10. Dispositif de commande pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 9 précédentes caractérisé en ce qu'il comprend: - des premiers moyens de détermination 4 pour obtenir pour chaque manette 2a, 2b, 2c une première 25 composante Fi de la force de retour F correspondant à l'action exercée par un utilisateur sur chaque manette de ladite interface 1, - des seconds moyens de détermination 5 pour obtenir pour chaque manette 2a, 2b, 2c une seconde 3 o composante Fe correspondant à l'action exercée par l'environnement sur ledit au moins un objet 6 et sur le ou les degré de liberté commandé par chaque manette 2a, 2b, 2c, des moyens de traitement 7 pour calculer et commander à partir des première et seconde composantes Fe et Fi la force de retour F à appliquer à chaque manette 2a, 2b, 2c de manière à placer ladite interface 1 motorisée dans un mode de fonctionnement élastique à retour de force.